docs and examples: python howto
* Updated the decryption example code in the HOWTO and the corresponding decrypt-file.py script to gracefully handle a decryption failure. This error will always be triggered when GPGME is used to try to decrypt an old, MDC-less encrypted message or file.
This commit is contained in:
parent
28e3778ce2
commit
3a9e6a8e08
@ -14,7 +14,7 @@
|
|||||||
:CUSTOM_ID: intro
|
:CUSTOM_ID: intro
|
||||||
:END:
|
:END:
|
||||||
|
|
||||||
| Version: | 0.1.0 |
|
| Version: | 0.1.1 |
|
||||||
| Author: | Ben McGinnes <ben@gnupg.org> |
|
| Author: | Ben McGinnes <ben@gnupg.org> |
|
||||||
| Author GPG Key: | DB4724E6FA4286C92B4E55C4321E4E2373590E5D |
|
| Author GPG Key: | DB4724E6FA4286C92B4E55C4321E4E2373590E5D |
|
||||||
| Language: | Australian English, British English |
|
| Language: | Australian English, British English |
|
||||||
@ -673,10 +673,17 @@
|
|||||||
newfile = input("Enter path and filename of file to save decrypted data to: ")
|
newfile = input("Enter path and filename of file to save decrypted data to: ")
|
||||||
|
|
||||||
with open(ciphertext, "rb") as cfile:
|
with open(ciphertext, "rb") as cfile:
|
||||||
|
try:
|
||||||
plaintext, result, verify_result = gpg.Context().decrypt(cfile)
|
plaintext, result, verify_result = gpg.Context().decrypt(cfile)
|
||||||
|
except gpg.errors.GPGMEError as e:
|
||||||
|
plaintext = None
|
||||||
|
print(e)
|
||||||
|
|
||||||
|
if plaintext is not None:
|
||||||
with open(newfile, "wb") as nfile:
|
with open(newfile, "wb") as nfile:
|
||||||
nfile.write(plaintext)
|
nfile.write(plaintext)
|
||||||
|
else:
|
||||||
|
pass
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
The data available in =plaintext= in this example is the decrypted
|
The data available in =plaintext= in this example is the decrypted
|
||||||
|
@ -38,7 +38,14 @@ else:
|
|||||||
newfile = input("Enter path and filename of file to save decrypted data to: ")
|
newfile = input("Enter path and filename of file to save decrypted data to: ")
|
||||||
|
|
||||||
with open(ciphertext, "rb") as cfile:
|
with open(ciphertext, "rb") as cfile:
|
||||||
|
try:
|
||||||
plaintext, result, verify_result = gpg.Context().decrypt(cfile)
|
plaintext, result, verify_result = gpg.Context().decrypt(cfile)
|
||||||
|
except gpg.errors.GPGMEError as e:
|
||||||
|
plaintext = None
|
||||||
|
print(e)
|
||||||
|
|
||||||
|
if plaintext is not None:
|
||||||
with open(newfile, "wb") as nfile:
|
with open(newfile, "wb") as nfile:
|
||||||
nfile.write(plaintext)
|
nfile.write(plaintext)
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
Loading…
Reference in New Issue
Block a user