使用相同的私钥加密和解密?

Encrypt and decrypt with the same private key?

我正在研究一些加密,直到现在我都假设您需要一个 public 密钥来解密已被私钥加密的值。

直到我看到 openssl_private_encrypt()openssl_private_decrypt() 使用相同的密钥。

我在这里有点困惑。在用私钥加密后,您通常不需要 public 密钥再次解密值吗?整个asymmetric encryption不就是这个意思吗?

很难在 PHP 上下文中找到有关此类主题的可靠信息,所以我希望有人能告诉我更多关于这方面的信息。

感谢阅读。

如果您使用私钥加密某些内容,然后使用 public 密钥对其进行解密,唯一可以确定的是您就是发送者。

如果您使用 public 密钥加密某些内容,然后使用私钥对其进行解密,您确定只有接收方才能打开它。

最好的安全是当你用你的私钥和其他人的 public 密钥加密某些东西时,这样对方就可以用他的私钥和你的 public 密钥解密它。

是的:您可以使用私钥加密和解密。