본문 바로가기
CS/네트워크

[네트워크] HTTP 와 HTTPS, SSL 이란?

by 노잼인간이라불립니다 2022. 5. 26.

HTTP란?

 

TCP/IP 네트워크 아키텍처의 애플리케이션 계층에 속해있는 프로토콜이며

 

주로 브라우저와 서버간의 통신에서 사용되는 프로토콜 이다.

 

헤더와 바디의 구조로 되어있다. 이곳에 데이터들을 담아 서로 통신한다. 그러나 큰 문제점이 있다.

 

- HTTP의 문제점

 

보안에 문제가 있다. 헤더와 바디 모두 암호화 되지 않아, 중간에 패킷이 탈취당하면 정보가 고스란히 노출된다.

 

- HTTPS의 등장

 

HTTP의 보안 문제를 해결하고자 나온 것이 HTTPS이다. 

 

HTTPS는 기존의 HTTP에 SSL이라는 보안 프로토콜을 추가한 것이다.

 

- SSL( Socket Secure Layer )

 

SSL은 대칭키 방식과 공개키 방식을 둘 다 사용하여 데이터를 암호화한다.

 

SSL을 이용한 사용자와 서버의 통신방법은 대략 아래와 같은 구조를 가지게 된다.

 

 

실제 웹상에서는 사용자와 서버사이에 인증기관(CA : Certificate Authority)이 끼게 된다. 

 

아래는 인증기관을 포함한 사용자와 서버의 통신 방법이다.

 

이렇게 서로 같은 대칭키를 가지게 되고, 안전한 통신이 가능하게 된다.

 

HTTP, HTTPS, SSL 정리 끝.