정보보안기사 : SSL
SSL (Secure Socket Layer)
- 인증서 기반, 1회용 세션키를 만들고 이 세션키를 이용하여 서버와 클라이언트간의 통신을 암호화
1. Client가 Client Hello 패킷을 Server로 전송 (지원 가능한 암호방식, 키교환방식, 서명방식, 압축방식)
2. Server는 Server Hello 패킷을 Client에 전송 (지원 가능한 암호방식, 키교환방식, 서명방식, 압축방식)
3. Server에서 Client로 인증서 전송 (Server의 RSA 암호용 공개키)
4. Client에서 Server 인증서의 신뢰 여부 검사
.인증기관의 신뢰도
.인증서의 DNS Name 및 Ip Address
.Time valid
.Reboked
5. Client에서 인증서 다운로드 (신뢰 할 경우)
6. Client에서 인증서에 입력된 Server의 공개키 추출
7. Client에서 Pre-master key 생성해서 암호화(Server의 공개키를 이용)
8. Cleint에서 암호화된 Pre-master key를 Server로 전달
9. Server는 암호화 된 Pre-master key를 자신의 개인키로 복호화. 이를 이용하여 세션키 생성
10. 위 과정으로 생성된 세션키를 이용해서 Server와 Client간에 발생하는 모든 통신을 암호화
댓글
댓글 쓰기