I love codes and ciphers, spending an inordinate amount of time solving them for fun.
I am fascinated that we depend upon codes and ciphers for many things that we do every day, yet they are understood by almost nobody. They are ubiquitous but unknown, like most modern technology.
First, codes and ciphers are not the same thing.
A code is a message that is scrambled by devising equivalents of each word in a message and substituting another word in its place. For instance, the message ATTACK AT DAWN might be sent as AUTOMOBILE GREEN SNOWSTORM. Without the code book that gives you the translation, it would be difficult, but not impossible, to understand the message.
Of course, there are many variations of this technique that render codes harder to understand. However, this way of communicating has one great weakness – the code book. To use a code, you must distribute a copy of the code book to anyone with whom may wish to communicate.
This can be a massive task if you have hundreds of people to whom you need to send messages. At every stage, there is the possibility of the code book being copied or stolen. Once that happens, all of your messages are, literally, an “open book” to your enemy.
Once a code book is compromised, you must create and distribute copies to your entire network. Worse, if your code book is copied, you may never know it was stolen.
While codes are still used to hide school romances and other such secrets, they are not often used in modern communications.
Ciphers, on the other hand, work in a completely different way. To encipher a message, you take each letter of the message, and you substitute it with another letter. Of course, this is done with a pattern.
One of the earliest ciphers was the so-called Caesar Substitution. Each letter in the alphabet is replaced with the letter three letters higher in the alphabet. So, to encode the letter A, you substitute it with the letter D, the third letter higher. When you come to X, Y, and Z, you go back to the beginning of the alphabet.
Caesar substitution ciphers are trivial to break. However, modern ciphers are based on mathematical manipulations that are complex and the same letter is not always coded the same way. A might be a Z one time and a P the next.
Depending on the length of the key used and the complexity of the algorithm to generate and decode the messages, it could take millions of years to brute force a message by trying every possible key.
Modern ciphers are designed this way and the most modern ones are virtually invulnerable to cracking with our current technology. They are used to secure web communications as well as the myriad banking communications. Every time you log into your bank through the Internet, you are using encryption.
Our world would grind to a halt if we could not use this technology. Interestingly, there is a technology on the horizon that threatens to undermine today’s encryption technology. It is called quantum computing.
We are familiar with computers that use definite ones and zeros to store and calculate information. But quantum computers use a technology called qubits, or quantum bits, to operate on data. These bits do not have a specific value and can be compared to spinning coins when you toss a coin.
Through a complicated process, quantum computers can make trivial work of breaking codes used in banking and other almost impossible problems in science and engineering. IBM and other companies are working on these technologies now and have working prototypes running in the lab now.
When these machines go mainstream in the next few years, we will have to find a better way to protect our secrets from prying eyes. It will be interesting to see how the world reacts when their secrets are exposed.
Tim Philp has enjoyed science since he was old enough to read. Having worked in technical fields all his life, he shares his love of science with readers weekly. He can be reached by e-mail at: [email protected]
This is a syndicated post. Read the original post at Source link .