서버와 브라우저 사이에 문서(HyperText)를 전송(Transfer)하기 위한 통신 규약(Protocol)
정보를 단순 텍스트로 주고 받기 때문에 전송 신호를 인터셉트하는 경우 데이터 유출이 일어날 수 있음.
이런 보안 취약점을 해결하기 위한 protocol이 HTTPS다.
쉽게 말해, HTTPS를 사용하면 모든 통신 내용이 '암호화'된다.
웹 서버에 접속한 모두에게 동일한 암호가 아닌 사용자마다 다른 암호를 주어야함.
HTTPS는 공개키 / 개인키 (비대칭키) 암호화 방식 을 이용해 데이터를 암호화.
공개키 개인키는 서로를 위한 1쌍의 키.
공개키
: 모두에게 공개 가능한 키
⇒ 공개키로 암호화 하면 개인키로만 복호화 가능. 개인키는 나만 알고 있으므로, 나만 볼 수 있음.
개인키
: 나만 가지고 알고 있어야 하는 키
⇒ 개인키로 암호화 하면 공개키로 복호화 가능. 공개키는 모두에게 공개되어 있으므로, 내가 인증한 정보임을 알려 신뢰성을 보장받음.
A가 자신만 알고 있는 기밀을 B 에게 전달하고자 할 때 사용한다. B 를 제외한 타인은 이 내용을 알 수 없어야 한다.
타인이 전달과정에서 암호화된 문서를 가로채더라도 B의 개인키가 없으면 해독이 불가능.