Resources for the global digital safety training community.
Simple “Replacement” codes, (changing A to M, B to N, C to O and so on) like Caesar ciphers are easily broken, even if you make them more complex by using letters instead of numbers. Still, they were famously used by Julius Caesar to obfuscate his correspondence – but nowadays appear as games in newspapers and magazines to be solved by anyone.
Obviously, we will need something a bit more powerful for modern secure communication!
Symmetric encryption filled this gap by itself for decades. It is very powerful, and widely used even today – but by itself, it has some serious limitations.
One version of this is what is referred to as a “One Time Pad” (OTP) - which, if done to very exacting standards, is still considered “unbreakable”. https://en.wikipedia.org/wiki/One-time_pad
Unfortunately those exacting standards are all but impossible to do in practice, and certainly at any scale. An OTP is effectively a long string of completely, truly random characters, which you “add” to the characters of your own message, to create what looks like gibberish. The recipient has to use the exact same pad (and know exactly where to start using it) to decrypt it, and the pad of random characters has to be at least as long as the message.
This becomes a bit of a chicken-and-egg problem, as to send a message using OTP, you first have to send the OTP content itself in an absolutely secure way.
The rest of symmetric key encryption - which just means a type of encryption where both the sender and receiver must have some sort of shared secret before they can encrypt, shares many of these same challenges – how to get those first secret keys shared, and what to do if you need to replace them?
Brainstorm with participants some features of an encoding systems - what protections it provides, how usable it is, and so on. Some key points to pull out of this brainstorm:
Asymmetric encryption takes advantage of some quirks in math to be able to get beyond the limits of otherwise-powerful One Time Pads and similar symmetric encryption tools - they allow you to share, absolutely publicly, a piece of information that enables people to create messages that only the person with a mathematically corresponding piece of information can read. We will actually work through the math behind this in the next portion, but at it’s root it exploits the hard fact that multiplication is a lot easier, from a computational standpoint, than division is.