SSL 디지털 인증서
클라이언트와 서버간의 통신을 제 3자가 보증해주는 전자화된 문서. 클라이언트가 서버에 접속한 직후에 서버가 인증서 정보를 클라이언트에게 전송한다. 클라이언트는 그 문서를 검증한 후 다음 절차를 수행한다.
SSL 디지털 인증서 내용
서비스의 정보 (인증서를 발급한 CA, 서비스의 도메인 등등)
서버 측 공개키 (공개키의 내용, 공개키의 암호화 방법)
SSL에서 사용하는 암호화의 종류
대칭키 : 암호화와 복호화에 같은 키를 사용하는 방식. 키가 유출될 경우 보안에 위험하다.
공개키 : public key와 private key를 이용한다. public key는 누구나 사용할 수 있고 private key는 오로지 1개만 존재한다.
예) public key(공개키)를 제공받으면 그 키를 이용하여 암호화를 한 뒤 전달한다. public key를 제공한 쪽에서는 private key를 이용하여 암호화된 정보를 복호화 한다.
전자 인증
비공개키(private key) 소유자가 비공개키를 이용하여 정보를 암호화한 뒤 공개키와 함께 해당 대상에게 전달한다. 공개키를 이용하여 비공개키로 암호화된 정보를 복호화할 수 있지만 해당 방법은 정보 보호가 목적이 아니기 때문에 문제가 되지않는다. 공개키로 정보를 복호화할 수 있다는 것은 그 데이터가 비공개키로 암호화되었다는 것을 의미하기 때문에 즉, 공개키가 데이터를 제공한 사람의 신원을 보장해준다는 뜻이다. 이것이 전자 인증이다.
SSL의 동작 방법
Handshake => 전송(세션) => 세션 종료
실제 데이터는 대칭키로 암호화를 하고 그 대칭키를 공개키로 암호화하여 전송한다.