대칭키 암호화 vs 비대칭키 암호화
비대칭키, 대칭키를 사용한 기본적인 통신 매커니즘
공개키 암호 시스템
공개키 암호 시스템을 활용한 통신 매커니즘 예시
서버는 HTTPS 적용 시 필요한 인증서를 발급받기로 결정
먼저 서버와 클라이언트 간 통신에 필요한 공개키와 개인키(비밀키) 생성
서버는 신뢰할 수 있는 (공개키 저장소) 역할을 하는 CA 기업을 선택
서버는 CA 기업에 자신의 공개키를 관리하도록 한 후 일정 금액 지불
CA 기업은 CA 기업의 이름, 서버의 공개키 등의 정보를 담은 인증서 생성
CA 기업은 해당 인증서를 CA 기업의 개인키로 암호화(=전자 서명)한 후 서버에게 제공
서버는 CA에 의해 암호화(전자서명 = 공신력이 입증)된 인증서(SSL 인증서)를 갖게 됨
이제 서버는 서버의 공개키로 암호화된 HTTPS 요청이 아닌 다른 요청이 올 경우, 해당 인증서를 클라이언트에게 전달
클라이언트의 브라우저는 해당 인증서를 CA 공개키로 복호화(하여 전자 서명한 인증서에 대한 신뢰성 검증)
브라우저는 해당 공개키로 인증서를 복호화하여 획득한 서버의 공개키를 클라이언트에 제공
클라이언트는 서버의 공개키가 신뢰할 수 있는 업체에 의해 제공되었음을 확인
클라이언트는 송신하고자 하는 데이터(대칭키 등)를 서버의 공개키로 암호화하여 요청 수행
디지털 인증서를 가리키는 대표적인 확장자로 cert와 pem이 있다.