假设需要加密的明文信息为m=14,选择:e=3,p=5,q=11,试说明使用RSA算法的加密和解密过程及结果?

2024-12-03 12:59:18
推荐回答(2个)
回答1:

RSA:
1.n=p*q=5*11=55,设m=(q-1)*(p-1)=40
2.求d, ed=1 mod m. 所以d=27
3.加密:Y=m^e mod n=14^3 mod 55=49
4.解密:X=Y^d mod n=49^27 mod 55=14=m
解密得到了明文m,证明了计算是正确性。
说明:
1.算d.原理就不讲了,想知道可以看我回答过类似的问题。
比如可以使用估值法:3d=k(q-1)(p-1)+1,k=0,1,2...代入求可以整除3的k。此题k=2,很快得到d=27。
2.关于mod,49^27mod55很难计算,一定要将49分成若干次方,然后分别mod55来降低难度。当然,还可以使用有mod功能的计算器。
虽然没分,我答了,有分的话就意思一下吧。
PS.楼上的,这道题没你做的那么简单,要求d的(难点)。那道题目公钥,私钥都给了直接加密解密就行,太简单了。
还有,这只是到练习吧,用不着考虑n很小的问题。

回答2:

我写的这个浅显易懂,看看你就明白了。举得有例子。

RSA算法举例说明
http://hi.baidu.com/lsgo/blog/item/5fd0da24d495666834a80fb8.html

知道里面刚才回答了另个朋友的问题帖出来给你看看
http://zhidao.baidu.com/question/91261774.html?si=2
题目:用RSA算法加密时,已经公钥是(e=7,n=20),私钥是(e=3,n=20),用公钥对消息M=3加密,得到的密文是_____?
给出详细过程。 谢谢!
答:
你所说的:
n=20
d=7 公钥
e=3 私钥
对M=3 进行加密
M'=M^d%n (M的d次方,然后除以n取余数)
M'=3^7%20=2187%20=7 加密后等於7

对M'=7进行解密
M=M'^e%n=7^3%20=343%20=3 解密后又变成3了

你取的两个素数太小了,所以n太小根本起不了作用。至少要取1024位的数字