RSA 加解密
一算法解释
密钥计算方法
1.选择两个大素数p和q(典型值为1024位)
2.计算n=p×q和z=(p-1)×(q-1)
注: n表示欧拉函数
3.选择一个与z互质的数,令其为d
4.找到一个 e 使满足e x d= 1 (mod z)
5.公开密钥为(e,m),私有密钥为(d,m)
加密方法
1.将明文看成比特串,将明文划分成k位的块 P 即可,这里k是满足 2*k<n 的最大整数。
2.对每个数据块 P,计算 C= P^(mod n),C 即为P的密文。
加密
C=Pe(modn)
解密方法
对每个密文块 C,计算 P=C^d(mod n),P即为明文
解密:
P=cd(modn)
二 举例子
密钥计算
设需要加密的 明文信息是m=85 选择e=7 p=11 q=13
n=pq=1113=143
z=(p-1)(q-1)=1012=120
ed=1(mod z)
7d(mod 120)=1 ----------d=103
加密计算
公钥:(e,n)=(7,143)
密文:c=p^e(mod n)=123
密钥:(d,n)=(103,143)
明文:P=c^d(mod n)=85

浙公网安备 33010602011771号