gpt4 book ai didi

PHP gnupg enrypt 有效但不能解密

转载 作者:可可西里 更新时间:2023-10-31 23:27:27 25 4
gpt4 key购买 nike

我即将使用 gnupg 来加密和解密文件。奇怪的是,加密工作正常,但解密总是返回 false。

这里是一个简单的加密和解密内容的 php 脚本:

$content = 'test text';
putenv("GNUPGHOME=/PATH_TO_GPG_PATH");
$gpg = new gnupg();
$gpg->addencryptkey("FINGERPRINT");
$enc = $gpg->encrypt($content);

var_dump($enc);

$gpgD = new gnupg();
$gpgD->adddecryptkey("FINGERPRINT","PASSPHRASE");
$plain = $gpgD->decrypt($enc);
var_dump($plain);

版本

Debian 软件包

gpgv 1.4.18-7

libgpgme11:amd64 1.5.1-6

pecl

包版本状态gnupg 1.4.0 稳定版

PHP版本:PHP 7.1.11-1+0~20171027135825.10+jessie~1.gbp2e638d

有人遇到过这个问题吗?我没主意了。提前谢谢你。

最佳答案

你试过调用gnupg_geterror()吗?在 gnupg_adddecryptkey() 之后?我怀疑您的私钥实际上没有被接受。我假设它需要在 PHP 用户的 GPG key 环中?此外,在我运行的几个简短测试中,我一直在终端上收到输入密码的提示,但这可能是因为我偏执的 gpg 配置(我完全禁用了密码缓存)。

另一种捕获错误的方法是设置 gnupg_seterrormode()ERROR_EXCEPTION 或类似的,看看实际发生了什么......

关于PHP gnupg enrypt 有效但不能解密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47289876/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com