This episode is supported by NordVPN.
Start protecting your internet experience
today with a 3-year VPN plan.
Get 75% off, plus 1 month free by using the
code“SCISHOW” at NordVPN.comSCISHOW.
[ intro ]
It’s 406 BCE.
You, the commander of Sparta’s navy, have
a top-secret message for your magistrate back
home: the new strategy to defeat those dastardly
Athenians is to cut off their grain supply!
But wait…what if your messenger gets captured?
Athens might see your message and head off
your plan!
The standard Spartan solution was a scytale—a
wooden rod paired with a strip of leather.
You’d wind the leather around the rod and
write your message line by line.
When you unwound the leather, the letters
would look like a meaningless jumble to anyone
who didn’t know the width of the rod.
Of course, all you’d have to do was try
a bunch of different thicknesses until the
letters turned into words, so it wouldn’t
be an especially difficult code to crack.
Over the centuries, people have tried to do
better, coming up with more and more sophisticated
ways to encrypt, or scramble, information.
Most of these encryption methods weren’t
perfect—there was always a chance that an
attacker would manage to undo the procedure
you used to encode the information.
But with the help of computers, we now have
ways to encrypt information that are almost
impossible to crack.
That’s a very good thing, because encryption
is what protects your bank password from hackers,
keeps prying eyes out of your WhatsApp messages,
and even makes sure those Windows updates
really came from Microsoft.
The weird thing, though, is that these practically-unbreakable
codes are still based on the same building
blocks the ancient Greeks used — with just
a couple of twists.
Any coded message has two main parts: The
first component is the cipher—a scrambling
procedure like the scytale, which is meant
to mash up the message into something unrecognizable.
The second component is the key—some secret,
like the diameter of the scytale, that keeps
unauthorized people from unscrambling the
message.
In modern encryption, the process of sharing
keys can be kind of involved.
And it definitely involves way more math than
before computers were a thing.
But none of that matters unless you have a
usable cipher that can’t be cracked.
Those have only existed for a few decades,
but they’re built on the same ideas we’ve
been using for centuries.
In fact, many modern ciphers just involve
taking the two main types of classical ciphers
and applying the techniques a little differently.
One type of classical cipher is the transposition
cipher, where the key tells you how to reorder
the letters in the message.
The scytale was a simple version of that.
A more sophisticated example of a transposition
cipher is the route c ipher.
Say you wanted to encrypt a message telling
the Spartans back home to “cut off the grain
supply.”
You’d write it down in a grid of, say, 5
columns, then read off the letters in a prearranged
pattern.
That path through the grid is your key.
Transposition ciphers leave each letter intact
and swaps their positions.
The other type of classical cipher, the substitution
cipher, does the opposite: it leaves each
letter in position, but replaces it with something
else.
The best-known example is the Caesar cipher,
named after Julius Caesar, who was quite the
cryptography enthusiast.
He liked to send secret military messages
by sliding every letter down three places
in the alphabet.
So A became D, B became E, and so on down
the line until Z wrapped around to C.
Here’s what our message looks like encrypted
with Caesar’s method.
Of course, a Caesar cipher doesn’t have
to stick to shifting by three.
The key that tells you how far to rotate the
alphabet can be anything from 1 to 25.
And why stop there?
Forget Caesar ciphers; you could make the
key to a substitution cipher any of the over
400 septillion ways you can rearrange the
alphabet.
Substitution and transposition are fine for
passing notes in class, but they have some
pretty serious security flaws.
A transposition cipher is just a giant anagram.
And anagrams aren’t that hard to crack.
Substitution ciphers, meanwhile, leave all
the structure of the original text.
So for example, if an enemy intercepts the
message and sees that ‘x’ is the most
common letter, it’s a safe bet that it corresponds
to ‘e’.
And then maybe they’ll notice “IRX”
all over the place and guess that it spells
“the,” and so on with other letters and
words.
With some statistics and good guessing—what
cryptographers call frequency analysis—it’s
easy to work out the key.
You can make frequency analysis harder by
systematically re-scrambling the alphabet
after every letter.
A classic cipher called the Vigenère cipher
works that way, as did the famous Enigma machines
used by the Germans in World War II.
But even then, some patterns still leak through.
In particular, if you know a specific word
will show up a lot—“Führer,” for example—and
you know the rules for re-scrambling the alphabet,
you can guess which chunks of encrypted text
might correspond to that word.
That’s how the computer scientist Alan Turing
and his colleagues were eventually able to
crack the Enigma.
So, both transposition and substitution have
some pretty big weaknesses.
But even today, these two techniques do most
of the work!
You just need to fix their flaws.
In 1949, a computer science pioneer named
Claude Shannon suggested a simple solution:
alternate between applying substitution and
transposition to the same message.
One version of Shannon’s idea had actually
been used earlier, during World War I, when
the Germans developed a cipher called ADFGVX.
But it was still crackable.
To encode a message, you’d first print a
jumbled alphabet into a 6-by-6 square with
the letters ADFGVX along the sides.
That would be the key, which would tell you
how to translate each character in the message
to a corresponding two-letter code.
So the ‘C’ in “cut” would become FG,
‘u’ would be XX, and so on.
Once you used that first key to code the letters,
you’d write the coded letters into another
grid.
Across the tops of the columns you’d write
letters that you’ll use for a second key.
This would be the transposition part of the
cipher, where you rearrange the letters in
the message.
To actually rearrange them, you’d switch
the order of the columns so the key you wrote
on top is in alphabetical order.
Then you’d read off columns vertically,
and that’s your encrypted message.
The French managed to crack ADFGVX shortly
after the Germans introduced it, but only
because it didn’t take the combination idea
far enough.
Shannon realized that if you keep alternating
between transposition and substitution, each
fixes the weaknesses of the other.
With transposition alone, you can crack the
code by anagramming.
But when you add substitutions, characters
in the original are changed in unpredictable
ways.
With substitution, on the other hand, you
can break the encryption by analyzing the
structure of the text, like by looking for
common words and letter combinations.
But when you add transposition, any repetitions
or groupings get spread out all over.
If you alternate between them, applying both
strategies multiple times, every bit of the
encrypted text depends in a very complex way
on the entire key and the entire original
message.
Much of modern cryptography is built on Shannon’s
alternating ciphers, although computers allow
for more fiddly transformations and bigger
keys.
The first widespread digital cipher was the
Data Encryption Standard, which was commissioned
in 1976 by what’s now the U.S. National
Institute of Standards and Technology, or
NIST.
These days there are tons of different options,
but most, including that original Data Encryption
Standard, follow a similar procedure.
For example, many are based on a process called
a substitution-permutation network.
The idea is to alternate between two ways
to scramble the data:
First, there’s the substitution box, which
replaces short sequences of bits, or zeros
and ones, with different sets of zeros and
ones.
--
It’s like how the ADFGVX cipher replaced
letters of the alphabet with other letters,
except using sets of zeros and ones instead.
Then there’s the permutation box, which
swaps around the positions of the bits.
That’s the transposition part.
Then you repeat both steps over and over and
over.
Without the key, the result is practically
indistinguishable from random garbage.
But this method does have one big limitation:
the boxes you use for each encoding step are
small, fixed-size tables, so they can only
operate on small, fixed-size blocks of data.
Ciphers like this are called block ciphers.
Problem is, sometimes you need to encrypt
more than a few bits at a time.
Like, what if your bank statement stretches
on for pages?
It might seem like you could just encrypt
each smaller chunk of data separately—but
that’s a big no-no.
Just look at what happens to Tux, the friendly
penguin who personifies the type of operating
system called Linux, if you encrypt him block
by block.
Each block turns into something random-looking.
But identical blocks get encrypted the same
way, so the structure shows through.
A few years after that original data encryption
standard came out, NIST came to the rescue
with new ways to extend block ciphers for
messages of any length.
These techniques mix information from all
previous blocks into each new block.
That way information spreads out across the
whole encrypted message and the structure
doesn’t stick out anymore.
Another way to encrypt big messages is what’s
known as a stream cipher.
It builds on the idea of the substitution
cipher, but it doesn’t directly combine
older methods the way block ciphers do.
Instead, a stream cipher makes the encrypted
text look random by mixing every bit with
another, randomly generated zero or one.
Of course, to decrypt a message where you’re
mixing in a totally random bit every single
time, you’d need that whole list of random
zeros and ones.
That’s a key as big as your message!
So instead, stream ciphers use math to generate
a long sequence of random-looking bits based
on a shorter secret key.
Of course, even with the best ciphers, there’s
still a major challenge: when you share the
key with the person you’re sending the message,
you need to make sure it’s not intercepted.
That’s another problem modern cryptography
has been able to solve, although in this case
the techniques we use are very different from
how keys were exchanged before computers became
a thing.
So we’ll leave that story for another episode.
But none of that other stuff would matter
without fast and secure ways of encoding information.
Everything we do with computers today would
be so much harder.
So let’s just thank all the cryptographers
from ancient Greece to today for allowing
us to safely order our favorite snacks online.
And speaking of cryptographers and encryption,
thanks to NordVPN for supporting SciShow.
Right now, NordVPN is offering SciShow viewers
a 3-year Virtual Private Network plan for
75% off, plus 1 month free.
When you’re ordering your favorite snacks
online, or sharing this episode of SciShow
with your ancient Spartan friends, you want
to make sure your information is secure.
With a Virtual Private Network from NordVPN
your information is encrypted and sent via
one of their super fast servers, so you know
it’s safe.
NordVPN has over 5100 secure servers in 62
countries and they’re always adding more.
You’ll also never be slowed down with their
unlimited bandwidth and 247 customer support.
Head to NordVPN.comSciShow and use the code
“SciShow” to get your 3-year plan for
75% off, plus 1 month free.
