CS/정보보호

[정보보호] TLS(Transport Layer Secrecy)에서의 Forward Secrecy

k9yuw 2023. 11. 21. 17:37

 

Forward Secrecy란 long-term private key가 향후에 노출(compromised) 되더라도  session key가 revealed 되지 않도록 하는 보안이다.

 

TLS 1.2 이전의 보안은 1. RSA의 경우 서버가 private key를 protect 하는 동안까지만 secure하였고 forward secure 하지는 않았다. 2. DHE(Ephemeral DH), ECDHE(Elliptic Curve DH)의 경우에는 forward secure을 제공했다. 이는 임시로 생성된 Diffie - Hellman 키를 사용하다가, 이 키가 compromised 되면 해당 public key를 discard 하고 새로운 키를 생성하여 보안을 유지한다. 

 

TLS 1.3에서는 RSA-based key agreement가 제거되었으며, DHE나 ECDHE처럼 forward secrecy를 제공하는 프로토콜이 중점적으로 사용되게 되었다. 

 

TLS version 1.2까지의 TLS Handshake Protocol

TLS-DHE에서 DHE는 클라이언트 - 서버 간 key exchange에 사용된다. 서버는 자체의 long-term private key로 서명한 RSA signature을 제공하여, explicit server authentication 하게 서버의 신원을 확인한다. 

 

TLS-RSA에서는 ???