본문 바로가기
개발/브라우저와 네트워크

TLS 프로토콜 작동방식

by 안뇽! 2022. 1. 4.
반응형

https://www.cloudflare.com/ko-kr/learning/ssl/what-happens-in-a-tls-handshake/

위 사진에서 보다시피, TLS 연결은 TCP 연결이 열린 후에 일어난다.

(참고로 SSL과 TLS는 그냥 같은의미라고 봐도 무방함. TLS가 SSL을 계승한 것임)

 

TLS프로토콜은 보안통신인데 HTTP 통신 프로토콜과 TLS 프로토콜이 합쳐져서 HTTPS프로토콜이 되는 것이다.

 

HTTPS는 흔히 공개키 암호화방식, 인증으로 데이터를 안전하게 주고받는다고 알려져있다.

 

그 원리를 말하겠다. 

 

1. 클라이언트가 서버에게 자신의 능력을 말해준다.

요청으로 자신이 사용가능한 암호화방식을 포함한 여러가지 스펙 전달

 

2. 서버는 클라이언트에게 암호화방식과 인증서를 전달. 인증서에는 서버의 공개키가 첨부된다.

공개키 암호화 방식이 뭔지는 여기서 설명하지 않겠음

 

3. 클라이언트는 브라우저에 내장된 CA리스트를 통해 CA공개키를 획득, 인증서를 복호화한다.

복호화에 성공하면 유효한 인증이라는 뜻이다. 그 이후 인증서에서 서버의 공개키를 획득한다.

 

4. 클라이언트는 난수를 조합하여 pre master secret이라는 값을 생성, 서버의 공개키로 암호화한다.

서버의 공개키로 암호화한 pre master secret을 서버에게 요청으로 전달한다.

 

5.  서버는 pre master secret을 서버의 비공개키로 복호화한 후 대칭키 session key를 생성한다.

이후 session key를 이용하여 데이터의 암호화 복호화를 하게 된다.

반응형

'개발 > 브라우저와 네트워크' 카테고리의 다른 글

Next/image로 회사 홈페이지 최적화 시도  (0) 2022.09.27
SEO) robots.txt와 sitemap.xml  (1) 2022.09.22
HTTP와 HTTPS  (0) 2021.12.22
CORS 정리  (2) 2021.11.22
토큰  (0) 2021.11.02