我想知道一些事情
答案 0 :(得分:1)
openssl_public_encrypt()
使用公钥加密消息,以便只有相应的私钥才能对其进行解密。这用于保护信息不被不应该看到的人看到。
openssl_private_encrypt()
使用私钥对邮件进行加密,以便具有相应公钥的任何人都可以对其进行解密。这 not 用于保护信息免受不必要的眼睛的伤害,它用于制作数字签名以帮助验证数据是否未被修改。你通常不应该使用这个功能;请改用openssl_sign()
和openssl_verify()
。
加密和签名通常一起使用:您获取数据,使用您自己的私钥对其进行签名(使用openssl_sign()
),然后使用收件人的公钥对其进行加密(使用openssl_public_encrypt()
)。将签名和加密邮件都发送给收件人,收件人可以使用其私钥解密邮件(使用openssl_private_decrypt()
),并使用您的公钥验证签名(使用openssl_verify()
)。这样可以确保在传输过程中没有人能够读取或篡改消息,这可能就是“网络安全”的含义。
至于在网站之间传输数据,您可以以任何方式执行此操作。 HTTP,FTP,电子邮件,API调用,等等。加密和签名的重点是您不必使用任何特殊方法安全地传输邮件。