def triple_encrypt_ascii(text_to_encrypt): f = FeistelCipher() key = "stiansandvestiansandv" cipher = f.triple_encrypt(text_to_encrypt, key) decrypted = f.triple_decrypt(cipher.to01(), key) decrypted_text = decrypted.tobytes() decrypted_text = decrypted_text.replace("\x00", "") return decrypted_text
def main(): feistel = FeistelCipher() while True: encrypt = raw_input('\nChoose method:\n1. Encrypt\n2. ' 'Decrypt\n3. Exit\n') if encrypt == '3': break text = raw_input('Enter plaintext or ciphertext: ') key = raw_input('Enter 168 bit key (21 characters): ') if encrypt == '1': result = feistel.triple_encrypt(text, key) print 'encrypting ...\n\n' elif encrypt == '2': result = feistel.triple_decrypt(text, key) print 'decrypting ...\n\n' print ('Binary: ' + result.to01()) print ('UTF-8: ' + result.tobytes())