- Published on
네트워크-프로토콜-및-보안
- Authors
- Name
- Jihwan Seong
배경
- TLS에 대한 궁금증이 생겨서 TLS와 이와 관련된 개념들을 정리해보는 시간을 갖겠습니다.
관련 개념
SSL (Secure Sockets Layer)
정의 : 인터넷 커뮤니케이션 보안을 제공하는 프로토콜
특징
- 웹 브라우저와 서버 간의 암호화된 세션을 구성합니다.
- 총 3개의 버전이 있습니다. 1.0,2.0 그리고 3.0입니다.
- 현재 모든 버전이 사용되지 않습니다.
- 2015년에 SSL 3.0버전이 폐기되고 TLS 프로토콜로 대체되었습니다.
TLS
정의 : 인터넷 전반에 안전한 커뮤니케이션을 제공하는 산업 표준 암호화 프로토콜
목적 : 암호화를 통해서 프라이버시,진실성 그리고 인가성을 최우선적으로 보장합니다.
특징
- 어플리케이션 계층에서 동작합니다.
- 웹 브라우저와 서버간의 상호작용의 보안을 제공하며, 다른 어플리케이션(email, message 등)에서도 사용됩니다.
- HTTPS 프로토콜에 사용되어 HTTP 프로토콜의 보안을 생성합니다.
- Public Key Infrastructure에서 키 교환 시스템을 통해 브라우저와 서버간의 신뢰성을 구축합니다.
- 서버의 신뢰성은 Certificate Authority가 발행한 TTL/SSL 인증서를 통해 확인됩니다.
참조
SSL과 TLS 차이
- SSL과 TSL은 동일한 목적인 웹사이트 보안을 갖고 있지만 TLS가 뛰어난 성능을 갖습니다.
- 명명법
- SSL와 TLS은 많은 공통점이 있지만, 서로 다른 기술 입니다.
- 각각 다른 근간에서 개발되었습고, 각각 주어진 명칭이 다릅니다.
- 다만, 현재는 TLS를 SSL의 더 높은 버전이라 지칭되며 사용됩니다.
- 근간 차이
- SSL은 웹사이트 보호를 목적으로 1994년에 만들어 졌고 여러 버전이 나왔지만, 최신버전(3.0)에서 보안 취약점이 발견되어 사용이 폐기되었습니다.
- SSL의 최신버전(3.0)은 recode layer와 키 교환 문제 그리고 프로토콜의 확장성 문제가 있었습니다.
- TLS도 웹사이트 보호를 목적으로 1999년에 만들어 졌고 여러버전이 나왔고, SSL을 대체하였습니다.
- TLS의 초기 버전은 폐기된 암호화 묶음 사용, 비의도적 위험 설정 상태 그리고 널리 사용되는 라이브러리에서 미지원 문제가 있었습니다.
- 이후 1.2버전에서 제기된 문제를 해결하여 상호보완성과 확장성을 안정성과 독립적으로 확보하였습니다.
- Handshake 보호
- SSL 2.0은 MD5을 사용하여 메세지 인증을 수행하였지만, MD5 사용이 Handshake 메세지를 보호해주지 못하였습니다.
- 해당 문제 제기 후, 해당 문제는 SSL 3.0와 이후의 TLS 버전에서 해결되었습니다.
- 암호화 묶음
- TLS가 암호화 묶음을 사용하고 활용하는데 더욱 뛰어났습니다.
- 특히 새롭고 강력한 암호화 알고리즘에 SSL보다 적합했습니다.
- 결함 수정
- SSL 존재 이전에는 웹 보안성은 매우 취약했습다.
- 다만 TLS와 비교했을 때, SSL은 비효율적이었습니다.
- TLS의 최신버전은 이외에 다양한 취약점을 보안하기 위해 발전하고 있습니다.
- 참조 CBT-nuggets : ssl vs tls what's difference