我一直在通过网络书工作并点击了RSA部分。 考虑RSA算法,p = 5,q = 11.
so I get N = p*q = 55 right?
and z = (p-1) * (q -1) = 40
我认为我做对了,但这本书不太清楚如何计算。
书中的例子说e = 3但没有给出理由。因为作者喜欢它还是有其他原因?
以及如何找到d以使de = 1(mod z)且d< 160
感谢您对此的任何帮助,现在它在我之上。
答案 0 :(得分:3)
您对 n 和 z 的计算是正确的。
RSA密码系统由三个变量 n , d 和 e 组成。变量 e 是三者中最不重要的,并且通常任意选择以使计算变得简单; 3和65537是 e 的最常见选择。唯一的要求是 e 是奇数并与总数相同(在实现中 z );因此, e 经常被选择为素数,因此无论选择什么样的总数,它都将与总数共同。 3和65537经常用于 e 的原因是因为它使计算变得容易;两个数字在二进制表示中只有两个1位,因此只需要复杂循环的两次迭代。
您可以在my blog看到RSA密码系统的实现。如果你在那里逛逛,你还会发现一些你可能感兴趣的与加密相关的东西。
答案 1 :(得分:2)
您要找的是extended euclidean algorithm
例如,请参阅维基百科或here