Taxonomy Icon

Artificial Intelligence

Adversarial Cryptography

Get this model


This model enables adversarial training to learn trivial encryption functions. The model is based on the TensorFlow implementation and the 2016 paper “Learning to Protect Communications with Adversarial Neural Cryptography” by Abadi and Andersen.

This model creates and trains three neural networks, termed Alice, Bob, and Eve. Alice takes inputs in_m (message), in_k (key) and outputs the ciphertext as a string. Bob takes inputs in_k, ciphertext and tries to reconstruct the message. Eve is an adversarial network that takes the ciphertext as its input and also tries to reconstruct the message. The main function attempts to train these networks and then evaluates them, all on random plaintext and key values.

Model Metadata

Domain Application Industry Framework Training Data Input Data Format
Security Cryptography General TensorFlow Randomly generated text Text



Component License Link
Model GitHub Repository Apache 2.0 LICENSE
Model Code (3rd party) Apache 2.0 TensorFlow Models

Options available for training this model