공부

SSL, TLS

besomilk 2025. 11. 4. 21:20

SSL(Secure Sockets Layer), 보안 소켓 계층

  • 보안 연결 생성 통신 프로토콜

TLS(Transport Layer Security), 전송 계층 보안

  • SSL의 보안 결함을 수정한 업그레이드 버전
  • 현재 많은 경우에 SSL이라는 말은 TLS 프로토콜과 TLS 인증서를 가리킴

    연결 과정

  • handshake 프로세스를 용이하도록
  • 디지털 인증서 사용 -> 브라우저와 웹 서버 간 암호화된 통신을 설정

HTTP

  • 클라이언트와 서버 간 통신을 위한 프로토콜
  • HTTPS: HTTP 연결에 SSL/TLS 프로토콜을 설정

    HTTPS

  • 브라우저는 TLS를 사용해 웹 사이트의 SSL 인증서를 확인
  • 해당 웹 사이트의 서버거 보안 표준을 준수하고 있다면 인증
  • 암호화된 연결은 https://로 표시됨

SSL/TLS

TLS 1.2까지

  • 공개키 기반으로 대칭키를 교환
  • 방법
    • 공개키, 개인키 쌍을 만든다.
    • 공개키로 암호화한 것은 개인키로 복호화되고, 개인키로 서명한 것은 공개키로 검증됨
    • 세션키(대칭키)를 만들고, 서버의 공개키로 세션키를 암호화하여 전송
    • 서버는 개인키로 복호화하여 세션키 획득
    • e.g. rsa
      • 인수분해의 어려움
  • 문제점
    • 개인키가 노출되면 과거 통신까지 복호화 가능

TLS 1.3

  • 세션키를 직접 교환하지 않고 공동 생성
  • Diffie–Hellman(ECDHE) 기반으로 즉석에서 세션키 생성
    • 이산로그 문제 기반