Curve448
暗号学において、Curve448あるいはCurve448-Goldilocksとは、224ビットの暗号強度[注釈 1]を提供する楕円曲線であり、楕円曲線ディフィー・ヘルマン鍵共有 (ECDH) で使用するために設計されている。Curve448はランバス社の暗号学研究所のMike Hamburgによって開発された。同等のセキュリティ強度を有する他の楕円曲線よりも処理のパフォーマンスが高い[1]。リファレンス実装はMITライセンスで利用可能である[2]。この楕円曲線は、Curve25519とともにTransport Layer Security (TLS) で利用可能である。2017年、アメリカ国立標準技術研究所 (NIST) は、Curve25519とCurve448をアメリカ合衆国連邦政府で利用される楕円曲線としてSP 800-186に追加されることを発表した[3]。FIPS 186-5の草稿もこれを支持している[4]。どちらの楕円曲線も RFC 7748 で説明されている。DH関数についてはX448と呼ばれている
数学的性質
[編集]HamburgはSolinas素数に基づく素数 p = 2448 − 2224 − 1 を選択している。これは、「黄金比 φ ≡ 2224 を定義する」ことから "Goldilocks" 素数と呼ばれる。黄金比素数の利点としては、高速なカラツバ法が挙げられる[5]。
Hamburgが利用した曲線はツイストしていないエドワーズ曲線 Ed: y2 + x2 = 1 − 39081x2y2 である。定数 d = −39081 は要求される数学的性質を満たす最小の絶対値として選ばれたものであり、特別な意味はない。
Curve448は、実装による落とし穴を避けるよう設計されている[6]。
脚注
[編集]注釈
[編集]出典
[編集]- ^ Hamburg, Mike (2015). “Ed448-Goldilocks, a new elliptic curve”. Cryptology ePrint Archive .
- ^ http://ed448goldilocks.sourceforge.net/
- ^ “Transition Plans for Key Establishment Schemes” (31 October 2017). 2022年8月3日閲覧。
- ^ FIPS 186-5
- ^ Sasdrich, Pascal; Géneysu, Tim (2017). Cryptography for next generation TLS: Implementing the RFC 7748 elliptic Curve448 cryptosystem in hardware. 2017 54th ACM/EDAC/IEEE Design Automation Conference (DAC). doi:10.1145/3061639.3062222。
- ^ “SafeCurves: Introduction”. safecurves.cr.yp.to. 2022年8月3日閲覧。