Требование: Чтобы расшифровать файл до квитанций с помощью PGPy
Ключ Сгенерирован ключ с кодом ниже
import gnupg
from pprint import pprint
gpg = gnupg.GPG()
# generate key
input_data = gpg.gen_key_input(name_email='email@gmail.com',passphrase='passphrase',)
key = gpg.gen_key(input_data)
# create ascii-readable versions of pub / private keys
ascii_armored_public_keys = gpg.export_keys(key.fingerprint)
ascii_armored_private_keys = gpg.export_keys(
keyids=key.fingerprint,
secret=True,
passphrase='passphrase',
)
# export
with open('mykeyfile.asc', 'w') as f:
f.write(ascii_armored_public_keys)
f.write(ascii_armored_private_keys)
Ошибка pgpy.errors.PGPError: Ожидается: is_publi c == False. Получено: Верно
Код
def decrypt_file():
encrypted_file_obj = ''
with open('/path/encrypted_cleartext.txt', 'r') as readfile:
encrypted_file_obj = readfile.read()
encrypted_message = pgpy.PGPMessage.from_blob(bytes(encrypted_file_obj, encoding='utf-8'))
private_key, _ = pgpy.PGPKey.from_file('mykeyfile.asc')
decrypted_message = private_key.decrypt(encrypted_message).message