在像ElGamal这样的离散日志密码系统中,应该选择“私钥”k
作为组G
的任何元素,即k < p-1
。密码系统的完整性是依赖于k
作为组的一个元素,还是也可以更大(总是假设g^k \bmod{p}
将在公钥中发布)?如果是,是否可以任意选择比组大的数字?
发布于 2019-10-12 18:12:17
假设您已经选择了一个大型的k > p
,那么我们就可以用
k = \ell \cdot (p-1)+ k'
也可以是您的等效密钥。
从欧拉定理,我们知道a^{\phi(n)} \equiv 1 \bmod n
对于所有的a
相对来说是质数到n
。
如果您的密钥k> p-1
,那么我们可以写如下与除法算法-除法由p-1
;
k = \ell\cdot (p-1)+ k' = \ell \cdot \phi(n)+ k'
现在将其放入a
的S幂中,并使用欧拉的Toitent定理:
a^k \equiv a^{\ell \cdot \phi(n)+ k'} \equiv a^{\ell \cdot \phi(n)} a^{k'} \equiv \underbrace{a^{(\phi(n))\ell}}_{\equiv 1 \bmod p} a^{k'} \equiv a^{k'} \bmod p
所以我们有
a^{k'} \equiv a^k \bmod p
和使用k
不会实现任何更高的安全性,相反,您将在模块供电中计算不必要的步骤。
如果你想获得更多的安全性,你应该使用更大的模数。
https://crypto.stackexchange.com/questions/74990
复制相似问题