TLS Handshake, HTTPS 보안의 시작

재폰지밥·2025년 8월 15일

공부

목록 보기
10/32
post-thumbnail

🤝 TLS Handshake, HTTPS 보안의 시작

HTTPS는 안전한 통신을 위해 TLS(Transport Layer Security) 프로토콜을 사용합니다.
그 시작 단계가 바로 TLS Handshake입니다.


1️⃣ TLS Handshake란?

클라이언트와 서버가 안전한 통신을 시작하기 위해 암호화 방식과 세션키를 합의하는 과정

핵심 목표:

  • 사용할 암호화 알고리즘 합의
  • 세션키 생성 및 교환
  • 서버(및 필요 시 클라이언트) 인증

2️⃣ 기본 과정

  1. Client Hello

    • 클라이언트가 지원하는 TLS 버전, 암호화 알고리즘 목록, 랜덤 데이터 전송
  2. Server Hello

    • 서버가 사용할 암호화 알고리즘 선택, 랜덤 데이터 전송
    • 서버 인증서(공개키 포함) 전달
  3. 키 교환

    • 클라이언트가 세션키 생성
    • 서버 공개키로 세션키 암호화해 전달
  4. 세션키 확정

    • 서버가 개인키로 세션키 복호화
    • 이후 대칭키 암호화로 데이터 송수신

3️⃣ TLS Handshake 도식

[Client Hello] --> [Server Hello + 인증서]

[세션키 생성 + 공개키 암호화] --> [개인키 복호화]

[세션키로 암호화된 안전한 통신 시작]


4️⃣ TLS Handshake의 장점

  • 도청 방지: 세션키는 비대칭키로 안전하게 전달
  • 변조 방지: 인증서로 서버 신뢰성 확보
  • 성능 최적화: Handshake 이후는 대칭키로 빠른 통신

🧠 정리

  • TLS Handshake는 HTTPS 보안 통신의 첫 단계
  • 공개키 암호화를 통해 세션키를 안전하게 교환
  • 이후는 대칭키로 빠르고 안전하게 데이터 전송

profile
열심히 살기

0개의 댓글