Python: Code Snippets - Encryption
Friday 21st July 2017 1:00pm
This code snippet will encrypt and decrypt any message.
To run this script copy the code below and save to a file called encryption.py
encryption.py
#!/usr/bin/env python # Encryption # A quick way to encrypt and decrypt using AES # and displays results in base 64 # Date: 07 March 2016 # Written By: Phantom Raspberry Blower import base64 from Crypto.Cipher import AES class Encryption(): # Initialize def __init__(self, key): # Pad with leading zeros to ensure key length = 16 self.key = key.zfill(16) self.iv = 'PRB StrikesAgain' # Encrypt message def encrypt_msg(self, msg): objAES = AES.new(self.key, AES.MODE_CFB, self.iv) cipher_txt = objAES.encrypt(msg) return base64.b64encode(cipher_txt) # Decrypt message def decrypt_msg(self, msg): objAES = AES.new(self.key, AES.MODE_CFB, self.iv) cipher_txt = base64.b64decode(msg) return objAES.decrypt(cipher_txt) # Check if running stand-alone or imported if __name__ == '__main__': from encryption import Encryption try: key = raw_input('Enter the key to encrypt: ') encryption = Encryption(key) while True: # Prompt user encryption passphrase passphrase = raw_input('Enter the passphrase to encrypt: ') if passphrase: print '' # Enctrypt the passhrase encrypt = encryption.encrypt_msg(passphrase) print 'Encrypted: %s' % encrypt # Decrypt the encrypted passphrase decrypt = encryption.decrypt_msg(encrypt) print 'Decrypted: %s' % decrypt print '' else: print "\nQuit" break except KeyboardInterrupt: print "\nQuit"
Output:
python encryption.py Enter the key to encrypt: PRB Woz Ere Enter the passphrase to encrypt: A message to you Rudy! Encrypted: y1ATFeZ3qT/EzGc8Qhb0rTd4u1+TFA== Decrypted: A message to you Rudy! Enter the passphrase to encrypt: Quit