[네트워크] HTTP / HTTPS 뭐가 다를까?

2022. 10. 14. 15:46네트워크

HTTP는 우리가 밥먹 듯 쓰는 프로토콜 중 하나이다. 

서버와 클라이언트 모델에서 데이터를 주고 받기위한 방법 중 하나인데

지금 보는 블로그도 브라우저를 통해 HTTP를 사용하고 있다.

 

http:// 로 시작하는 모든 요청들이 HTTP를 사용한다고 할 수 있는데

언젠가부터 https:// 라는 url 주소들이 보이기 시작했고

AWS에서 EC2 서버를 개설해보면서도 https가 아닌 http로 되던차에

네트워크를 공부하면서 https? http? 무슨 차이가 있는건지 궁금해져서 알아보기로 했다.


- HTTPS(Hyper Text Transfer Protocol Secure)는 무엇이고 왜 쓸까?

 

단순히 생각해보더라도 HTTP를 쓰지않고 HTTPS를 쓰도록 바뀌고 있는 것을 보면

HTTP에 문제점이 있었기 때문으로 짐작이 들었었다.

 

HTTP는 서로간의 전송에 있어 정보들이 암호화되지 않는다는 큰 문제점이 있었다.

그림에서와 같이 악의적인 누군가에 의해서 비밀번호가 그대로 유출될 수도 있는 것이다.

사실 회원가입 서버를 만들어 보면서도 프론트에서 비밀 번호를 암호화 없이 그대로 넘기는 게 괜찮나?

하고 의문이 들었던 부분이기도 하다..

 

HTTPS는 SSL을 적용하여 보안적 문제점을 해결한 프로토콜이라고 할 수 있다.

 

일반적으로 전송 계층인 TCP에서 암호화를 제공하지 않기에 어플리케이션 계층인 HTTP에서 암호화를 진행한다고 이해하면 될 것 같다.

 

결론적으로 가장 큰 차이는 "SSL인증서를 포함하고 있는가"라고 볼 수 있다.

 

SSL 인증서는 사용자가 서버에 제공하는 정보를 암호화해서 전송해준다.

이렇게 전송이된 정보들은 누군가 악의적으로 데이터를 훔쳐 사용하려고 하더라도 암호화 되어 있기 때문에 해독할 수 없는 것이다.

또한 HTTPS는 데이터가 전송 중에 손상되는 것을 막아주고, 사용자 입장에서는 내가 통신하고자 했던 사이트와 잘 통신 하고 있음을 인증하는 기능을 제공해주기도 한다.

 

* 그 외에도 80번 포트를 쓰는 HTTP와는 달리 443번 포트를 사용하기에 HTTPS를 사용하기 위해서는 서버에서 443번 포트를 개방해 줄 필요가 있겠다.

 

 

 

 

 

이미지 출처: HTTP vs HTTPS 차이, 알면 사이트의 레벨이 보인다.

'네트워크' 카테고리의 다른 글

[네트워크] HTTP 1.0 / 1.1 의 차이  (0) 2022.10.14