Skip to Content
Suffering builds character

1. SSL/TLS

HTTPS를 통해 데이터가 안전하게 전달되도록 도와주는 SSL 및 TLS란 무엇일까?

2. SSL의 발전흐름

1990년대 중반 미국의 인터넷 및 소프트웨어, 통신 산업을 수행하는 Netscape는 웹 브라우저 시장을 열면서 웹에서 안전하게 결제하고 로그인할 방법을 고민하며 SSL(Secure Socket Layer) 를 고안함

SSL 1.0 버전

완성되었으나, 보안 문제가 많아 공개되지 않음

SSL 2.0(1995)

최초로 공개된 버전, 아직도 설계에 결함이 많고 취약함

SSL 3.0(1996)

2.0을 개선하여 실제로 주로 사용된 프로토콜

이후 Poddle 공격 등 근본적인 취약점이 발견됨

IETF의 인수, TLS로 명칭 변경

Netscape만이 아닌 인터넷 표준으로 발전시키기 위해 국제 인터넷 표준화 기구인 IETF에 의해 인수됨

재정비 과정을 거치면서 TLS로 명칭 변경

3. TLS로 변경

TLS(Transport Layer Security)는 TCP 연결 이후 수행되며, 이름 그대로 전송 계층에서 데이터를 안전하게 보호하기 위한 프로토콜

TLS 1.0(1999)

SSL 3.0 계승, RFC 2246으로 표준화
암호화 방식이나 해싱 방식 일부 변경

TLS 1.1(2006)

CBC 관련 보안 문제 개선

TLS 1.2(2008)

주로 사용되는 버전, 현재에도 많이 사용됨

TLS 1.3(2018)

핸드셰이킹 단계 간소화 및 속도 향상

💡
Tip

TLS 1.2 vs 1.3

  1. 일부 구형 장비, 레거시 시스템은 여전히 TLS 1.2로 동작하는 경우가 있음
  2. TLS 1.3은 일부 암호 스위트(Cipher suite)가 이전 버전과 호환되지 않아 호환성 문제가 발생할 수 있음
  3. 도메인에 따라 보안보다 안정성/호환성을 우선하는 정책을 유지하는 것을 선호할 수 있음
  4. TLS 1.3으로 전환하고 있는 곳도 있으며, 신규 시스템에서는 TLS 1.3을 선택하고 있음

4. 요약

SSL은 웹에서 데이터를 안전하게 전달하기 위한 출발점
TLS는 구조적 문제점들을 보완하고 현대화, 표준화시킨 프로토콜

  • 구조적 취약점 제거 및 보완
  • 암호 기법 강화
  • 성능 개선
  • 다양한 공격 패턴 방어

여기서는 TLS 1.2 버전을 기준으로 학습 진행 예정

Last updated on