计算出公钥和私钥
- 随便找两个质数p和q
1 | 假设:p=3,q=11 |
- 求出n
1 | n = p * q = 33 |
- 求欧拉函数
1 | y = (p-1)*(q-1)=20 |
- 公钥e的约束(例如:e可以取7,满足条件1和2)
- 1<e<y
- e与y互为质数
- 私钥d的约束(例如:d可以取3,满足条件1)
- (e*d)%y = 1
加密的方法
已知:e,n,m(明文),计算密文c
m的e次幂%n=c
解密的方法
已知:d,n,c(密文),计算m
c的d次幂%n=m
为什么RSA是安全的
e,n,c==>d==>y==>p,q==>则需要对n质因数分解