완전순방향비밀성 (Perfect Forward Secrecy)
쉽게 풀면
완전순방향비밀성은 매 통신 세션마다 그 세션에서만 쓰는 임시 열쇠를 새로 만들어 쓰는 것과 비슷합니다. 만약 나중에 공격자가 어떤 방법으로든 서버의 오래된 마스터 키를 손에 넣더라도, 이미 지나간 과거 세션에서 쓰인 임시 열쇠까지는 되돌려 복구할 수 없도록 설계됩니다. 이렇게 하면 예전에 저장해 둔 암호화된 통신 기록을 나중에 몰래 해독하는 공격을 막을 수 있습니다. 최근 많은 보안 통신 프로토콜이 이 성질을 기본으로 지원하도록 설계되고 있습니다.
왜 중요한가
공격자가 암호화된 통신 데이터를 지금 당장 해독하지 못하더라도 저장해 두었다가 나중에 키가 유출되었을 때 한꺼번에 해독하는 위협이 실제로 존재하기 때문에, 이 성질은 정보보안학에서 중요하게 다루어집니다. 특히 오랜 기간 비밀이 유지되어야 하는 통신에서는 완전순방향비밀성 여부가 프로토콜 선택의 중요한 기준이 됩니다. TLS와 같은 널리 쓰이는 보안 프로토콜의 최신 버전에서도 이 개념이 핵심 설계 원칙으로 반영되어 있습니다.
논문에서는 이렇게 쓰입니다
임시 세션 키 생성이 완전순방향비밀성을 달성하는 핵심 설계 요소임을 보여줍니다.
이 성질이 결여된 프로토콜이 가지는 잠재적 취약점을 분석하는 연구 사례입니다.
조금 더 깊게 보면
완전순방향비밀성은 일반적으로 디피-헬만 키 교환과 같은 방식을 세션마다 새로 수행하고, 사용이 끝난 임시 키를 즉시 파기하는 방식으로 구현됩니다. 장기 개인키는 신원 확인에만 사용하고, 실제 세션 암호화 키는 매번 새로 생성되는 임시 값에서 유도되는 구조가 일반적입니다.
주의할 점
완전순방향비밀성은 과거 통신을 보호할 뿐, 공격자가 실시간으로 통신 중인 세션 자체를 침해하는 것까지 막아주지는 않습니다.