Enigma Encryption Vs. Modern Computers?
wynlyndd asks: "The story about the recent theft of the Enigma machine has got me wondering. Right now we have a distributed network of machines trying to crack an encrypted message. This has taken hundreds of machines hundreds of days and we have hardly dented the available keyspace. How long would it take a modern desktop computer to solve the Enigma codes?" Most assuredly nowhere near as long as it will take to crack RC5...but I digress.
First of all, people always speak of being able to brute force crypto algorithms. The real world feasibility of brute forcing a crypto algorithm is typically very low.
Consider Dk[C] = P : that is decryption function D using key K on ciphertext C to get plaintext P.
For every key K that you try in a brute force approach, you are going to produce a unique* plaintext P. All these stupid contests like distributed.net know what the beginning of the plaintext P should look like. Typically the beginning of plaintext P in a contest like the one previously mentioned is "The secret message is : "
Hopefully you see what I am getting at by now, every time in a brute force attack you try another key you are going to get another unique* plaintext. How are you going to check them all? Even if the plaintext is known to be ASCII english this is no trivial task. But what if plaintext P is just a number, for example a bank account #. Literally every possible key is going to produce a unique* number and there is not much to tell you which number is correct.
Anyways, I am just trying to put some perspective on these so called brute force attacks that have "cracked" certain algorithms.
As for the enigma rotor, I believe there is 5 rotors with 26 charachters each. 26^5 = 11,881,376 possible keys. Keeping in mind the limitations of brute force attacks, the only real method to crack this encryption is cryptanalysis.
D. Kahn wrote in "The Codebreakers: The Story of Secret Writing" :
"A period of that length (26^5) thwarts any practical possibility of a straightforward solution on the basis of letter frequency...The cipher text would have to be as long as all the speeches made on the floor of the Senate and the House of Representatives in three sucessive sessions of Congress."
Oh yeah about my * for unique, i meant relatively unique depending on the properties of the encryption function. Most are designed to have this property. (obviously)
William Stallings points out in Cryptography and Network Security principles and practice that the real modern day significance of the rotor machines was the implementation of using multiple rounds of encryption (i.e. multiple rotors) to strengthen the encryption. This is what DES does.
It is my belief that if you know enough about the workings of the rotor machine the problem becomes as simple or as hard as solving systems of linear equations.
So my final answer for a million dollars is :
(26^5) decryption cycles which can be done relatively quickly, but ~ 11 million possible decryptions which could be sifted through very slowly.