Current computer and network security, like SSL and VPNs, can trace their origins to cipher systems developed thousands of years ago. The first ciphers are thought to come from ancient Greece and Rome, where generals and politicians wanted to communicate their plans in secret. These early ciphers rearranged letters in a message to make them more difficult to read. Modern encryption standards employ the same basic idea, but today use sophisticated mathematical algorithms to create their codes.
Most likely the first code was a transposition cipher that rearranges the order of letters in a message. This is similar to what you see in Jumble puzzles, where you have to decode the scrambled letters. A substitution cipher replaces letters with other letters. A good example is to replace each letter in a message with the next letter in the alphabet, so ‘hello’ becomes ‘ifmmp’. An early substitution cipher was the Caesar cipher, named after Julius Caesar, where each letter in the message was replaced by a letter 3 positions further down the alphabet. Caesar used this code to communicate secretly with his generals in the field.
In 1795, Thomas Jefferson developed a cipher system that was the basis for more sophisticated systems used in the 20th century. The Jefferson Wheel Cipher was improved upon by Étienne Bazeries, a French military code breaker during World War I, who named his the Bazeries Cylinder. The United States Army used a cryptography machine from 1923 until 1942 based on the Bazeries Cylinder.
Jefferson’s machine used 26 wheels that were placed next to each other on a spindle. Each wheel was stamped with the 26 letters of the Latin alphabet arranged randomly around it. Each wheel was also stamped with a number, 1 – 26. The key to this system was how the wheels were ordered around the axis. If you wanted to encode and decode a message, you needed identical machines and needed to know the order of the wheels.
The encoder turned the wheels to create a message in plain text on one row of the machine and then read another row of letters as the code. The recipient or decoder set the wheels in the correct order and spelled out the encrypted message in a single row. The decoder then looked around the machine until a message in plain text appeared in another row.
Here is a simple example. Say you are using 5 wheels and place them in the order below: 2, 5, 7, 1, 3.
You want to encode HELLO. You spin the wheels until the word HELLO appears in the first row, as shown below.
Now you pick a random offset and select the letters in that row as your code word. In this case, I’ll choose the last row and my code is OZQIT. I transmit that code word to the recipient who spins the wheels of his machine until OZQIT appears. The decoder now reads across the rows until HELLO appears. It is possible, although unlikely, to create two readable messages, but that can be checked quickly by coder.
This system is considered secure against modern code breaking, if the message is short, and the code breaker doesn’t know the order of letters and wheels. Of course as messages get longer, a decoder can use the statistics of English language letter frequency, find patterns, and break the code. This is very simple using a computer.
Modern encryption techniques, such as Advanced Encryption Standard (AES), use the same basic principles as the Jefferson Wheel Cipher. They use keys and shared information to encode and decode data. Rather than encoding letters of the alphabet, these systems encode binary numbers. Mathematical algorithms involving large prime numbers and higher orders of mathematics are the basis of modern systems. This makes encrypted messages almost impossible to crack.
The next time you type your credit card number in your browser to purchase something online, think about Thomas Jefferson. His ingenuity and invention helped create the security we use today.
Photo credit Ryan Somma