查询

gnupg_decryptverify()函数—用法及示例

「 解密和验证由 GnuPG 加密的文本 」


函数名:gnupg_decryptverify()

适用版本:PHP 4 >= 4.0.4, PHP 5, PHP 7

用法:gnupg_decryptverify(string $text, string $signature, string &$plaintext)

说明:gnupg_decryptverify() 函数用于解密和验证由 GnuPG 加密的文本。它将解密给定的 $text,并使用 $signature 来验证解密后的文本的完整性和真实性。如果验证成功,解密后的文本将存储在 $plaintext 变量中。

参数:

  • $text:要解密和验证的文本。
  • $signature:用于验证解密后文本的签名。
  • $plaintext:成功解密后的文本将存储在此变量中。

返回值:成功时返回 TRUE,失败时返回 FALSE。

示例:

<?php
// 创建 GnuPG 对象
$gpg = gnupg_init();

// 导入公钥
gnupg_adddecryptkey($gpg, "YOUR_PUBLIC_KEY");

// 加密的文本和签名
$encryptedText = "ENCRYPTED_TEXT";
$signature = "SIGNATURE";

// 解密和验证文本
$plaintext = '';
if (gnupg_decryptverify($gpg, $encryptedText, $signature, $plaintext)) {
    echo "解密和验证成功!\n";
    echo "解密后的文本: " . $plaintext;
} else {
    echo "解密和验证失败!\n";
}
?>

以上示例中,我们首先使用 gnupg_init() 函数创建了一个 GnuPG 对象。然后使用 gnupg_adddecryptkey() 函数导入了我们的公钥。接下来,我们传入加密的文本和签名到 gnupg_decryptverify() 函数中进行解密和验证。如果解密和验证成功,我们将打印解密后的文本。否则,将打印解密和验证失败的消息。请确保替换示例中的 "YOUR_PUBLIC_KEY""ENCRYPTED_TEXT""SIGNATURE" 为实际的值。

补充纠错
上一个函数: gnupg_decrypt()函数
下一个函数: gnupg_clearsignkeys()函数
热门PHP函数
分享链接