https 동작방식
HTTPS(HyperText Transfer Protocol Secure)는 HTTP에 SSL/TLS(보안 계층)를 추가하여 웹에서 안전하게 데이터를 주고받을 수 있도록 만든 프로토콜입니다. 아래는 HTTPS의 동작 방식 단계입니다:

1.클라이언트가 서버에 HTTPS 요청
브라우저(클라이언트)가 https://로 시작하는 URL에 접속하려고 하면, 먼저 서버와 SSL/TLS 핸드셰이크를 시작합니다.
2. 서버가 공개키 포함된 인증서 전송
서버는 클라이언트에게 다음 정보를 포함한 인증서를 보냅니다:
서버의 공개키(Public Key)
인증서 발급 기관(CA)의 디지털 서명
인증서의 만료일, 도메인 정보 등
3. 클라이언트가 인증서 검증
클라이언트는 인증서가 **신뢰할 수 있는 CA(Certificate Authority)**에 의해 발급된 것인지 검증합니다. 이때 검증이 실패하면 접속 경고를 표시하거나 차단합니다.
4. 세션키 생성 및 공유 (대칭키)
클라이언트는 대칭키(세션키)를 생성하고, 서버의 공개키로 암호화하여 서버에 전송합니다.
5. 서버가 세션키 복호화
서버는 자신의 **개인키(Private Key)**로 세션키를 복호화합니다. 이제 클라이언트와 서버는 같은 세션키를 공유하게 됩니다.
6. 암호화된 통신 시작
이후 데이터는 모두 이 세션키를 사용해 대칭키 방식으로 암호화되어 전송됩니다.
https 패킷의 구조
HTTPS의 패킷 구조는 크게 세 가지 계층입니다.
1. IP/TCP 계층 (전송 계층)
2. TLS 계층 (보안 계층)
3. HTTP 계층 (응용 계층, 암호화됨)
[IP Header]
↓
[TCP Header]
↓
[TLS Record Layer]
- Content Type
- Version
- Length
- Encrypted Data (includes HTTP request/response)