暗号
完全前方秘匿性(PFS)
別称: Forward Secrecy, 前方秘匿性
定義
長期鍵が将来漏洩しても過去のセッション通信が復号されないことを保証するプロトコル特性。
完全前方秘匿性(Perfect Forward Secrecy、PFS、単に前方秘匿性とも)は、鍵交換プロトコルの性質で、サーバーの長期秘密鍵が将来漏洩しても、既に記録されたセッションが復号されないことを保証します。各セッション鍵をエフェメラルな鍵ペア(通常は (EC)DHE)から導出し、ハンドシェイク後に破棄することで実現されます。これにより、後から証明書の秘密鍵が盗まれたり全トラフィックが保存されていても、セッション鍵は復元できません。TLS 1.3 はすべてのハンドシェイクで ECDHE を使い、静的 RSA 鍵交換を廃止することで PFS を必須化しており、Signal、WireGuard、SSH も前方秘匿性を強制します。PFS は「いま収集して後で復号する」攻撃(将来の量子計算機による脅威を含む)への対策として不可欠です。
例
- TLS 1.3 は X25519 上の ECDHE でセッション鍵を確立し、既定で前方秘匿性を提供する。
- WireGuard の Noise IK ハンドシェイクは、前方秘匿性のために Curve25519 のエフェメラル鍵を使う。
関連用語
ディフィー・ヘルマン鍵交換
離散対数問題の困難性に基づき、二者が安全でない通信路上で共有秘密を実際に送らずに導出する公開鍵プロトコル。
ECDH
ディフィー・ヘルマン鍵交換の楕円曲線版で、より短い鍵長と高速な演算で同等の共有秘密を導出するプロトコル。
TLS (Transport Layer Security)
TLS (Transport Layer Security) — definition coming soon.
セッション鍵
1 回の通信セッションを保護するために使われ、終了後に破棄される短命の対称鍵。
鍵ローテーション
1 つの鍵で保護されるデータ量と漏洩時の影響範囲を抑えるため、暗号鍵を定期的に新しいものへ置き換える運用慣行。
耐量子暗号
古典計算機と大規模量子計算機の両方からの攻撃に耐えるよう設計された古典的な暗号アルゴリズム群。