gnupg_verify

(PECL gnupg >= 0.1)

gnupg_verify验证签名文本

说明

gnupg_verify(
    资源 $identifier,
    字符串 $signed_text,
    字符串 $signature,
    字符串 &$plaintext = ?
): 数组|false

验证给定的 $signed_text 并返回有关签名的信息。

参数

identifier

来自调用 gnupg_init()gnupg 的 gnupg 标识符。

signed_text

签名文本。

signature

签名。要验证明文签名文本,请将 signature 设置为 false

plaintext

明文。如果传递此可选参数,则会用明文填充它。

返回值

成功时,此函数返回有关签名的信息。失败时,此函数返回 false

示例

示例 #1 过程式 gnupg_verify() 示例

<?php
$plaintext
= "";
$res = gnupg_init();
// 明文签名
$info = gnupg_verify($res,$signed_text,false,$plaintext);
print_r($info);
// 分离签名
$info = gnupg_verify($res,$signed_text,$signature);
print_r($info);
?>

示例 #2 面向对象 gnupg_verify() 示例

<?php
$plaintext
= "";
$gpg = new gnupg();
// 明文签名
$info = $gpg->verify($signed_text,false,$plaintext);
print_r($info);
// 分离签名
$info = $gpg->verify($signed_text,$signature);
print_r($info);
?>

添加注释

用户贡献的注释 2 个注释

kae at verens dot com
15 年前
您可以通过检查指纹来查看谁创建了签名

<?php
$res
= gnupg_init();
$info = gnupg_verify($res,$signed_text,$signature);
if(
$info !== false){
$fingerprint = $info['fingerprint'];
var_dump(gnupg_keyinfo($res, $fingerprint));
}
izumeroot at gmail dot com
2 年前
在哪里可以查看结果数组的描述?

我得到了

数组
(
[0] => 数组
(
[fingerprint] => 9BF78012F700B345827346E1EFA3026F01404358
[validity] => 4
[timestamp] => 1643100153
[status] => 0
[summary] => 3
)

)

但是“status”是什么意思?“validity”是什么?“summary”是什么?
To Top