在ECDSA中,我们使用一个素数阶组\langle G\rangle
进行密码学的使用。假设是\#\langle G\rangle = p
。在用于ECDSA的曲线中是否还有另一个子组,其顺序也是p
?
发布于 2021-02-19 22:15:28
这个问题有两面;
K
是定义曲线C
的域的\#C(K) = p
,在群论中,G
是一个有限群,H
是G
的一个子群。然后,H
的顺序必须除以G
的顺序。这个拉格朗日定理H
是一个群G
的子群,然后是拉格朗日定理的推论下的{\displaystyle \left|G\right|=\left[G:H\right]\cdot \left|H\right|.}
;如果这个群的阶是素数,那么除了平凡子群之外没有其他子群。因此,order p
组除了平凡的子组(标识组和组本身)之外,没有其他子组。\#C(K) = n
;这实际上取决于组。拉格朗日定理不保证子群的存在性n
,其馀因子是h=8
( h = \#E(\mathbb{F}_p)/n
),则有阶2,4,8,n,2n,4n,8n
的子群,即我们有所有可能的子群。你可以找到一个群,它有两个阶为p
的素数子群,如果没有其他子群,则曲线群将与\mathbb{Z}_p \oplus \mathbb{Z}_p
同构。这在椭圆曲线中有可能吗?我还没见过安全椭圆曲线的例子。原因很简单,为了有效地利用曲线,我们需要一个接近曲线阶的大素数子群序。如果有两个不同的阶p
子群,则曲线阶将是\geq p^2
。这意味着你在浪费你的计算。更深入的理论(4.1在第二版的华盛顿之书);
Theorem 4.1:设
E
ben椭圆曲线群在有限域\mathbb{F_q}
上。然后E(\mathbb{F_q}) \simeq \mathbb{Z_n} > \text{ or } \mathbb{Z_{n_1}} \oplus \mathbb{Z_{n_2}}
表示一些整数n \geq 1
,或者对于一些带n_1|n_2
的整数n_1,n_2 \geq 1
。
如果E(\mathbb{F_q})
落入第一种情况,则意味着子群顺序r
必须对r|n
进行除法。但是\mathbb{Z})_n
的子组是独一无二的。因此,不能有两个具有相同顺序的子组。
第二个例子更有趣的是[1] [2] [3],因为它是组的直接乘积。由于n_1\mid n_2
存在H
的一个子群,使得它与\mathbb{Z_{n_1}}
是同构的。现在我们有两个同阶\Bbb Z_{n_1} \oplus \{0 \}
和\{0\} \oplus H
的子群。
如前所述,我们不喜欢有两个不同的子群的大素数的曲线。
https://crypto.stackexchange.com/questions/88365
复制相似问题