System Infra
SSL 이란? (SSL 인증서와 SSL 인증서기반 암호화 통신 원리)
승어리(Won)
2019. 2. 22. 12:34
SSL 이란?
SSL(Secure Socket Layer) 프로토콜은 웹서버(서버)와 브라우저(클라이언트) 사이의 보안을 위해 만들었다.
SSL은 서버와 클라이언트의 인증을 하는데 사용된다.
출처: https://www.mission21.com/security/ssl-secured-socket-layer-%EC%9D%B4%EB%9E%80/
SSL 과정
1) [웹브라우저(클라이언트)]
SSL로 암호화된 페이지를 요청하게 된다. // 일반적으로 https:가 사용된다.
2) [웹서버(서버)]
Public Key 를 인증서와 함께 전송한다.
3. [웹브라우저(클라이언트)]
인증서가 자신이 신용있다고 판단한 CA로부터 서명된 것인지 확인한다. 또한 날짜가 유효한지, 그리고 인증서가 접속하려는 사이트와 관련되어 있는지 확인한다.
4. [웹브라우저(클라이언트)]
Public Key를 사용해서 랜덤 대칭 암호화키를 비롯한 URL, http 데이터들을 암호화해서 전송한다.
5. [웹서버(서버)]
Private Key를 이용해서 랜덤 대칭 암호화키와 URL, http 데이터를 복호화한다.
6. [웹서버(서버)]
요청받은 URL에 대한 응답을 웹브라우저로부터 받은 랜덤 대칭 암호화키를 이용하여 암호화해서 브라우저로 전송한다.
7. [웹브라우저(클라이언트)]
대칭키를 이용해서 http 데이터와 html 문서를 복호화하고, 화면에 정보를 뿌려준다.
출처: https://preamtree.tistory.com/38