PHP 的 GnuPG keyinfo 函数显示空数组
PHP's GnuPG keyinfo function shows empty array
我需要使用 gnupg_decrypt
来解密正在发送给我们但无法正常工作的文件。
当我使用 gnupg_keyinfo
列出所有 public 键时,它 returns 是一个空数组。有谁知道为什么会这样吗?
我使用的代码是:
$res = gnupg_init();
$info = gnupg_keyinfo($res, '');
print_r($info);
查看上面 link 的注释,将 ''
作为模式,它应该列出所有键。
我已经使用此处提供的信息在我的服务器上设置了一个 public 密钥
http://irtfweb.ifa.hawaii.edu/~lockhart/gpg/gpg-cs.html
当我 运行 gpg --list-keys 它显示它已成功创建。
我在某处读到你必须放
putenv('GNUPGHOME=/tmp');
在页面顶部以使其正常工作,但没有引用该文件夹中的密钥,我无法找到使用上述设置的位置。
我还读到我可能没有权限访问存储密钥的文件夹,但我还是不确定它在哪里。
有人可以帮忙吗?
谢谢
为了让这项工作正常进行,我做了以下工作
chown -R {{user}} ~/.gnupg
chmod 600 ~/.gnupg/*
chmod 700 ~/.gnupg
然后使用gnupg_import
函数重新导入密钥
GnuPG 有每个用户的密钥环。您的网络服务器不会运行 root 用户(如果是,请立即更改),因此您必须分析网络服务器的用户并在该用户下导入密钥帐户(通常称为 www-data
或类似名称,您也可以将其 su
加入)。或者,import the key through a PHP script.
我需要使用 gnupg_decrypt
来解密正在发送给我们但无法正常工作的文件。
当我使用 gnupg_keyinfo
列出所有 public 键时,它 returns 是一个空数组。有谁知道为什么会这样吗?
我使用的代码是:
$res = gnupg_init();
$info = gnupg_keyinfo($res, '');
print_r($info);
查看上面 link 的注释,将 ''
作为模式,它应该列出所有键。
我已经使用此处提供的信息在我的服务器上设置了一个 public 密钥 http://irtfweb.ifa.hawaii.edu/~lockhart/gpg/gpg-cs.html
当我 运行 gpg --list-keys 它显示它已成功创建。
我在某处读到你必须放
putenv('GNUPGHOME=/tmp');
在页面顶部以使其正常工作,但没有引用该文件夹中的密钥,我无法找到使用上述设置的位置。
我还读到我可能没有权限访问存储密钥的文件夹,但我还是不确定它在哪里。
有人可以帮忙吗?
谢谢
为了让这项工作正常进行,我做了以下工作
chown -R {{user}} ~/.gnupg
chmod 600 ~/.gnupg/*
chmod 700 ~/.gnupg
然后使用gnupg_import
函数重新导入密钥
GnuPG 有每个用户的密钥环。您的网络服务器不会运行 root 用户(如果是,请立即更改),因此您必须分析网络服务器的用户并在该用户下导入密钥帐户(通常称为 www-data
或类似名称,您也可以将其 su
加入)。或者,import the key through a PHP script.