密鑰的「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 物件導向 gnupg_sign() 範例
<?php
$gpg = new gnupg();
$gpg->addsignkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
$signed = $gpg->sign("just a test");
echo $signed;
?>
密鑰的「keyinfo」如何返回「can_sign」有點令人困惑。
如果您只添加了您的公鑰,它會在「keyinfo」中顯示該密鑰的「can_sign」,但这並不代表您可以使用該密鑰進行簽署。您還需要添加您的私鑰才能真正進行簽署。