当前位置:Gxlcms > PHP教程 > 调试Crypt_GPG的过程

调试Crypt_GPG的过程

时间:2021-07-01 10:21:17 帮助过:13人阅读

在浏览器端的错误输出信息:

( ! ) Fatal error: Uncaught <tablestyle="border: 1px"cellspacing="0"><tr><tdcolspan="3"style="background: #ff9999"><b>Crypt_GPG_FileExceptionb>: The 'homedir' "/Library/WebServer/.gnupg" is not readable or does not exist and cannot be created. This can happen if 'homedir' is not specified in the Crypt_GPG options, Crypt_GPG is run as the web user, and the web user has no home directory. in <b>/usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.phpb> on line <b>278b>td>tr><tr><tdcolspan="3"style="background-color: #aaaaaa; text-align: center; font-weight: bold;">Exception tracetd>tr><tr><tdstyle="text-align: center; background: #cccccc; width:20px; font-weight: bold;">#td><tdstyle="text-align: center; background: #cccccc; font-weight: bold;">Functiontd><tdstyle="text-align: center; background: #cccccc; font-weight: bold;">Locationtd>tr><tr><tdstyle="text-align: center;">0td><td>Crypt_GPG_Engine->__construct(Array)td><td>/usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php in /usr/local/webdata/andy/fanli/citic/Crypt/GPG/Engine.php on line 541

命令行输出的错误信息:

PHP Fatal error:  Uncaught PEAR_Exception: gpg-agent binary not found.If you are sure the gpg-agent is installed, please specify the location of the gpg-agent binary using the 'agent' driver option.in /usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php on line 278#0 /usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php(278): Crypt_GPG_Engine->__construct(Array)
#1 /usr/local/webdata/andy/fanli/citic/gpg2.php(9): Crypt_GPGAbstract->__construct()
#2 {main}
  thrown in /usr/local/webdata/andy/fanli/citic/Crypt/GPG/Engine.php on line 601Fatal error: Uncaught PEAR_Exception: gpg-agent binary not found.If you are sure the gpg-agent is installed, please specify the location of the gpg-agent binary using the 'agent' driver option.in /usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php on line 278#0 /usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php(278): Crypt_GPG_Engine->__construct(Array)
#1 /usr/local/webdata/andy/fanli/citic/gpg2.php(9): Crypt_GPGAbstract->__construct()
#2 {main}
  thrown in /usr/local/webdata/andy/fanli/citic/Crypt/GPG/Engine.php on line 601

第一个browser中报的错我分析是权限问题,第二个在shell中运行才是其真正的问题所在,根据提示,使用brew安装gpg-agent。

之后我编写代码如下:

require_once'./Crypt/GPG.php';

$gpg = new Crypt_GPG();
$key = getKey();
$gpg->addDecryptKey('zhangsanfeng','123456');
$encrypted = file_get_contents('wait_for_decrpyt.txt.gpg');
$data = $gpg->decrypt($encrypted);
echo'
';var_dump($data);exit;

终于解密成功!!!

版权声明:本文为博主原创文章,未经博主允许不得转载。

以上就介绍了调试Crypt_GPG的过程,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

人气教程排行