因为要考试,学习了一下RSA的加密解密过程,题都是网友出的.答案是自己算的.最下面有公式和解题思路,希望能帮助到有需要的人
n模数
φ(n)或者phi(n)欧拉函数小于n的数
加密过程:
c=m^e mod n
解密过程:
m=c^d mod n
求私钥d的算法:
e*d≡1 mod φ(n) 或 d=e*d mod φ(n)=1
1.假设需要加密的明文信息为m=85,选择:e=7,p=11,q=13,说明使用RSA算法的加密和解密
n=p*q=11*13=143
φ(n)=(p-1)*(q-1)=(11-1)*(13-1)=120
根据e*d≡1 mod φ(n)
又7*d mod 120=1
得出d=103
公钥为(n,e)=(143,7)
加密公式为c=m^e mod n
根据公钥加密明文m计算得出C=85^7 mod 143=123
私钥为(n,d)=(143,103)
解密公式为m=c^d mod n
根据私钥解密C计算得出m=123^103 mod 143=85
2. 假设需要加密的明文信息为m=14,选择:e=3,p=5,q=11,试说明使用RSA算法的加密和解密过程及结果?
n=p*q=55
φ(n)=(p-1)*(q-1)=4*10=40
根据e*d≡1 mod φ(n)
又3*d mod 40=1
得出d=27
公钥(n,e)=(55,3)
得到密文c=m^e mod 55=14^3 mod 55=49
私钥(n,d)=(55,27)
得到明文m=c^d mod 55=49^27 mod 55=14
3.RSA算法:p=43,q=59,加密指数e=13,对明文M=134 879 475 204,计算用RSA加密得到的密文。要详细过程!
n=p*q=43*59=2537
公钥(n,e)=(2537,13)
得到密文C=M^e mod n=1202
4.已知RSA算法中,素数p=5,q=7,模数n=35,公开密钥e=5,密文c=10,求明文
φ(n)=(5-1)*(7-1)=24
e*d mod φ(n)=1
5*d mod 24=1
d=5
明文m=c^d mod 35=10^5 mod 35=5
5.对于RSA算法,设截获e=5,n=35的用户密文C=10,请问明文M是多少?
n=5*7=35
φ(n)=4*6=24
根据e*d≡1 mod φ(n)=1
又5*d mod 24=1
d=5
M=c^d mod 35=10^5 mod 35=5
明文M=5
6. 在RSA算法中,选者两个质数P=17 Q=11,加速密钥为E=7,计算密钥D
n=p*q=17*11=187
φ(n)=(17-1)*(11-1)=160
根据e*d≡1 mod φ(n)=1
又7*d mod 160=1
密钥d=23
7.RSA算法中,素数p=7,q=11,加密密钥e=7,计算解密密钥d
n=7*11=77
φ(n)=(7-1)*(11-1)=60
根据e*d≡1 mod φ(n)
又7*d mod 60=1
d=43
8.用RSA算法加密时,已经公钥是(e=7,n=20),私钥是(e=3,n=20),
用公钥对消息M=3加密,得到的密文是_____?
根据C=m^e mod n=3^7 mod 20=7
得到密文C=7
固定公式
n=p*q
φ(n)=(p-1)*(q-1)
d=e*d mod φ(n)=1 可以假设φ(n)是20,我们可以理解为(i*20+1)/e,i从1开始累加直到整除,得到的结果就是d
公钥(e,n)
私钥(d,n)
明文m
密文C=m^e mod n
解密m=c^d mod n
根据已知参数套用公式就可以完全应付所有题型.
网友评论