[R] Deep Learning for Cryptanalysis
I had a paper at CRYPTO 2019 on cryptanalysis using neural networks that I thought I might share here, since there has previously been some interest in cross-domain work between cryptology and machine learning on this subreddit (e.g. CipherGAN, Learning the Enigma with Recurrent Neural Networks):
Paper (eprint version): https://ia.cr/2019/037
tl;dr: Using neural networks to distinguish cipher output from random data together with an efficient search policy, we achieve a 200-fold speedup over the best previously published key recovery attack against a round-reduced (i.e. weakened) version of a modern block cipher. This is the first example of state of the art block cipher cryptanalysis using deep learning. The trained deep learning models are also compared to very strong distinguishers using traditional techniques and some partial insight into the source of the additional signal picked up by the DL model is provided.