Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python pgpy:解密文件会生成压缩文件。Can';我不知道如何解压它_Python_Pgp_Openpgp - Fatal编程技术网

Python pgpy:解密文件会生成压缩文件。Can';我不知道如何解压它

Python pgpy:解密文件会生成压缩文件。Can';我不知道如何解压它,python,pgp,openpgp,Python,Pgp,Openpgp,我正在尝试使用pgpy对带有私钥的文本文件进行解密 我可以加载文件,它似乎可以解密它,但解密后的内容仍然是一个PGP消息,并且对象已被压缩=真。解密时没有错误 是否也有要解压缩的解密标志?还是我缺少一些基本的东西 import pgpy key, _ = pgpy.PGPKey.from_file('/path/private_key_file') with key.unlock('passphrase') as ukey: file_name = 'encrypted_file.pg

我正在尝试使用pgpy对带有私钥的文本文件进行解密

我可以加载文件,它似乎可以解密它,但解密后的内容仍然是一个PGP消息,并且对象已被压缩=真。解密时没有错误

是否也有要解压缩的解密标志?还是我缺少一些基本的东西

import pgpy

key, _ = pgpy.PGPKey.from_file('/path/private_key_file')
with key.unlock('passphrase') as ukey:
    file_name = 'encrypted_file.pgp'
    # decrypt it
    enc_content=pgpy.PGPMessage.from_file(file_name)
    clr_content = key.decrypt(enc_content)
    
    # Write the content to a file
    # ...
我在解密行得到一个警告:UserWarning:消息是用这个密钥的子密钥A85C839A50F35A9A加密的。用那个解密

此时,clr_content.is_compressed=true,str(clr_content)如下所示:

'-----BEGIN PGP MESSAGE-----\n\nyP8AAOEdAnicxL3NcuPash54Oxwd0eEIv4EHGF3fG8bmwf
/PzCAIERBBgBsgpaMa\n+AQkokRskYQMkqWteol+E0d41ENHOPphet4DT5258EMSwAIgqY7PiSssct
8qVa6F\nXPmfX/6//+7f/NP/9X/8t//vP/3f699///f/9F//6d/8P//u8S/G6rfF78LfJE74\nm7H6
...
zn+3/Zud///2t+j997Uf0x940/eQbX/f6lx7656+8y/2l2k+9\n74fe/t+P/NGXPvGRr2sf+uIHHnr
tpz598PFvvf3/AYHoIHI=\n=cI/q\n-----END PGP MESSAGE-----\n'
我试着把它推过gzip,但没有成功

提前谢谢
迈克

像这样的事情应该会奏效:

clr_content = (key.decrypt(enc_content)).message
最近对此进行了大量实验,似乎解密的
PGPMessage
仍然是
PGPMessage
(回想起来很明显),要获得“清晰”内容,需要检索对象的
.message
属性