SSL/TLS, SSL, TLS   Secure Socket Layer, Transport Layer Security   안전 소켓 계층, 전송계층 보안

(2016-09-19)

TLS 터널, SSL 터널

Top > [기술공통]
[기초과학]
[파동/광학/음향]
[방송/멀티미디어/정보이론]
[전자/전기/제어]
[통신/네트워킹]
[정보기술(IT)]
[기계/재료/공업일반]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
정보보호/보안 > [정보보호관리]
[정보보호(기타일반)]
[보안공격]
[암호기술]
[네트워크보안]
[인증]
네트워크보안 >   1. IP 가상사설망
  2. 상태반영검사(SPI)
  3. 패킷 필터링
  4. 터널링
[링크 레벨 보안]
[IP 레벨 보안]
[전송 레벨 보안]
[시스템 보안]
[네트워크/프로토콜 분석]
전송 레벨 보안   1. SSL/TLS
  2. SSL/TLS 구성 프로토콜
  3. HTTPS
  4. SSH

Top > [기술공통]
[기초과학]
[파동/광학/음향]
[방송/멀티미디어/정보이론]
[전자/전기/제어]
[통신/네트워킹]
[정보기술(IT)]
[기계/재료/공업일반]
[표준/계측/품질]
[기술경영]
통신/네트워킹 > [통신이론]
[선로/전송]
[통신망 일반]
[회선교환(PSTN)]
[무선/이동통신]
[광통신]
[인터넷/데이터통신]
인터넷/데이터통신 >   1. 데이터통신망
  2. 인터넷
  3. 데이터 네트워크 설계
[데이터 단위]
[프로토콜/계층]
[데이터 링크]
[TCP/IP]
[라우팅]
[인터넷 QoS]
[인터넷 관리]
[인터넷 응용]
[인터넷 기타]
[패킷교환(PSN)]
[인터넷 관련 기관]
인터넷 응용 > [NetBIOS]
[DNS]
[가상단말]
[FTP]
[전자메일]
[VoIP]
[웹기술]
[VPN]
[무선인터넷]
[전자상거래]
[개인 컨텐츠]
[인터넷 기타 응용]
VPN >   1. VPN 이란?
  2. IP-VPN
  3. MPLS-VPN
[Tunneling]
Tunneling   1. Tunneling 기술
  2. L2TP
  3. PPTP
  4. IPSec
  5. GRE
  6. SSL/TLS
  7. SSH

1. SSL (Secure Socket Layer) 및 TLS (Transport Layer Security)전송계층 상에서 클라이언트,서버에 대한 인증 및 데이터 암호화 수행
     - 클라이언트서버 양단 간 응용계층TCP 전송계층 사이에서 안전한 보안 채널을
       형성해 주는 역할을 수행하는 보안프로토콜

  ㅇ 주요 응용
     - 웹 브라우저웹 서버 사이의 안전한 보안 채널을 제공하기 위해 많이 사용됨
        . HTTP (HTTPS), FTP, SMTP, SIP 등 에서도 사용 가능


2. SSL/TLS 역사

  ㅇ 최초 제안 : 넷스케이프사
     - 버젼 : SSL v1.0 (1994.7), SSL v2.0 (1994.12), SSL v3.0 (1996.11)
     * SSL v3.0은 사실상의  보안 표준

  ㅇ SSL의 표준화 기여 => TLS 표준
     - SSL v3.0 을 참고로하여 RFC 2246(1999년)으로 표준화된 것이 TLS 임
     - 버젼 : TLS 1.0 (RFC 2246,1999) : SSL v3.1에 해당, 
              TLS 1.1 (RFC 4346, 2006), TLS 1.2 (RFC 5246, 2008)

  ※ 따라서, SSL 및 TLS는 본질적으로 같으며 버전이 다른 정도임


3. SSL/TLS 주요 기능

  ㅇ 상호 인증        : 공개키 인증서를 이용한 서버,클라이언트의 상호 인증
     - 클라이언트/서버 두 응용 간에 상대방에 대한 인증

  ㅇ 메세지 압축 
     - 디폴트 Null (압축 알고리즘은 미리 정해지지 않고 협상으로 지정 가능)

  ㅇ 메세지 인증 (메세지 무결성)
     - 메세지 인증 코드 HMAC에 의한 메세지 무결성 제공 (HMAC MD5, HMAC SHA-1 등)

  ㅇ 암호화세션 키 생성(대칭 키 합의)을 위한 키 교환
     - RSA : 두 키(공개 키개인 키)가 하나의 수 체계를 형성 (서버 공개 키 사용)
     - Diffie-Hellman  : Diffie-Hellman 프로토콜을 기반으로 한 키 교환 방식

  ㅇ 생성된 공유 비밀키에 의해 암호화종단간 안전한 연결 통로 제공
     - 스트림 암호화 : 40, 128 비트RC4
     - 블록 암호화   : IDEA, 40,56 비트DES, 168 비트3DES
4. SSL/TLS 보안 특징

  ㅇ 인증 구조          :  X.509
     - X.509에서 규정된 공개키 인증서 교환에 의해 상대방에 대한 인증 수행
 
  ㅇ 키 교환 방식       :  (협상 선택 가능)
     - Null, RSA 공개 키 교환, Anonymous Diffie-Hellman 키 교환, 
       Ephermeral Diffie-Hellman 키 교환, Fixed Diffie-Hellman 키 교환, Fortezza

  ㅇ 대칭키 암호화 방식 :  (협상 선택 가능)  
     - RC2 (40), RC4 (40), RC4 (128), DES, Triple DES, IDEA 등

  ㅇ 해쉬 알고리즘      :  (협상 선택 가능)
     - Null, MD5, SHA-1


5. SSL/TLS 프로토콜 스택전송계층 TCP 위에서 `보안 소켓/보안 채널/터널링`을 구성
     
     - 응용계층에서 생성된 데이터에 대한 보안(인증,무결성,기밀성),압축 등의 서비스를 제공

     - SSL/TLS 보안 터널을 위한 TCP/UDP 포트번호
        . 例) 보안 HTTP를 위한 포트번호 443 (HTTPS)

     - 한편, UDP 상에서도 가능한 버젼으로, 
        . DTLS (Datagram Transport Layer Security) RFC 6347(2012년)가 있음

  ㅇ 프로토콜 스택SSL/TLS 구성 프로토콜 참조
     


6. TLS 핸드세이크 단계

  ㅇ 초기 협상 단계
     - 클라이언트,서버 간에 Client Hello,Server Hello 메세지 교환
     - 클라이언트서버에게 Cipher Suite(사용 가능 암호화,해싱 방식 등)을 보내고
       서버 인증서를 요구

  ㅇ 인증 단계
     - 서버에서 공개키,서버명,인증기관 주소 등을 포함한 인증서클라이언트에게 전송
     - 이때, 서버클라이언트가 제시한 것 중 자신이 선택한 암호화 방식인증서를 보냄
     - 필요시 클라이언트는, 인증서를 발급한 인증기관 서버에 접속하여 서버 인증서의 유효성 확인

  ㅇ 보안 채널 형성
     - 클라이언트보안 채널 형성에 필요한 세션키를 만들기 위해,
     - 서버공개키를 이용하여 임의의 수(Pre Master Key)를 암호화시켜 서버에게 전송하고,
     - 서버는 자신의 비밀키(개인키)로 이를 해독(역암호화)하게 됨
     - 이때 임의의 수(Pre Master Key)로부터 Master Key를 유도하고, 
     - 이 Master Key로부터 양측은 암호화,복호화에 필요한 세션키를 생성함

  ㅇ 상호 암호화 통신 시작
     - 즉, 보안성이 확립된 TLS 터널 내에서 상호 통신


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

 
        최근수정     참고문헌