1. 소개
TLS는 서로 통신을 할 때 제삼가 두 사람의 통신 내용을 도청에 상관없이 안전하게 통신의 내용을 보호할 수 있게 하는 기술이다.
2. 원리
2.1. 사전 지식
암호화된 메세지를 주고 받기 위해서는 먼저 이를 복호화할 수 있는 키를 주고 받아야 한다. 키를 주고 받기 위해서는 키 교환 알고리즘을 사용한다. 여기에 상대방의 신분을 확인하는 인증과 메시지의 무결성을 확인하는 해쉬 알고리즘이 추가된다. 이러한 일련의 알고리즘들을 각각 정해둔 것을 "사이퍼 수트(cipher suite)" 라고 한다.
사이버 수트인 TLS_ECDHE_RSA_AES256_SHA256 는 TLS 통신할 때 ECDHE 를 키 알고리즘으로 하고 RSA를 인증 알고리즘, AES256로 암호화 알고림즘을 SHA256를 해쉬 알고리즘을 사용한다는 의미이다.
2.2. TLS 진행과정 (개략)
- Hand Shake : 사이퍼 수트를 결정하고 키를 교환해 암호화 통신을 시작할 준비를 한다.
- 암호화된 통신 : 통신을 시작하면 암호화 키로 상대방이 보낸 메시지는 복호화하고 내가 보낼 메시지는 암호화한다.
- 기타 : Change Cipher Spec과 Alert protocol의 메시지가 있다.
2.3. TLS 진행과정
- Client Hello (C -> S)
- Server Hello (S -> C)
- Certificate (S -> C)
댓글