跳到主要内容
ecdsa.com
可接受短 Weierstrass 形式

numsp256d1

numsp256d1 是 256 位 Weierstrass 曲线,2014年由微软研究院提出,属于常数来历透明的“nothing up my sleeve”曲线。

numsp256d1 是形如 y² = x³ + ax + b 的短 Weierstrass 曲线,定义在 256 位素域上,其素数阶子群为 256 位,余因子为 1;估计安全级别为 128 位。状态:安全,但仅限特定地区或小众场景。

NUMS 曲线(Bos、Costello、Longa 和 Naehrig,2014年;draft-black-numscurves)以确定性方式生成,因此没有任何常数需要额外解释:取 p = 2^256 − c,其中 c 是使 p 为素数且 p ≡ 3 (mod 4) 的最小值;再取最小的 b,使 y² = x³ − 3x + b 及其扭曲曲线的阶都是素数。numsp256d1 就是由此得到的素数阶 Weierstrass 曲线,安全强度约为 128 位。

该互联网草案未能成为 RFC,2015年便已过期,也没有任何协议注册表收录这些曲线;微软研究院的 MSR ECCLib 实现了它们。同一素数上的扭曲 Edwards NUMS 曲线是 numsp256t1。

各标准中的名称

标准名称
draft-black-numscurves-02numsp256d1

域参数

256 位素域 · 约 128 位安全强度

域素数 p
0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff43
系数 a
0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff40
系数 b
0x25581
基点 x 坐标
0x1
基点 y 坐标
0x696f1853c1e466d7fc82c96cceeedd6bd02c2f9375894ec10bf46306c2b56c77
基点的阶 n
0xffffffffffffffffffffffffffffffffe43c8275ea265c6020ab20294751a825
余因子 h
0x1

用于

  • MSR ECCLib (Microsoft Research)

标准与参考资料

全部曲线