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

HTTP에서 HTTPS로, 그렇다면 왜 HTTPS일까?

by simplify-len 2020. 11. 8.

HTTP는 우리에게 친숙하다. 개발자이든, 아니든 언젠가 한번쯤은 들어봤을 법한 용어라고 생각합니다. 왜냐하면, 지금 이곳을 접속했을때, 변하는 URL(URL은 Uniform Resource Locator로 네트워크 상에서 자원이 어디있는지 알려주는 규약)을 활용해 이곳에 왔을 것이기 때문입니다.

HTTP(HyperText Transfer Protocal)는 웹 브라우저를 뜻합니다.

HTTP는 인터넷에서 웹 서버와 사용자 컴퓨터에 설치된 웹 브라우저 사이에 문서를 전송하기 위한 통신 규약(protocal)입니다. 곧, HTTP는 인터넷에서 하이퍼텍스트(HyperText)를 전송(Transfer)하기 위해 사용되는 통신 규약(Protocal)입니다.

HTTP에 대해서 더 학습하게 된다면, HTTP는 단순합니다.

"Request 를 보내면 Response 를 받는다."

단순하기 때문에, 문제가 발생할 수 있습니다. HTTP는 상태를 갖지 않지 않습니다. 이 말은 즉슨, 일회성이라는 의미입니다. Request를 보내면 Response를 받는 순간까지 그 누구도 Request에 대해서 기억하지 않습니다. 그러므로, 악의를 가진 해커는 이를 인터셉터하여 원하지 않는 데이터를 유출시킬수도 있고, Response에 같이 담아 보낼 수 있습니다.

일반적으로 HTTP는 TCP 80번 포트를 사용해 연결하면서 서버는 Reponse로 정보를 전송합니다. 단순히 '텍스트'를 주고 받습니다.

위와 같이, HTTP는 상태를 갖지 않기 때문에 누구의 책임도 물을 수 없습니다. 이런 보안 취약점을 해결하기 위해 나온 프로토콜이 HTTPS입니다.

"
HTTPS
HTTP + S(Secure Socket)
"

HTTP에 비해 사용하는데, 있어서 아무런 차이점을 느낄 수는 없지만, 'S' 라는 텍스트에서 느껴지는 것과 같이 보안적인 요소를 추가한 것이 HTTP와 비교해서 가장 큰 차이점이라 할 수 있습니다. 중간에 Secure Socket을 둠으로써, 단순히 텍스트로 Request하고 Response하는 메시지를 암호화되어 전송됩니다.

간단히 암호화에 대해서 정리하면 아래와 같습니다.
암호화와 복호화를 시킬 수 있는 서로 다른 키 2개가 존재할 때 이 두개의 키는 서로 암호화/복호화할 수 있는 규칙을 갖고 있습니다. 예를 들어 A키로 암호화를 하게되면 반드시 B키로 복호화할 수 있고, B키로 암호화하면 반드시 A키로 복호화할 수 있습니다. 그 중에서 하나의 키는 모두에게 공개키로 공개키 저장소에 등록해 사용하고, 서버는 개인키를 이용해 복호화합니다. 반대로 서버가 정보를 제공하는 경우에는 개인키로 암호화환 정보를 전송하기 때문에 공개키가 있는 사용자는 누구나 정보를 알 수 있습니다.

이렇게 HTTPS를 사용하면 암호화된다는 사실을 알았습니다. 그렇다면, 이는 사용자로 하여금 어떤 장점을 제공할까요?

아래 내용은 참조자료에서 가져왔습니다.

  • 기밀성 
    HTTPS는 인터넷과 같은 공공 매체에서 두 참여자 간의 통신을 보호한다. 예를 들어, HTTPS가 없다면 와이파이 액세스 포인트를 운영하는 사람은 액세스 포인트를 사용하는 사람이 온라인에서 무언가를 구입할 때 신용카드와 같은 개인정보를 볼 수도 있다.
  • 무결성 HTTPS는 변조되지 않은 정보로 목적지에 도달하게 한다. 예를 들어, 와이파이가 웹사이트에 광고를 추가하거나, 대역폭을 절약하고자 이미지 품질을 저하시키거나, 읽는 기사의 내용을 변조할 수 있지만 HTTPS는 웹사이트를 변조할 수 없도록 한다.
  • 인증 HTTPS를 통해 웹사이트의 진위 여부를 확인할 수 있다. 예를 들어, 와이파이 액세스 포인트을 운영하는 사람이 가짜 웹사이트를 브라우저에 보낼 수도 있다. HTTPS는 example.com이라는 웹사이트가 실제로 example.com인지 확인한다. 일부 인증서는 yourbank.com이 YourBank.Inc라는 걸 알리기 위해 해당 웹사이트의 법적 신원을 검사하기도 한다.

 

[참고자료]

 

인터넷 프로토콜 http와 https의 차이는 뭘까? 보안과 마케팅 측면에서 살펴보기

[BY 세아향] 네이버는 물론이고 이 글을 읽고 있는 세아향 포스트도 그렇고, 온라인 쇼핑몰 등 다양한 ...

m.post.naver.com

 

 

HTTP에서 HTTPS로 전환하기 위한 완벽 가이드 - Webactually

HTTPS는 요즘 모든 웹사이트에서 필수로 사용해야 하는 요소입니다. 크롬과 파이어폭스는 HTTPS가 아닌 웹페이지는 안전하지 않다고 명시하기도 합니다. HTTPS는 SEO 관점에서도 중요하며, 개인정보

webactually.com

 

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

DNS record & CNAME  (0) 2021.11.13
HTTP 상태 코드 이해하기.  (0) 2020.11.07
네트워크의 기능을 계층별로 간략하게 설명해보자.  (0) 2020.10.29
01. 네트워크의 기초 2  (0) 2020.10.29
01. 네트워크의 기초 1  (0) 2020.10.29

댓글