Friday, March 10, 2006

Whew, sure glad we cleared that up!

Sometimes, luck is more important than skill. Last week, I read some news I wanted to blog about, but forgot. This morning, I remembered and decided to blog anyway. So excuse me if this sounds like the "laugh a week after the punchline".

The U.S. has been involved in several armed conflicts since the time of my birth, and one conflict (WW II) just prior to my birth. I believe that the U.S. and its allies came very close to losing WW II, and that it was only luck - a few missteps by the Axis forces, that swayed the results. That, and an intelligence coup that put the decoder for the Enigma machine into Allied hands.

The Enigma machine, a cypher generator built by the Nazis, was way ahead of its time. With it, secret military messages could pass over open channels without any possibility of them being broken by the enemy. The "base" codes for the machine were changed frequently, so even if you were told what a given message meant, that did not help you decode any other messages. In fact, there were three messages from 1942 known to exist, encoded with Enigma, that had NEVER been decoded.

Using the power of distributed computing - volunteers around the world that allowed the power of their personal computers to be harnessed to solve a single problem - one of those messages was finally decoded. At first, I thought sarcastically - gee, it only took 63 years to break the code - that's not very secure. Then I realized it only took a month to accomplish, once the decoding project started.

You need to understand just how difficult this problem actually was to solve. The enigma machine had a whole bunch of dials on it. Each dial had several positions. And the code generated by the enigma machine was different for every combination of those dials and switches. Any one of the switches could be on or off (that's two choices per switch). And the dials had so many combinations, that to express that number in English, it would be "10", followed by 145 zeros. So, to analyze all possible Enigma codes, you'd need to multiply "2 x 2 x 2 x 2 ...." over 100 billion billion billion billion billion billion billion billion billion billion billion billion billion billion billion billion times.

The Nazis thought that was an impossible task. Today's computers can do the job in under a month - which brings me to the point of all this preamble... today's encryption methods have been freely placed into the hands of the average citizen, and the average criminal. Today's encryption methods make the Nazi code seem like child's play. Messages encrypted with today's methods cannot be broken for a period of time that is longer than the length of time the universe has been in existence (if you happen to believe in the scientific explanations of the current age of the universe).

The intellectual dilemma I face is one of mathematics vs. morality. Should we stop innovation in the area of cryptography because it gives powers to criminals that - without an intelligence coup - renders law enforcement officials unable to cope with the technological problem; or should we view every innovation as a step in the right direction, and take the attitude that NO CODE is unbreakable, and perhaps 50 years from now, someone else will be writing about how it only took a month to decrypt "unbreakable" messages from the early 21st century.

OK, I've got to stop before I give myself a headache!

No comments: