본문 바로가기
Daily Dev Q&A 정리 템플릿

26.01.22 HTTP와 HTTPS의 차이점

by teg0 2026. 1. 22.

1. HTTP와 HTTPS의 근본적인 차이

HTTP (HyperText Transfer Protocol)

  • 개념: 텍스트 기반의 데이터를 주고받는 프로토콜이다.
  • 단점: 암호화되지 않은 '평문(Plaintext)'을 전송한다. 누군가 중간에서 패킷을 가로채면 아이디, 비밀번호 등을 그대로 볼 수 있다. (마치 내용을 누구나 볼 수 있는 엽서와 같다.)
  • 포트 번호: 기본적으로 80번 포트를 사용한다.

HTTPS (HTTP Secure)

  • 개념: HTTP에 SSL(Secure Socket Layer) 또는 TLS(Transport Layer Security) 프로토콜을 얹어 데이터를 암호화한 버전이다.
  • 장점: 데이터를 암호화하여 전송하므로 가로채더라도 내용을 알 수 없다. (내용을 암호문으로 적고 금고에 넣어 보내는 것과 같습니다.)
  • 포트 번호: 기본적으로 443번 포트를 사용한다.

 

2. HTTPS가 보안을 유지하는 3가지 핵심 요소

단순히 "암호화한다"를 넘어, 면접에서는 다음 세 가지 키워드를 언급하는 것이 중요하다.

  1. 기밀성 (Confidentiality): 오직 인가된 사람만 데이터를 읽을 수 있다. (암호화)
  2. 무결성 (Integrity): 데이터가 전송 중에 변조되지 않았음을 보장한다.
  3. 인증 (Authentication): 내가 접속한 사이트가 진짜 그 사이트가 맞는지 증명한다. (CA 기관의 인증서)

 

3. 작동 원리: SSL/TLS Handshake

HTTPS는 데이터를 주고받기 전, 앞서 배운 TCP 3-Way Handshake 이후에 SSL/TLS Handshake 과정을 한 번 더 거친다.

  1. Handshake: 클라이언트와 서버가 서로 인사하며 암호화 알고리즘을 선택하고 공개키를 교환한다.
  2. 인증서 확인: 클라이언트는 서버가 보낸 인증서가 신뢰할 수 있는 기관(CA)에서 발급된 것인지 확인한다.
  3. 대칭키 생성: 데이터 전송에 사용할 대칭키를 안전하게 생성하여 공유한다.
  4. 암호화 통신: 이후부터는 이 대칭키로 실제 데이터를 암호화하여 주고받는다.

 

4. HTTPS의 추가적인 장점

  • SEO (검색 엔진 최적화): 구글 등 검색 엔진은 HTTPS를 사용하는 사이트에 가산점을 주어 검색 결과 상단에 노출시킨다.
  • 신뢰도: 브라우저 주소창의 '자물쇠' 아이콘을 통해 사용자에게 안전한 사이트임을 알릴 수 있다.
  • HTTP/2 지원: 최신 고성능 프로토콜인 HTTP/2는 대부분 HTTPS 환경에서만 동작한다.

 

면접 답변식 요약

HTTP와 HTTPS의 가장 큰 차이점은 보안성입니다.

HTTP는 데이터를 평문으로 전송하기 때문에 보안에 취약하며 80번 포트를 사용합니다. 반면 HTTPS는 HTTP에 SSL/TLS 프로토콜을 추가하여 데이터를 암호화 전송하며 443번 포트를 사용합니다.

HTTPS는 기밀성, 무결성, 인증이라는 세 가지 보안 가치를 제공합니다. 클라이언트와 서버가 실제 데이터를 주고받기 전 SSL Handshake를 통해 신뢰할 수 있는 인증서인지 확인하고 암호화 키를 공유하는 과정을 거칩니다.

최근에는 보안뿐만 아니라 SEO 최적화HTTP/2 같은 최신 프로토콜 지원을 위해 HTTPS 사용이 필수적입니다. 다만, 암호화 과정에서 추가적인 CPU 연산이 발생할 수 있지만 최근 하드웨어 성능에서는 그 차이가 미미합니다.