HTTP와 HTTPS의 차이

정관우·2021년 6월 25일
0
post-thumbnail

HTTP (HyperText Transfer Protocol) :

서버와 브라우저 사이에 문서(HyperText)전송(Transfer)하기 위한 통신 규약(Protocol)

정보를 단순 텍스트로 주고 받기 때문에 전송 신호를 인터셉트하는 경우 데이터 유출이 일어날 수 있음.

이런 보안 취약점을 해결하기 위한 protocol이 HTTPS다.


쉽게 말해, HTTPS를 사용하면 모든 통신 내용이 '암호화'된다.

웹 서버에 접속한 모두에게 동일한 암호가 아닌 사용자마다 다른 암호를 주어야함.


HTTPS는 공개키 / 개인키 (비대칭키) 암호화 방식 을 이용해 데이터를 암호화.

공개키 개인키는 서로를 위한 1쌍의 키.

공개키 : 모두에게 공개 가능한 키

⇒ 공개키로 암호화 하면 개인키로만 복호화 가능. 개인키는 나만 알고 있으므로, 나만 볼 수 있음.

개인키 : 나만 가지고 알고 있어야 하는 키

⇒ 개인키로 암호화 하면 공개키로 복호화 가능. 공개키는 모두에게 공개되어 있으므로, 내가 인증한 정보임을 알려 신뢰성을 보장받음.


[동작 과정]

A가 자신만 알고 있는 기밀을 B 에게 전달하고자 할 때 사용한다. B 를 제외한 타인은 이 내용을 알 수 없어야 한다.

  1. B 가 자신의 공개키를 공개한다.
  2. A 는 이 공개키로 문서를 암호화 한다.
  3. 암호화된 문서를 B 에게 전달한다.
  4. B 는 자신만이 가진 개인키로 이 문서를 해독한다.

타인이 전달과정에서 암호화된 문서를 가로채더라도 B의 개인키가 없으면 해독이 불가능.

profile
작지만 꾸준하게 성장하는 개발자🌳

0개의 댓글