General > General Technical Chat

How long would it take an average computer to figure out the WWII Enigma machine

<< < (5/7) > >>

Kjelt:

--- Quote from: CJay on January 03, 2021, 12:47:46 pm ---That's the difficulty, to automatically check the validity of a solution you have to have some idea of the possible message content.
................
It's not a trivial problem even if the keyspace is small enough to make a brute force decryption possible.
--- End quote ---
That is true however it will become easier is you have a more other ciphertexts that were encrypted with the same cypher.
In the above Zodiac case there are only three or four samples with different ciphers and the maniac also made some encoding errors which contribute significantly to the difficulty of breaking it.

In the enigma case the same cipher was used by all "senders" during the entire day, so the samplesize would be quite large, so enough ciphertexts to double check all your found possible correct solutions.
If the germans would have started and ended with a random alphanumerical sequence, I doubt the code would have been broken, at least not until they also recovered the coding book (which is an example of a one time pad which is still the only perfect encryption scheme).

jmelson:

--- Quote from: Beamin on January 02, 2021, 04:15:47 pm ---
As an aside: How can a GPU take 18 in the video but a tube based navy bomb take 20 min according to the posters in this thread? Thats like the DSKY running an iphone app. :scared:

--- End quote ---
There was NEVER a "tube based" bombe.  Colossus was used only to crack "tunny" or Lorenz SZ42 ciphers, electromechanical bombes were used for Enigma, which was a vastly simpler code.

OK, there are several issues with Enigma.  **IF** you know the wiring of the rotors that interchange the letters, it is not a very robust code.  If you **DO NOT** know the wiring, it is a VERY difficult code to crack.  As I understand it, Enigma was NEVER cracked without capture of a set of rotors.
The Germans changed out the set of rotors sometime in the middle of the war, and it took six months to capture a set of rotors, meanwhile all efforts at breaking the new rotor wiring with code-cracking methods were fruitless.

Since there were only seven rotors to choose from, the combinatorics limited the search space of the number of possible setups of the machines.  That only had to be done once per day.  Then, you only had to find the starting position of the rotors for each message.  The Bletchley Park bombes could test about 26 positions a second.  When they matched an adjustable number of characters of the crib, they stopped and the position was noted.  The NCR bombes tested something like 780 positions per second, and when a match was detected had to slow down and back up so that the position and number of matched characters could be printed on an adding machine tape.  then, the machine resumed the search automatically.

I'm kind of guessing that the GPU program is either starting out not knowing the order of rotors, or maybe without even knowing the rotor wiring, although I think that search space is so huge you would not be able to find the correct hits among all the random ones that looked probable.
But, if the crib was the entire cleartext, then it could be done.  I don't know how long that would take.

Jon

jmelson:

--- Quote from: Kjelt on January 03, 2021, 04:41:58 pm ---
In the enigma case the same cipher was used by all "senders" during the entire day, so the samplesize would be quite large, so enough ciphertexts to double check all your found possible correct solutions.
If the germans would have started and ended with a random alphanumerical sequence, I doubt the code would have been broken, at least not until they also recovered the coding book (which is an example of a one time pad which is still the only perfect encryption scheme).

--- End quote ---
If you have the code books, then you know the start position of the rotors for every message.  Then, the messages can be decoded with an Enigma machine, with no effort to break the system.  The codebooks only covered a relatively short time period, so quickly became outdated.  As I understand it, for each day, they had a page of 3 digit numbers with a rotor starting position for each.  So, number 123 would have you set the rotors to S Z K V, for a navy machine.  The operator would send 123 in cleartext before transmitting the ciphertext, so the receiving operator could set his machine to the same starting position.

As long as you had SOME known "crib" text anywhere in the message, you could still decode it, but a bombe would not have worked, as it only compared 10 characters of the ciphertext against the full key to see if it matched the crib.  Yes, just another shortcoming of how the Germans used the Enigma.

One other shortoming of Enigma is that no letter could ever be represented by itself.  This was the result of using a reflector disc at one end of the rotor stack to send the signal back through the rotors again.  Somebody once sent a message of all "L" characters, the Bletechley Park guys immediately spotted that,  and it became basically a readout of part of the rotor wiring.

Jon

CJay:
Rotor wiring is laborious to work out but there were occasions where it was reverse engineered without having access to the physical hardware.

Rejwski did it, Knox did it and I'm sure others too.

alank2:
The bombe was not a put in the message and wait for the answer type of thing - there were hundreds of talented code breakers at Bletchley Park responsible for obtaining a daily key and the bombe was only a part of that process.

I think someone tried a distributed computer attack in 2008 to break some of the remaining unencrypted German messages from WWII, but it did not do well at it.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

There was an error while thanking
Thanking...
Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod