rsa 加密算法中,如果客户端的公钥泄漏了,是否有安全危险

RSA中公钥被被第三方知道后,第三方用公钥加密发送数据; 例如: A要给B写信: 1.B给A发送公钥 2.A拿到公钥加密信内容,发送内容给B 3.B拿到A的信后用私钥解密。 那么问题来了: 问题一:在B给A公钥时,被第三方C知道了,那么C是不是也可以给B写信了

阅读 18.3k
6 个回答

公钥本身就是公开的,任何人都可以知道的。公钥加密的密文只有私钥能解密,即使加密的一方,也无法使用公钥解开密文,所以谁拿到公钥都不能解密。
如果你想说的是认证的问题,即C可以假扮B给A写信,这个就涉及到认证的问题了。

公钥,顾名思义,就是不怕给别人看的

把数据加密和身份验证混淆了。
C拿到的公钥,只是用来数据加密而已。
C要能够把数据成功发送给B,还得过了B身份认证的那一关。
B对C的身份认证,跟B的公钥可是没关系的哦。

新手上路,请多包涵

虽然rsa的安全性较其他的更高,但是我觉得公钥要是泄露了,用户还是可以使用此公钥模拟代码中的逻辑做事情的,就是你描写的情形C确实可以使用该公钥向服务器写信了。这类问题【不管是对称非对称只要泄露了key或是公钥,私钥就别说了私钥可以推导出公钥】我觉得是无解的。很多事情就能模拟了。

新手上路,请多包涵

用上签名、验签就解决了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题