对于 RSA 加密,给定 p、q 和 e 求 d?
For RSA encryption, finding d given p,q, and e?
给定 p = 7, q = 11, e = 3
我如何找到 d
?
有很多类似的问题,但是他们要求你计算你自己的e。如果 e = 11
或 e = 17
,这将是一个微不足道的解决方案,但我不确定如何具体地处理 e = 3
。
我的理解是:
d = e-1mod(p-1)(q-1)
d = 3-1mod(6)(10)
d * 3 == 1 mod 60
但是这会导致 3 不可逆 mod60,因为 3 不与 60 互质。给定 e=3 这个值是否有解?感谢您的帮助。
(回答标题中的问题)。在我的算法中,我使用这个:
d =(1+(z* ϕ(N)))/e
私钥 d 必须是一个整数,所以 z
应该从 1
开始,然后递增 1
直到它是一个整数。
ϕ(N)
是欧拉的总函数。
ϕ(N) = (p-1)*(q-1)
编辑:当我将这些质数插入我的代码时,我得到 e = 7
。
要正确找到 e
:e
必须是 e
和 ϕ(N)
的最大公约数等于 1 的数字。
所以e
从1
开始,递增1
直到最大公约数也是1
。
我的计算器显示无解。 (所有值都以 10 为底)
n
= p * q
= 77
phi(n)
= (p-1) * (q-1)
= 60
- 尝试计算
ModInv(3, 60)
并发现没有解,因为 3 整除 60。
为了好玩我用"assume inputs are (sensibly) in hexadecimal"重新运行,变成q=17
,也是不可解的,因为phi(n)
是96,也是均匀的能被 3 整除。
给定 p = 7, q = 11, e = 3
我如何找到 d
?
有很多类似的问题,但是他们要求你计算你自己的e。如果 e = 11
或 e = 17
,这将是一个微不足道的解决方案,但我不确定如何具体地处理 e = 3
。
我的理解是:
d = e-1mod(p-1)(q-1)
d = 3-1mod(6)(10)
d * 3 == 1 mod 60
但是这会导致 3 不可逆 mod60,因为 3 不与 60 互质。给定 e=3 这个值是否有解?感谢您的帮助。
(回答标题中的问题)。在我的算法中,我使用这个:
d =(1+(z* ϕ(N)))/e
私钥 d 必须是一个整数,所以 z
应该从 1
开始,然后递增 1
直到它是一个整数。
ϕ(N)
是欧拉的总函数。
ϕ(N) = (p-1)*(q-1)
编辑:当我将这些质数插入我的代码时,我得到 e = 7
。
要正确找到 e
:e
必须是 e
和 ϕ(N)
的最大公约数等于 1 的数字。
所以e
从1
开始,递增1
直到最大公约数也是1
。
我的计算器显示无解。 (所有值都以 10 为底)
n
=p * q
=77
phi(n)
=(p-1) * (q-1)
=60
- 尝试计算
ModInv(3, 60)
并发现没有解,因为 3 整除 60。
为了好玩我用"assume inputs are (sensibly) in hexadecimal"重新运行,变成q=17
,也是不可解的,因为phi(n)
是96,也是均匀的能被 3 整除。