【发布时间】:2014-11-21 21:25:39
【问题描述】:
在 RSA 密码系统中,鉴于 e=3,我想知道如果我学会了 d,我该如何检索 m = (p-1)(q-1)。 换句话说,我认为这与一些数学主张有关,即我有 3 及其相反的倍数,我该如何检索该组? N = pq (p,q 素数)。 m = (p-1)(q-1) gcd(e,m) = 1 d = e^-1 mod m
【问题讨论】:
标签: algorithm cryptography rsa
在 RSA 密码系统中,鉴于 e=3,我想知道如果我学会了 d,我该如何检索 m = (p-1)(q-1)。 换句话说,我认为这与一些数学主张有关,即我有 3 及其相反的倍数,我该如何检索该组? N = pq (p,q 素数)。 m = (p-1)(q-1) gcd(e,m) = 1 d = e^-1 mod m
【问题讨论】:
标签: algorithm cryptography rsa
由于 d 和 e 是模逆模 m,因此对于某些常数 c,您也有 de-1 = cm。
当 gcd(k,n) = 1 时,我们也有 k^m = 1 (mod n),因此也有 k^(de-1) = 1 (mod n)。
m 至少可被 4 整除(因为 p 和 q 是奇数)所以将 d*e-1 拆分为 t*2^s 与 t 奇数并计算 k^t (mod n),当您对结果 s 求平方时次 (mod n) 你最终会达到 1,可能早于 s 平方之后。
在你达到 1 之前的中间结果可以是 -1 (mod n);如果发生这种情况,请尝试另一个 k。
如果你从另一个数得到 1,比如 x,我们发现一个 x 不是 1 或 -1 并且 x^2 = 1 (mod n)。换句话说,x^2 -1 = (x-1)*(x+1) = 0 (mod n) 并且 gcd(x-1,n) 是 n 的一个重要因子(比如 q)。现在你已经找到了 q 和 p=n/q 并且可以很容易地计算出 m。
假设 p,q > 3。
d 和 e=3 是模逆,所以 3d-1=cm。由于 d
此外,由于 e 具有模逆,因此 m 以及 p-1 和 q-1 都不能被 3 整除。
p 和 q 都不能被 3 整除,这仅留下 p 和 q 与 2(模 3)全等的情况,因此 p-1 和 q-1 与 1(模 3)全等。但这也使得 m 与 1 (mod 3) 一致
采用等式 3d-1=cm 模 3 我们有 0*d-1 = c*1 (mod 3) 或 c = 2 (mod 3)。因为 c 只有 2 种可能性,所以只剩下 c=2。
因此:m = (3d-1)/2
【讨论】: