카테고리 없음

SSL 과정

Terry Cho 2007. 10. 19. 10:49

1.       클라이언트가 서버에 접속하면 서버인증서(서버의 공개키를 인증기관이 전자서명으로 인증한 것) 를 전송받습니다. (이때, 클라이언트 인증을 필요로 할 경우 클라이언트의 인증서를 전송하게 됩니다.)

2.       클라이언트는 받은 서버 인증서를 분석하여 신뢰할 수 있는 인증서인지를 검토한 후, 서버의 공개키를 추출합니다.

3.       클라이언트가 세션키로 사용할 임의의 메세지를 서버의 공개키로 암호화하여 서버에 전송합니다.

4.       서버에서는 자신의 비밀키로 세션키를 복호화하여 그 키를 사용하여 대칭키 암호방식으로 메시지를 암호화하여 클라이언트와 통신하게 되며 이것은 "https"라는 별도의 프로토콜을 사용하게 됩니다.

즉 공개키를 서버가 클라이언트로 내려보내면 클라이언트에서 세션키를 암호화해서 서버에 보내서 세션을 만든다.
--> one way handshake

인터넷을 검색해보면 http와 https의 성능 차이는 대략 20~40%정도가 나게 된다.

그리드형