SM2 は、256 ビットの素体上の短縮ワイエルシュトラス形式の曲線 y² = x³ + ax + b で、位数が 256 ビットの素数である部分群とコファクター 1 を持ちます。推定セキュリティレベルは 128 ビットです。ステータス:安全(ただし地域限定またはニッチな用途向け)。
この曲線は p = 2^256 − 2^224 − 2^96 + 2^64 − 1 上の y² = x³ − 3x + b で、中国の国家商用暗号管理局(OSCCA)が 2010 年に公開し、GB/T 32918 として標準化されました。OpenSSL ではこの曲線を SM2 と呼び、TLS では curveSM2 として登録されています。
SM2 署名アルゴリズムは ECDSA ではありません。署名者はまずユーザー識別子と公開鍵をハッシュして値 Z_A を求め、それをメッセージの前に付加します。署名の式も異なるため、SM2 の鍵を ECDSA の検証者で検証することはできません。RFC 8998 は SM2 と SM3 を TLS 1.3 に導入し(グループ 41、署名方式 sm2sig_sm3)、RFC 9563 は DNSSEC にアルゴリズム 17 として導入しています。
規格での名称
| 規格 | 名称 |
|---|
| GB/T 32918.5-2017 | SM2 |
| OpenSSL | SM2 |
| IANA TLS | curveSM2 |
ドメインパラメーター
256 ビットの素体 · 約 128 ビットセキュリティ
- 有限体の素数 p
- 0xfffffffeffffffffffffffffffffffffffffffff00000000ffffffffffffffff
- 係数 a
- 0xfffffffeffffffffffffffffffffffffffffffff00000000fffffffffffffffc
- 係数 b
- 0x28e9fa9e9d9f5e344d5a9e4bcf6509a7f39789f515ab8f92ddbcbd414d940e93
- ベースポイントの x 座標
- 0x32c4ae2c1f1981195f9904466a39c9948fe30bbff2660be1715a4589334c74c7
- ベースポイントの y 座標
- 0xbc3736a2f4f6779c59bdcee36b692153d0a9877cc62a474002df32e52139f0a0
- ベースポイントの位数 n
- 0xfffffffeffffffffffffffffffffffff7203df6b21c6052b53bbf40939d54123
- コファクター h
- 0x1
採用例
- Chinese commercial cryptography (SM2/SM3/SM4)
- TLS 1.3 (RFC 8998)
- DNSSEC (algorithm 17)
← すべての曲線