목록상식 (20)
코딩마을방범대
X.509 공개 키 인증방식의 형식을 정의하는 표준 HTTPS의 기초가 되는 TLS/SSL을 포함한 많은 인터넷 프로토콜에서 사용 인증서 디지털 서명으로 내용 변경과 위장 행위를 검출하고, 부인을 방지할 수 있음 인증서의 표준 규격 버전(Verion Number) 인증서의 버전 시리얼 번호(Serial Number) CA가 할당한 정수로 된 고유 번호 CRL에서는 이 번호로 폐지한 인증서를 구별 서명 알고리즘(Signature Algorithm ID) 인증기관이 사용한 서명 알고리즘 발행자(Issuer Name) 인증서를 발행한 인증기관의 이름 Name(DN) 형식으로 기술됨 (사용자는 이 발행자와 시리얼 번호로 인증서를 구별) 유효기간(Validaty period) Not Before, Not Afte..
RSA 암호화 SSL/TLS에 가장 많이 사용되는 공개키 암호화 알고리즘 소인수분해 문제에 기반하여 알고리즘이 만들어졌음 암호화 뿐만 아니라 전자서명이 가능한 최초의 알고리즘 큰 정수의 소인수 분해의 난해함에 기반하여, 공개키만을 가지고는 개인키를 쉽게 짐작할 수 없도록 디자인되어 있음 RSA-2048 전에는 숫자가 number of digits 를 의미했으나 RSA-2048 부터는 bit 을 의미 RSA-2048 617 자리 숫자를 Key 로 사용 Bouncy Castle란 경량 암호화에 사용되는 API 모음 Java 및 C# 프로그래밍 언어 모두에 대한 API가 포함 JCE(Java Cryptography Extension) 및 JCA(Java Cryptography Architecture), JSS..

소켓(Socket)이란 프로세스들은 데이터 송수신을 위해 반드시 소켓을 거쳐 전송 계층으로 데이터를 전달해야 함 전송 계층과 응용 프로그램 사이의 인터페이스 역할을 하며 떨어져 있는 두 호스트를 연결해줌 프로토콜, IP, Port 3요소로 정의됨 일반적인 소켓 통신의 흐름 소켓 생성 서버 바인딩 (ip, port번호 설정) listen()으로 클라이언트 요청에 대기열을 만들어 몇개의 클라이언트를 대기시킬지 결정 accept()로 클라이언트와 연결 클라이언트 서버에 설정된 ip, port로 연결 시도 accept()로 클라이언트의 socket descriptor 반환 마지막. 데이터 송수신 후 소켓 닫기 소켓 종류 (1) 스트림 소켓 TCP(Transmission Control Protocol)을 사용하는..
서버 '제공한다'는 뜻을 가진 'serve'에 사람이라는 뜻을 나타내는 'er'을 붙인 단어 클라이언트의 요청을 받으면 서비스, 데이터를 제공하는 컴퓨터 혹은 프로그램 SaaS(Software as a Service) 사용자 클라우드 서비스 서비스 소프트웨어, 클라우드 환경에서 운영되는 어플리케이션 Paas(Platform as a Service) 개발자 클라우드 서비스 운영을 위한 플랫폼 서비스를 제공 IaaS(Infrastructure as a Service) 개발자 클라우드 서비스 서버, 스토리지, 네트워크 장비 등 IT 인프라 대여 MOU(Memorandum Of Understanding) 정식 계약을 체결하기 전에 당사자들끼리 논의한 내용을 문서화한 것 IT용어 컴파일 작성한 소스코드를 바이너리..

포트(Port)란 하드웨어 컴퓨터의 주변 장치와 연결하기 위한 연결단 (물리적 통로) 소프트웨어 네트워크 서비스나 특정 프로세스를 식별하는 논리적 단위 (논리적 통로) 호스트 내부적으로 프로세스가 할당받는 고유한 값 소프트웨어적 의미 NIC(Network Interface Card) 이더넷 카드 및 네트워크 어댑터라고도 하며, 응용프로그램에서 받은 데이터를 네트워크 형식에 맞게 변환하여 전송해 주는 기능을 하는 하드웨어 장치 데이터 송수신시, Datalink 계층에서는 호스트의 NIC로 MAC Address를 판별하고, Network 계층에서는 IP Address로 목적지를 판별함. Mac Address와 IP Address를 통해 목적지 호스트까지 도달한 후에는 포트 번호를 이용해 어떤 프로세스에서 데..
개발 환경 local(로컬 개발 환경) -> dev(서버 개발 환경) -> Integration(통합 개발 환경) -> QA(테스팅 환경) -> staging(스테이징 환경) -> production(운영 환경) 1. local (로컬 개발 환경) 각 개발자마다 설치된 서버 환경을 local 환경이라고 함 ex) MySQL 등의 DB, Tomcat, Eclipse와 같은 개발 툴, 컴파일러 등 개발 환경을 표준화 하는 방법은 여러가지가 있지만, 전체 개발 환경 (JDK,Eclipse,library)을 zip파일 형태로 묶어서 사용하는 방법이 가장 일반적 1과 2 사이의 🎇 PoC (Proof of Concept) 새로운 프로젝트가 실제로 실현 가능성이 있는지, 효과와 효용, 기술적인 관점에서 검증 하는 ..
CI(Connecting information)란? 88byte(영대소문자+특수+숫자) 서비스를 연계하여 서로 다른 인터넷 서비스 간에도 동일한 사용자인지 구분을 가능하게 해주는 정보 CI = 주민번호 + @ 공식으로 지정된 본인확인 인증기관(주민번호 관리-나이스, KCB 등)에 인증을 받고 각 사이트는 CI와 DI값을 받음 공인인증서나 휴대폰인증은 CI와 DI값을 얻기 위한 매개체 수단(CI 자체가 아님) 단점 주민번호를 없애고자 도입한건데 주민번호와 1:1 매칭이 됨 (도입 취지 퇴색) DI(Duplication Information)란? 64byte(영대소문자+특수+숫자) 중복 가입 체크 같은걸 방지하기 위한 정보 DI = CI + 사이트 고유코드 여러 개 아이디를 만들었을 때 각자 계정 ID가 달..
부인방지(non-repudiation)란? 데이터의 송수신이나 처리가 실행된 후에 그 사실을 사후에 증명함으로써 사실 부인을 방지하는 보안 기술 암호화 방식에 따른 관리 방법 대칭형 암호화 방식 신뢰할 수 있는 제3 신뢰 기관(TTP)을 통해 부인 방지 기능을 실현 비대칭형 암호화 방식 디지털 서명 기술을 응용 public, private key를 통해 certification key를 발급 받음 검증 시 user key + certication key + 원장정보 + signature key 를 통해 검증함 signature key = 원장정보 + private key API(Application Programming Interface) 프로토콜 집합을 사용하여 두 소프트웨어 구성 요소가 서로 통신할 ..