SSL, HTTPS

조향래·2022년 8월 26일
0

HTTPS(Hypertext Transfer Protocol Over Secure Socket Layer)란,
HTTP에서 보안을 강화시킨 것으로서 HTTP에 SSL과 같은 보안 계층을 제공함으로써 동작하며 모든 HTTP요청과 응답 데이터는 네트워크로 보내지기 전에 암호화된다.

SSL(Secure Sockets Layer)은 클라이언트와 서버간의 통신을 공인된 제3자(CA) 업체가 보증해주는 전자화된 문서이다.

SSL이 동작하는 방식을 간단하게 설명하면 다음과 같다.

  1. [웹브라우저] SSL로 암호화된 페이지를 요청하게 된다. (일반적으로 https가 사용된다)
  1. [웹서버] Public Key를 인증서와 함께 전송한다.
  1. [웹브라우저] 인증서가 자신이 신용있다고 판단한 CA(일반적으로 trusted root CA라고 불림)로부터 서명된 것인지 확인한다. 또한 날짜가 유효한지, 그리고 인증서가 접속하려는 사이트와 관련되어 있는지 확인한다.
  1. [웹브라우저] Public Key를 사용해서 랜덤 대칭 암호화키(Random symmetric encryption key)를 비릇한 URL, http 데이터들을 암호화해서 전송한다.
  1. [웹서버] Private Key를 이용해서 랜덤 대칭 암호화키와 URL, http 데이터를 복호화한다.
  1. [웹서버] 요청받은 URL에 대한 응답을 웹브라우저로부터 받은 랜덤 대칭 암호화키를 이용하여 암호화해서 브라우저로 전송한다.
  1. [웹브라우저] 대칭 키를 이용해서 http 데이터와 html문서를 복호화하고, 화면에 정보를 뿌려준다.

0개의 댓글