我在项目中使用了非对称加密,使用"公钥"来"加密"消息,"私钥"来"解密"消息。 我们是否曾经使用"私钥"来"加密"消息并使用"公钥"来"解密"。如果是这样,有人能给我一个这样的用例吗?这种加密方式也称为"非对称加密"
就“加密”一词所指涉的“消息本身”而言,答案是否定的。因为这样的加密是完全无用的。既然公钥应该是公开的,每个人都可以使用它来解密。因此,使用私钥进行加密不能提供机密性。另一方面,签名是唯一的用例,正如其他人已经提到的那样。它不会将加密应用于实际有效负载(消息)。它使用不同的“填充方案”加密了消息上的密码散列值(仅从同一消息中可再现)。这样,您可以确保拥有私钥的实际方签署了消息。
我不确定你所问的是否称为非对称,而是RSA公钥/私钥加密。是的,你可以使用两个密钥进行加密和解密,但有两个独立的问题。保密性 - 使用公钥加密,只有私钥才能解密。被加密的消息是安全的。身份验证 - 使用私钥加密,任何拥有公钥的人都可以解密。虽然不能提供保密性,但如果公钥成功解密,你可以确信我是谁,因为如果有人篡改了消息,公钥将无法解密它。