函数名:openssl_pkcs7_verify()
适用版本:PHP 4 >= 4.0.6, PHP 5, PHP 7
函数描述:openssl_pkcs7_verify() 函数用于验证数字签名的 PKCS#7 格式的消息。
用法: openssl_pkcs7_verify(string $filename, int $flags, string $outfilename [, array $cainfo [, string $extracerts [, string $content]]]) : mixed
参数:
返回值: 成功时,返回 TRUE。如果验证失败,返回 FALSE。如果发生错误,返回 -1。
示例:
$filename = 'signed_message.p7s';
$outfilename = 'verification_result.txt';
$flags = OPENSSL_PKCS7_DETACHED | OPENSSL_PKCS7_NOVERIFY;
if (openssl_pkcs7_verify($filename, $flags, $outfilename)) {
echo "数字签名验证成功!";
} else {
echo "数字签名验证失败!";
}
在以上示例中,我们使用 openssl_pkcs7_verify() 函数验证了一个名为 "signed_message.p7s" 的 PKCS#7 格式的消息的数字签名。我们使用 OPENSSL_PKCS7_DETACHED 和 OPENSSL_PKCS7_NOVERIFY 标志来指定验证行为。验证结果将写入 "verification_result.txt" 文件中。如果验证成功,将输出 "数字签名验证成功!",否则输出 "数字签名验证失败!"。