在pgpy中解密失败,返回“ValueError:预期:ASCIIarmored PGP data”

2024-05-18 15:21:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个OpenPGP加密的文件,它的私钥在一个文本文件中,并且知道它的密码短语。在

我尝试了以下代码:

import pgpy

emsg = pgpy.PGPMessage.from_file('PGPEcrypted.txt')
key,_  = pgpy.PGPKey.from_file('PrivateKey.txt')
with key.unlock('passcode!'):
    print (key.decrypt(emsg).message)

但在尝试执行时,我遇到了以下错误:

^{pr2}$

如何用python解密文件?在


Tags: 文件key代码fromimporttxt密码file
1条回答
网友
1楼 · 发布于 2024-05-18 15:21:11

OpenPGP知道两种消息格式:二进制编码(更节省空间)和base64-like-ASCII-armoring(更好地兼容旧的互联网协议)。pgpy.from_file只加载ASCII铠装消息。如果有二进制格式的消息,请改用pgpy.from_blob。从^{} documentation

Loading Existing Messages

Existing messages can also be loaded very simply. This is nearly identical to loading keys, except that it only returns the new message object, instead of a tuple:

# PGPMessage will automatically determine if this is a cleartext message or not
message_from_file = pgpy.PGPMessage.from_file("path/to/a/message")
message_from_blob = pgpy.PGPMessage.from_blob(msg_blob)

相关问题 更多 >

    热门问题