def encrypt_object(obj, secret): iv = random_bytes(16) encrypter = AES.new(bytearray(secret, encoding='utf-8'), AES.MODE_CBC, iv) return ( iv + codecs.encode(encrypter.encrypt(pad(pickle.dumps(safe_pickle(obj)))), 'base64')).decode()
def encrypt_phrase(phrase, secret): iv = random_bytes(16) encrypter = AES.new(bytearray(secret, encoding='utf-8'), AES.MODE_CBC, iv) if PY2: if isinstance(phrase, unicode): phrase = phrase.encode('utf-8') else: if isinstance(phrase, text_type): phrase = bytearray(phrase, 'utf-8') return (iv + codecs.encode(encrypter.encrypt(pad(phrase)), 'base64')).decode('utf-8')
def encrypt_dictionary(the_dict, secret): iv = random_bytes(16) encrypter = AES.new(bytearray(secret, encoding='utf-8'), AES.MODE_CBC, iv) return (iv + codecs.encode( encrypter.encrypt(pad(pickle.dumps(pickleable_objects(the_dict)))), 'base64')).decode()