问题描述
我正计划建立一个站点,以使用 Rsa 算法和端到端加密安全地交换消息。这里的问题:从RSA加密中我们知道,User1是否要向User2发送消息。用户1请求用户2的公钥并对消息进行加密。 用户2可以通过使用其私钥解密消息来了解消息的内容。 好吧……加密后的第一个用户将如何访问他的消息? 它以加密形式存储在数据库中。 有解决此问题的选项,但我认为这是不切实际的。 当User1创建要发送给User2的消息时,他会使用自己的公钥对其进行加密并将其保存在数据库中 然后,他使用用户2的公钥加密原始消息,并将其保存在数据库中。 您有其他替代解决方案或建议吗? thnx
解决方法
可以使用对称密码对用户1和用户2之间的消息进行加密,并使用密钥将它们共享并仅用于彼此之间的消息。密钥本身可以用用户1的公共密钥加密存储,也可以用用户2的公共密钥加密存储,这样每个用户都可以访问对称密钥来解密他们发送的消息和收到的消息。