This is a small collection of those new to machine learning, reinforcement learning, and the applications to cryptography, compiled for Professor Gasarch at UMD.
“Machine Learning is an idea to learn from examples and experience, without being explicitly programmed. Instead of writing code, you feed data to the generic algorithm, and it builds logic based on the data given.”
Check out this article for an overview of the motivations and concepts involved with machine learning.
The following videos will provide a strong mathematical foundation for machine learning. Don’t worry, the videos are very accessible.
You can watch the rest of the series here.
Reinforcement learning (RL) is one type of machine learning. The general idea is to train an agent to act within an environment.
Watch the following introduction to RL.
For a thorough introduction to reinforcement learning, read this introduction by Sutton and Barlo.
There have been many applications of machine learning to cryptography. The focus of this compilation is on cryptanalysis: decrypting and classifying ciphers. Other applications are also collected below.
Many studies have tried to use machine learning to recover the message from encrypted text. Be sure to read this introductory paper - it’s the best starting point.
Other researchers have used a variety of ML techniques to tackle many different types of ciphers.
Other researchers have tried classify encrypted messages.
Cool study where Google researchers trained agents to learn how to communicate with keys.