(PHP 7 >= 7.2.0, PHP 8)
sodium_crypto_box_seal_open — 匿名公钥解密
解密使用 sodium_crypto_box_seal() 加密的邮件
ciphertext
加密的邮件
key_pair
接收者的密钥对。必须包含私钥。
成功时为明文,失败时为 false
。
示例 #1 sodium_crypto_box_seal_open() 示例
<?php
// 密文不敏感;base64_decode 可以正常使用
$sealed_b64 = "oRBXXAV4iQBrxlV4A21Bord8Yo/D8ZlrIIGNyaRCcGBfpz0map52I3xq6l+CST+1NSgQkbV+HiYyFjXWiWiaCGupGf+zl4bgWj/A9Adtem7Jt3h3emrMsLw=";
$sealed = base64_decode($sealed_b64);
// 密钥对包含加密密钥;使用计时安全的解码器
$keypair_b64 = "KZkF8wnB7bnC2aXB3lFOqCTc0Z6MllvaQb9ASVG8o2/MsewkuE4u1uaEgTzSakeiYyIW8DGj+02/L3cWIbs9bQ==";
$keypair = sodium_base642bin($keypair_b64, SODIUM_BASE64_VARIANT_ORIGINAL);
$opened = sodium_crypto_box_seal_open($sealed, $keypair);
var_dump($opened);
?>
以上示例将输出类似于
string(41) "Writing software in PHP can be a delight!"