Php-gpg不适用于电子邮件加密

时间:2015-02-12 20:40:15

标签: php email encryption pgp

我正在使用github php-gpg库来加密表单中的HIPAA数据,以便发送到具有密钥环的电子邮件客户端。

在Thunderbird中我收到一条失败消息:" gpg:解密失败:没有密钥。"但是,看起来Thunderbird可以识别该块的公钥。

我已经测试了密钥,如果我使用Enigmail加密或Claws-Mail直接发送,它会顺利运行。我可以使用Enigmail创建的PGP消息,将其添加到我的PHP邮件中,它将正确解密,因此它不是标题或纯文本问题。

我没有选择直接在服务器上安装,或者我会使用其他PHP加密选项,如 GnuPG (尚未存在)。 PEAR的本地安装,所以我可以尝试 phpseclib 也没有成功。

有没有人对这个github php-gpg库有任何经验并让它有效?如果是这样,我正在使用我知道可行的密钥。请让我知道要用这个来寻找什么 - 因为在我的故障排除中,它一直下到使用似乎未能解密的库加密的块。

我目前的代码:

require_once 'libs/GPG.php';
$gpg = new GPG();
$key = "//public key block is here...";
$pub_key = new GPG_Public_Key($key);
$plain_text = "text to encrypt";
$encrypted = $gpg->encrypt($pub_key,$plain_text);
...
mail($to, $subject, $encrypted, $headers); 

0 个答案:

没有答案