密钥的“keyinfo”如何返回“can_sign”有点令人困惑。
如果您只添加了您的公钥,它将在“keyinfo”中为密钥指示“can_sign”,但这并不意味着您现在就可以使用该密钥进行签名。您还需要添加您的私钥才能使签名真正生效。
(PECL gnupg >= 0.1)
gnupg_sign — 对给定的文本进行签名
使用之前使用 gnupg_addsignkey 设置的密钥对给定的 $plaintext
进行签名,并返回已签名的文本或签名,具体取决于使用 gnupg_setsignmode 设置的内容。
成功时,此函数返回已签名的文本或签名。失败时,此函数返回 false
。
示例 #1 过程式 gnupg_sign() 示例
<?php
$res = gnupg_init();
gnupg_addsignkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
$signed = gnupg_sign($res, "just a test");
echo $signed;
?>
示例 #2 OO gnupg_sign() 示例
<?php
$gpg = new gnupg();
$gpg->addsignkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
$signed = $gpg->sign("just a test");
echo $signed;
?>
密钥的“keyinfo”如何返回“can_sign”有点令人困惑。
如果您只添加了您的公钥,它将在“keyinfo”中为密钥指示“can_sign”,但这并不意味着您现在就可以使用该密钥进行签名。您还需要添加您的私钥才能使签名真正生效。