暗号
ECDH
定義
ディフィー・ヘルマン鍵交換の楕円曲線版で、より短い鍵長と高速な演算で同等の共有秘密を導出するプロトコル。
Elliptic Curve Diffie–Hellman(ECDH)は DH 鍵交換の楕円曲線版です。選択した曲線上で各者が鍵ペアを生成し、互いの公開点を交換した後、受け取った公開点に自分のスカラー秘密鍵を掛け合わせて同じ共有点を得ます。その後、ハッシュや鍵導出関数を用いて点から一つ以上の対称鍵を導出します。同等の安全性に対して鍵長を大幅に短くでき、Curve25519 や P-256 の 256 ビット鍵は約 128 ビット相当の安全性を提供します(有限体 DH なら 3072 ビット素数が必要)。一時鍵版の ECDHE は TLS 1.3、現代の SSH、WireGuard、Signal プロトコルにおける前方秘匿性のあるハンドシェイクの中核です。DH と同様、ECDH 単独では認証を提供しないため、署名・証明書などのアイデンティティ機構と組み合わせる必要があります。
例
- TLS 1.3 では現在ほぼすべてのセッションで X25519 を用いた ECDHE がネゴシエートされる。
- WireGuard は Noise ベースのハンドシェイク内で Curve25519 を用いた ECDH を行う。
関連用語
ディフィー・ヘルマン鍵交換
離散対数問題の困難性に基づき、二者が安全でない通信路上で共有秘密を実際に送らずに導出する公開鍵プロトコル。
楕円曲線暗号(ECC)
有限体上の楕円曲線の代数構造に基づく公開鍵暗号の総称で、RSA と同等の安全性をはるかに小さな鍵長で実現する。
公開鍵暗号方式
公開鍵と秘密鍵のペアを用い、事前共有の秘密なしに暗号化・鍵交換・電子署名・認証を実現する暗号学の分野。
完全前方秘匿性(PFS)
長期鍵が将来漏洩しても過去のセッション通信が復号されないことを保証するプロトコル特性。
セッション鍵
1 回の通信セッションを保護するために使われ、終了後に破棄される短命の対称鍵。
TLS (Transport Layer Security)
TLS (Transport Layer Security) — definition coming soon.