1. 핸드셰이크 (Handshake):
    • 클라이언트가 서버에 HTTPS 연결을 요청합니다.
    • 서버는 클라이언트에게 공개키 및 인증서를 제공합니다. 이 인증서에는 서버의 신원 정보와 공개키가 포함되어 있습니다.
  2. 공개키 암호화:
    • 클라이언트는 서버의 공개키를 사용하여 랜덤 대칭 키(세션 키)를 암호화합니다.
    • 이러한 과정을 통해 세션 키는 서버만이 가지고 있을 수 있습니다.
  3. 인증:
    • 클라이언트는 서버의 인증서를 확인하여 서버의 정품 여부를 확인합니다. 이를 통해 중간자 공격을 방지합니다.
    • 클라이언트도 자체의 인증서를 서버에 전송하여 클라이언트의 신원을 인증할 수 있습니다(서버에서 클라이언트 인증을 요구하는 경우).
  4. 세션 키 교환:
    • 클라이언트와 서버는 공유된 세션 키를 사용하여 나머지 통신을 암호화합니다.
    • 이 세션 키는 대칭 키 알고리즘을 사용하여 효율적으로 데이터를 암호화 및 복호화합니다.
  5. 보안된 통신:
    • 세션 키를 사용하여 클라이언트와 서버 간에 데이터를 암호화하여 보안된 통신이 이루어집니다.
    • 암호화된 데이터는 중간에서 가로채어도 이해할 수 없습니다.

BELATED ARTICLES

more