RSA的公钥和私钥到底哪个才是用来加密和哪个用来解密?
关注者
1,727被浏览
1,401,938登录后你可以
不限量看优质回答私信答主深度交流精彩内容一键收藏
RSA 加密方案和 RSA 签名方案是不同的,具体的不同点在 @刘巍然-学酥 的回答里讲得很清楚。我在这里主要是想谈一下加密方案里的情况。
在 RSA 加密方案中,选定了 p,q 计算出 N=pq ,再在小于 \phi(N) 的正整数中选一个和它互素的 e 作为公钥,它模 \phi(N) 的乘法逆元 d 则为私钥。公开 e ,保留 d 。
结论:公钥 e 用来加密,私钥 d 用来解密。
想要反驳的是这个说法
私钥加密公钥可以解密
公钥加密私钥可以解密
两个大质数(p,q)乘积(n)难以逆向求解,所以pq是对等的,公钥和私钥也是对等的。
匿名用户:RSA的公钥和私钥到底哪个才是用来加密和哪个用来解密?
这样说的话就有三种情形。我们一一分析:
一、公钥和私钥都保密
也就是说,Alice 和 Bob 同时分享一组密钥 (N,e,d) ,然后约定 e 或 d 为加密密钥,另一个为解密密钥。这样做固然是可以的,但违背了公钥加密方案的初衷。公钥加密的设计就是为了公开加密密钥,让所有人都可以给某个人发送消息。
这种场景完全应该使用对称加密算法,加解密的效率和安全性都更高。