{{위키데이터 속성 추적}}
{{IP스택}}
'''전송 계층 보안'''({{llang|en|Transport Layer Security}}, '''TLS''', 과거 명칭: '''보안 소켓 레이어'''/Secure Sockets Layer, '''SSL''')<ref>{{웹 인용|url=//tools.ietf.org/html/rfc7568 |title=Deprecating Secure Sockets Layer Version 3.0 |date=June 2015 |author1=R. Barnes |author2=M. Thomson |author3=A. Pironti |author4=A. Langley |url-status=live |archiveurl=https://web.archive.org/web/20180328080443/https://tools.ietf.org/html/rfc7568 |archivedate=2018-03-28}}</ref>는 [[컴퓨터 네트워크]]에 [[통신 보안]]을 제공하기 위해 설계된 암호 규약이다. 그리고 '트랜스포트 레이어 보안'이라는 이름은 '보안 소켓 레이어'가 표준화 되면서 바뀐 이름이다. 이 규약은 [[인터넷]] 같이 [[인터넷 프로토콜 스위트|TCP/IP]] 네트워크를 사용하는 통신에 적용되며, 통신 과정에서 [[전송계층]] 종단간 보안과 데이터 무결성을 확보해준다. 이 규약은 [[웹 브라우징]], [[전자 메일]], [[인스턴트 메신저]], [[VoIP|voice-over-IP (VoIP)]] 같은 응용 부분에 적용되고 있다. [[국제 인터넷 표준화 기구]](IETF)에 의해 현재 구식(deprecate)으로 간주되어 있다.<ref>{{웹 인용 |url=//tools.ietf.org/html/rfc7568 |title=Deprecating Secure Sockets Layer Version 3.0 |date=June 2015 |author1=R. Barnes |author2=M. Thomson |author3=A. Pironti |author4=A. Langley |url-status=live |archiveurl=https://web.archive.org/web/20180328080443/https://tools.ietf.org/html/rfc7568 |archivedate=2018-03-28 |df= |확인날짜=2018-05-18 }}</ref> 최종 갱신은 RFC 5246<nowiki/>이고, 최종 갱신 버전은 [[넷스케이프]]에서 만든 SSL 표준을 바탕으로 했다.

== 설명 ==
TLS는 클라이언트/서버 응용 프로그램이 네트워크로 통신을 하는 과정에서 도청, 간섭, 위조를 방지하기 위해서 설계되었다. 그리고 암호화를 해서 최종단의 인증, 통신 기밀성을 유지시켜 준다.

TLS의 3단계 기본 절차:
# 지원 가능한 [[알고리즘]] 서로 교환
# 키 교환, 인증
# [[대칭 키|대칭키 암호]]로 암호화하고 메시지 인증

우선 첫 단계에서 서버와 클라이언트는 암호 스위트를 교환한다. 이 단계에서 키 교환과 인증에 사용될 암호화 방법, [[메시지 인증 코드]](MAC)가 결정된다. 키 교환과 인증 알고리즘은 공개키 방법을 사용하거나 미리 공유된 키([[TLS-PSK]])를 사용할 수도 있다. 메시지 인증 코드들은 [[HMAC]] 해시 함수로 만든다. SSL에서는 비표준 무작위 함수를 사용한다.

일반적인 알고리즘:
* 키교환: [[RSA 암호|RSA]], [[디피-헬먼 키 교환|Diffie-Hellman]], [[타원곡선 디피-헬먼|ECDH]], [[SRP]], [[PSK]]
* 인증: [[RSA 암호|RSA]], [[디지털 서명 알고리즘|DSA]], [[ECDSA]]
* 대칭키 암호: [[RC4]], [[트리플 DES]], [[고급 암호화 표준|AES]], [[국제 데이터 암호화 알고리즘|IDEA]], [[데이터 암호화 표준|DES]], [[아리아 (암호)|아리아]], [[ChaCha20]], [[Camellia]]. 옛날 버전 SSL에서는 [[RC2]]가 쓰임.
* [[암호화 해시 함수|해시 함수]]: TLS에서는 [[MD5|HMAC-MD5]] 또는 [[SHA|HMAC-SHA]]. SSL에서는 [[MD5]]와 [[SHA]]. 옛날 버전 SSL에서는 [[MD2]]와 [[MD4]]가 쓰임

== 개발 역사 ==
{| class="wikitable" style="float:right; margin-left:9px;"
|-
! colspan=2 | 정의
|-
! 프로토콜 !! 연도
|-
| SSL 1.0 || -
|-
| SSL 2.0 || 1995
|-
| SSL 3.0 || 1996
|-
| TLS 1.0 || 1999
|-
| TLS 1.1 || 2006
|-
| TLS 1.2 || 2008
|-
| TLS 1.3 || 2018
|}
SSL 규약은 처음에 [[넷스케이프]]가 만들었다. 1.0 버전은 공개된 적이 없고, 2.0 버전이 1995년 2월에 이르러서야 릴리스가 된다. 그러나 이 버전은 많은 보안 결함 때문에 3.0 버전으로 곧바로 이어진다. 3.0은 1996년 릴리스 된다. 결국 3.0 버전은 TLS 버전 1.0의 기초가 되고, [[IETF]]에서 1999년 1월에 RFC 2246 표준 규약으로 정의하게 된다. 마지막 갱신은 RFC 5246 이었다.

== 보안부분 약점  ==
패킷이 암호화되어 송수신 되므로 정보탈취 부분에서는 강하다. 기밀성이 우선이므로 [[스니핑 공격]](sniffing attack)에서 뛰어난 보안성을 보인다. 다만 암호화된 패킷이 클라이언트 PC 또는 서버로 전송되기 때문에 송수신자간 데이터 교환이 일어나는 일에 대해서는 무력해진다. 개인정보 유출, 기밀정보 유출, [[서비스 거부 공격|DDoS]], [[지능형 지속 공격|APT]], [[악성 소프트웨어|악성코드]] 공격이 발생할 경우 무력화된다.<ref>{{웹 인용|url=https://www.dailysecu.com/?mod=news&act=articleView&idxno=48730|제목=[G-PRIVACY 2019] 김대환 소만사 대표 "HTTPS 보안은 선택이 아닌 필수"|성=데일리시큐|날짜=2019-04-14|언어=ko|확인날짜=2019-06-17}}</ref>

== 같이 보기 ==
* [[TLS 구현의 비교]]

== 각주 ==
{{각주}}

== 외부 링크 ==
{{위키공용분류}}
; 사양
* [//tools.ietf.org/html/rfc5246 RFC 5246 - The Transport Layer Security (TLS) Protocol Version 1.2]
* [https://datatracker.ietf.org/wg/tls/ IETF (Internet Engineering Task Force) TLS Workgroup]

{{TLS/SSL}}
{{VPN}}
{{웹 브라우저}}

{{전거 통제}}

[[분류:전송 계층 보안| ]]
[[분류:인터넷 표준]]
[[분류:인터넷 프로토콜]]
[[분류:암호 프로토콜]]
[[분류:전자 상거래]]
[[분류:인터넷 보안]]