如果13 * D = 1 mod 60那么D = 37怎么样?

时间:2013-11-10 09:34:28

标签: math rsa modulo

您好我正在解决RSA algorithm的示例问题 我给了两个素数7和11.让我们说p=7q=11
我必须为某些加密密钥(e)计算解密密钥(d)

所以我首先计算隐含n=p*q

n=77

现在我认为 e=13
计算d我使用公式d*e = 1 mod fi

其中fi=(p-1)(q-1)暗示fi=60

所以最终的equatin成为13*d = 1 mod fi

现在根据一些解决的例子 d计算为37.怎么样?

任何帮助表示赞赏..

2 个答案:

答案 0 :(得分:2)

使用extended Euclidean algorithm计算整数x和y,使

13*x+60*y=1

然后x就是你要找的答案,mod 60。

答案 1 :(得分:1)

我认为这就是你要找的东西

验证答案很简单,首先找到答案,再多做一点工作。
 
验证:

13 * 37 = 481 
481 = 8 * 60 + 1

因此,如果将13 * 37除以60,则余数为1  
替代答案:
 
任何形式(37 + 60 k)的整数(其中k是任何整数)也是一种解决方案。 (97,-23等)
 
要找到解决方案,您可以按以下步骤操作:
解决:

13 d = 1 + 60 k 
mod 13:
0 = 1 + 8k (mod 13) 
8k = -1 (mod 13) 
Add 13's until a multiple of 8 is found: 
8k = 12 or 25 or 38 or 51 or 64 .... aha a multiple of 8! 
k = 64 / 8 = 8 
Substitute k = 8 back into 13 d = 1 + 60 k 
13 d = 1 + 8 * 60 = 481 
481 /13 = 37 

这就是答案。