HTTPS
HTTPS는 HTTP 통신을 TLS로 보호해 서버 인증과 전송 내용의 기밀성·무결성을 제공하는 웹 통신 방식이다.
1. 개요
HTTPS는 https 스킴으로 식별되는 HTTP 통신을 TLS 연결로 보호한다. 표준이 말하는 보호에는 서버 인증과 통신 내용의 기밀성·무결성이 포함된다.[1]
2. 핵심 구성
| 구분 | 설명 |
|---|---|
| 인증서 | 도메인과 공개키를 신뢰 사슬을 통해 연결 |
| 핸드셰이크 | 지원 암호 방식과 키를 합의하고 상대를 인증 |
| 암호화 | 중간 경로에서 요청·응답 본문을 바로 읽기 어렵게 보호 |
| 무결성 | 전송 중 데이터가 몰래 변경되었는지 검증 |
3. 작동 원리
브라우저는 서버가 제시한 인증서의 도메인, 유효기간, 서명과 신뢰 사슬을 확인한다. TLS 핸드셰이크에서 세션 키를 합의한 뒤 HTTP 메시지를 암호화해 전송한다. 인증서 오류가 있으면 브라우저가 경고하며, HSTS를 사용하면 지원 브라우저에 HTTPS 접속을 강제할 수 있다.
4. 형성과 표준
웹 암호화는 SSL에서 출발했지만 현재는 TLS가 표준이다. TLS 1.3은 오래된 암호 방식을 정리하고 핸드셰이크를 단순화했다.[2] HTTP 의미 표준인 RFC 9110은 https URI 스킴과 기본 443 포트를 함께 정의한다.
5. 활용과 주의점
자물쇠 표시는 현재 연결과 도메인 인증이 보호된다는 뜻이지 사이트 운영자의 선의나 본문 정확성을 보증하지 않는다. 피싱 사이트도 유효한 인증서를 받을 수 있다. 혼합 콘텐츠, 만료 인증서, 잘못된 리디렉션과 비보안 쿠키 설정을 함께 점검해야 한다.