This week I've been slowly working at going through the course material at Free Code Camp. Currently, I've been taking some time every day to watch a little of the CISSP course video they have published on Youtube. The CISSP (Certified Information Systems Security Professional) is a certificate that is a highly regarded infosec certificate that covers topics ranging from asset security to security software deployment. The free resources provided by Free Code Camp have been excellent so far, and I highly recommend them to any wishing to study for the CISSP.
PGPy is a library for python that enables the creation, storage, and encryption/decryption of PGP keys and files in python. Recently, in a small project to reacquaint myself with python, I used PGPy for key generation and encryption and decryption. That project can be found in my github at https://github.com/lpowell . The goal of the project was to use command-line switches to control the program, and to provide basic encryption and decryption capabilities, along with rot13 and base64 encoding. First, to load in a key use key, _ = pgpy.PGPKey.from_file(keyfilename) . This loads the key from either a binary or ASCII armored file. You can swap out .from_file for .from_blob , if you plan on using a key stored in a string or bytes object rather than a file. In my example code, I pull the key from a file, as I found it to be the simpler method. Next, you'll need to open a file or create a string or bytes object that contains the message you wish to encrypt. We'll call this file