1. 개요
https와 http의 차이점과 동작방식을 알아보자
2. http의 문제점
- 네트워크 전송과정에서 제 3자가 데이터를 읽거나 조작이 가능
3. https란?
http 프로토콜 + ssl 프로토콜이라고 보면된다.
기존의 http를 ssl위에서 작동하게 하는데 다음고 같은 장점이 있다.
- 클라이언트가 접속하는 서버의 신뢰성 확인 가능
- 통신 데이터를 제 3자에게서 보호 가능
4. 서버가 https를 사용하는 방법
- 서버가 공개키와 개인키를 준비
- 민간 CA 업체의 개인키로 서버의 공개키 및 정보를 SSL 인증서로 변환 후 전달
- 서버는 공개키 대신 SSL인증서를 통해 통신
인증된 CA 업체의 공개 키(Public Key)는 웹 브라우저가 모두 보유하고 있음
5. https의 동작 방식
SSL/TLS Handshake
- 클라이언트가 서버에 접속 및 보안 정보 전달
- 서버는 ssl 인증서를 클라이언트에게 전달
- 클라이언트는 CA 업체의 Public Key로 ssl 인증서를 검증
- 클라이언트는 ssl 인증서에서 얻은 서버의 Public Key로 데이터를 암호화해 송신
- 서버는 개인 키를 통해 수신한 데이터를 해독
- 클라이언트와 서버가 각각 통신에 활용할 세션키를 생성
- 세션키를 이용해 통신
SSL은 TLS의 이전 버전이기에 TLS Hanshake라고 불러도되지만 SSL이라는 단어의 인지도가 높기에 SSL/TLS Handshake라고 부른다.