1. HTTPS란?
- HTTP 통신에 TLS를 적용한 보안 통신 방식
- ✅ HTTP 요청과 응답 구조를 그대로 유지함
- ✅ 443 포트 사용
2. 기능
| 보안 기능 | 설명 |
| 서버 인증 | 인증서와 CertificateVerify 검증을 통해 접속한 서버가 해당 도메인의 인증서 개인키를 보유하는지 확인 |
| 암호화 | HTTP 요청과 응답을 암호화하여 제3자가 내용을 직접 읽지 못하도록 보호 |
| 데이터 무결성 | 전송 중 데이터가 변경되거나 손상되었는지 확인 |
| 선택적 클라이언트 인증 | mTLS 사용 시 서버가 클라이언트 인증서를 검증하여 클라이언트 신원 확인 |
3. 통신 과정
| 순서 | 단계 | 처리 결과 | 주요 내용 |
| 1 | URL 입력 | 접속할 서버와 리소스 결정 | 브라우저가 https://example.com/users와 같은 HTTPS URL을 해석 |
| 2 | DNS 조회 | 도메인에 대응하는 서버 IP 주소 획득 | example.com을 접속 가능한 IPv4 또는 IPv6 주소로 변환 |
| 3 | 전송 연결 형성 | 클라이언트와 서버 간 통신 경로 형성 | HTTP/1.1·HTTP/2는 일반적으로 TCP 연결을 사용하며 서버의 기본 포트는 443 |
| 4 | TLS 핸드셰이크 | 서버 인증 및 암호화 통신 준비 완료 | TLS 버전과 암호 스위트 협상, ECDHE 공유 비밀 생성, 키 파생, 서버 인증서 검증 수행 |
| 5 | HTTP 요청 전송 | 서버에 필요한 작업 요청 | 클라이언트가 HTTP 요청을 생성하고 Client Application Traffic Key로 암호화하여 전송 |
| 6 | 서버 요청 처리 | 요청에 대한 결과 생성 | 서버가 요청을 복호화하고 애플리케이션 로직, 데이터베이스 조회 등을 수행 |
| 7 | HTTP 응답 전송 | 처리 결과를 클라이언트에 전달 | 서버가 HTTP 응답을 생성하고 Server Application Traffic Key로 암호화하여 전송 |
| 8 | 클라이언트 처리 | 응답 데이터 사용 | 클라이언트가 응답을 복호화하고 무결성을 검증한 후 HTML, JSON 등의 데이터를 처리 |
| 9 | 연결 재사용 또는 종료 | 후속 요청 처리 또는 연결 해제 | 추가 요청이 있으면 기존 연결을 재사용하고, 필요하지 않으면 연결을 종료 |
출처
'Network' 카테고리의 다른 글
| [gRPC] Status Codes (0) | 2026.04.17 |
|---|---|
| [gRPC] Deadlines (0) | 2026.04.17 |
| [gRPC] 1. What is gRPC? (0) | 2025.08.26 |
| [HTTPS] 1. SSL, TLS 및 서버 인증서 (0) | 2025.03.29 |
| [IBM Technology] What are DNS Zones And Records? (0) | 2025.03.29 |