HTTPS   Secure Hypertext Transfer Protocol  

(2017-09-12)

https

1. (HTTP over TLS, HTTP over SSL, HTTP Secure)  HTTPS

  ㅇ HTTP 및 SSL/TLS(보안 채널)를 조합시킨, 웹 서버웹 브라우저 간의 보안프로토콜
     - HTTP(응용계층)와 TCP(전송계층) 사이에서 일종의 보안 계층을 구현

  ㅇ HTTPS 암호화 대상
     - 요청 문서의 URL, 문서 내용, 브라우저 폼(Form) 내용, 쿠키, HTTP 헤더 내용


2. HTTPS 특징SSL/TLS 상의 HTTP 구현 
     - HTTP와 SSL/TLS의 조합

  ㅇ 주요 기능
     - 암호화(Encryption)
     - 인증(Authentication)
     - 변경감지 등

  ㅇ 사용 포트
     - 통상적인 HTTP 80번이 아닌, 
     - HTTPS 443번 포트 번호 사용

  ㅇ URI 스킴 접두사 : `https`

  ㅇ 표준 : RFC 2818


3. HTTPS 보안 작동 방식

  ㅇ 만일, 평범한 http가 아닌 https 스킴을 갖는 URL 주소를 만나면,
     - 클라이언트(웹브라우저)는 웹서버에 80번이 아닌 443번 포트번호로 연결하고,
     - 바이너리 포멧으로 된 몇몇 보안 매개변수를 교환(핸드세이크)하고,
     - 그와 관련된 HTTPS 명령들이 그 뒤를 잇게 됨 

  ㅇ 보안 연결 확립을 위한 핸드세이크 
     - 주요 교환 대상
        . 프로토콜 버전 번호 교환, 상호 알고있는 암호 선택, 양단간의 신원 인증,
          보안 채널 암호화를 위한 임시 세션 키 생성
     - 통상적인 핸드세이크 절차
        . 클라이언트가 여러 암호 후보들을 보내고 서버 인증서를 요구
        . 서버는 선택한 암호서버 인증서를 보냄
        . 클라이언트가 비밀 정보를 보내고, 클라이언트서버암호 키를 생성
        . 상호 암호화 통신 시작

  ㅇ HTTPS 서버 인증서
     - X.509에 기반한 인증서로써, 인증서에 사이트 정보가 추가됨

  ㅇ  사이트 정보에 대한 주요 검사
     - 날짜 검사          : 유효기간 검사
     - 서명자 유효성 검사 : 올바른 인증기관에서 파생된 인증서인지를 검사
     - 서명 검사          : 인증서 무결성 검사
     - 사이트 신원 검사   : 인증서도메인명에 부합되는 서버인지를 검사

  ㅇ 웹브라우저는 어떤 사이트에 최초 연결시,
     - 웹 서버 인증서를 가져와서 검증함
        . 웹브라우저는 이미 신뢰할만한 인증기관 인증서를 갖고 출하되어,
        . 디지털 서명 검증이 즉시 가능하고, (보통, 웹브라우저 주소창 근처에 검증결과 보임)
        . 상대 웹서버가 신뢰할 수 없으면, 
        . 인증기관의 신뢰 및 진행 여부를 사용자에게 물어보는 대화상자를 보여줌


[전송 레벨 보안] 1. SSL/TLS 2. SSL/TLS 구성 프로토콜 3. HTTPS 4. SSH

 
        최근수정     참고문헌