rsa 算法小结

相传 RSA 是一个爆简单但是爆难破解的算法:

算法如下:


找两素数p和q
取n=p*q
取t=(p-1)*(q-1)
取任何一个数e,要求满足e<t并且e与t互素(就是最大公因数为1)
取d*e%t==1

这样最终得到三个数: n   d   e

设消息为数M (M <n)
设c=(M**d)%n就得到了加密后的消息c
设m=(c**e)%n则 m == M,从而完成对c的解密。
注:**表示次方,上面两式中的d和e可以互换。

3

实践:

两个数 7 和 11 分别是 p, q

根据算法求得 n = 77, t=60

取一个 e = 17

取一个 d = 53    (d 由程序穷举出来)

现在需要加密的数字 m = 5

加密后的消息 c = 59

解密后消息  m = 5

posted @ 2013-02-22 14:59  run-forever  阅读(254)  评论(0编辑  收藏  举报