[英]Gnupg doesn't decrypt the file in php
我試圖用我的解密文件enrypted(其中包含多個文件zip壓縮包) Gnupg
在PHP,但它不斷地返回false。 沒有異常或錯誤消息。 這里是加密:
$gpg = gnupg_init();
gnupg_seterrormode($gpg, GNUPG_ERROR_EXCEPTION);
// public key
$publicKey = file_get_contents('pubkey.pub');
$key = gnupg_import($gpg, $publicKey);
gnupg_addencryptkey($gpg, $key['fingerprint']);
// zip file
$zip = file_get_contents('myzip.zip');
$encryptedFile = gnupg_encrypt($gpg, $zip);
//save encrypted file
file_put_contents('myzip.zip.gpg', $encryptedFile);
這是解密:
$gpg = gnupg_init();
$privateKey = file_get_contents('private.asc');
$key = gnupg_import($gpg, $privateKey);
gnupg_adddecryptkey($gpg, $key['fingerprint'], '12345');
$file = file_get_contents('myzip.zip.gpg');
$content = gnupg_decrypt($gpg, $file); // <- always returns false
我嘗試使用在線工具解密文件。 起初,我嘗試僅解密1個文本文件,然后它起作用了(它顯示了文件的內容)。 我也嘗試解密zip存檔
但是每次我嘗試用php中的gnupg_decrypt
對其解密時,它都會返回false。 我究竟做錯了什么?
問題出在gnupg
版本中。 我gpg2
,它起作用了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.