HTTP와 HTTPS 차이점
HTTP
- Hyper Text Transfer Protocol 의 약자로, 웹 서버와 클라이언트 간의 통신을 하기 위한 통신 규약
- 웹에서만 사용하는 프로토콜로 TCP/IP 기반으로 한 지점에서 다른 지점(서버와 클라이언트)으로 요청과 응답을 전송한다.
- 비연결성(stateless) 프로토콜 ⇒ 이러한 단점을 해결하기 위해 cookie 와 session 등장
HTTPS
- HyperText Transfer Protocol over Secure Socket Layer 등 HTTP에 암호화가 추가된 프로토콜
- 443번 포트를 사용하며 중간에 제 3자가 정보를 볼 수 없도록 암호화 지원
- 대칭키 암호화
- 클라이언트와 서버가 동일한 키를 사용해 암호화/ 복호화 진행
- 키가 노출되는 위험성이 있지만 속도 빠름
- 비대칭키 암호화
- 1개의 쌍으로 구성된 공개키와 개인키를 암호화/복호화에 사용
- 키가 노출되어도 비교적 안전 하지만, 속도가 느림
- HTTPS는 처음 연결을 성립하여 안전하게 세션키를 공유하는 과정에서 비대칭키가 사용되는 것이고, 이후에 데이터를 교환하는 과정에서 빠른 연산 속도를 위해 대칭키가 사용되는 것

- 결론적으로 차이점은 HTTP는 암호화가 없어 보안에 취약, HTTPS는 안전하게 데어티럴 주고 받지만 속도가 느린 단점 존재