Unsupervised Cipher Cracking Using Discrete GANs
Aidan N. Gomez, Sicong Huang, Ivan Zhang, Bryan M. Li, Muhammad Osama,, Lukasz Kaiser

TL;DR
This paper introduces CipherGAN, a novel unsupervised GAN-based architecture capable of cracking classical ciphers like shift and Vigenere on large vocabularies, by adapting CycleGAN for discrete data.
Contribution
CipherGAN is the first GAN-based method to effectively crack classical ciphers on large vocabularies using unpaired data, with stable training and discrete data compatibility.
Findings
Successfully cracks shift and Vigenere ciphers with high fidelity
Handles vocabularies larger than previous methods
Avoids uninformative discrimination in GAN training
Abstract
This work details CipherGAN, an architecture inspired by CycleGAN used for inferring the underlying cipher mapping given banks of unpaired ciphertext and plaintext. We demonstrate that CipherGAN is capable of cracking language data enciphered using shift and Vigenere ciphers to a high degree of fidelity and for vocabularies much larger than previously achieved. We present how CycleGAN can be made compatible with discrete data and train in a stable way. We then prove that the technique used in CipherGAN avoids the common problem of uninformative discrimination associated with GANs applied to discrete data.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Malware Detection Techniques · Adversarial Robustness in Machine Learning · Network Packet Processing and Optimization
MethodsBatch Normalization · Residual Connection · PatchGAN · *Communicated@Fast*How Do I Communicate to Expedia? · Tanh Activation · Residual Block · Instance Normalization · Convolution · HuMan(Expedia)||How do I get a human at Expedia? · Sigmoid Activation
