MovieChat Forums > Enigma (2002) Discussion > The Bletchley Park workflow.

The Bletchley Park workflow.


I prepared this for another purpose, but I thought that IMDb visitors might like to see it. I don't think any of this will spoil the film as it's not a tutorial on the Enigma machine.

The Bletchley Park workflow.

All German U-boats carry a generation of Enigma machine named "Shark". All Sharks are identical. All U-boats change their Shark settings daily, at the same time of day, and to the same settings. The daily settings for a campaign period (for example, the current month) are in a book of daily settings, and every U-boat carries an identical copy of this book. Thus, all U-boats are able to maintain continuous, secret communications among themselves and with command.

The Allies have no access to the book of daily settings of course, so in order to read intercepted German messages (called "intercepts") they must discover the current day's Enigma/Shark settings on-the-fly. That's what's meant by the expression "cracking Shark" (or "cracking Enigma"). Consequently, to stay informed every day, the Allies must crack Shark every day. In order to do that, the Bletchley Park code breakers apply 3 tools: the Bombe, a crib & a menu.

The Bombe: The Bombe is a room-filling machine that consists of hundreds of Enigma rotor assemblies, each essentially a small Enigma machine, running continuously. Each rotor assembly repeatedly processes the cipher text by performing this sequence: 1, Apply "Next Settings", 2, stream in cipher text, and 3, stream out plain text. The sequence is repeated over and over by the hundreds of rotor assemblies with the only difference being the particular "Next Settings" that a particular rotor assembly applies before repeating the stream processing. So, instead of using one Enigma machine trying one setting per decryption attempt, the Brits invented the Bombe to try hundreds of decryptions simultaneously, in parallel. The first rotor assembly that produces intelligable plain text wins. The next problem is this: How does the Bombe determine that there's been a winner? Somehow, the Bombe must compare the hundreds of plain text outputs to a sample of what the plain text is supposed to look like. That's where the crib comes in.

During Bombe runs, there will be hundreds of candidate plain texts to be evaluated every minute or so. Having human beings look at each to determine: "This is not German plain text" (into the trash), "This is not German plain text" (into the trash), "This is not German plain text" (into the trash), over & over again, hundreds of times per minute until: "Aha! This one looks like it might be something!" is not feasible. So a template is created against which the output of each small Enigma can be compared using an automated method. When a plain text output candidate is found, the Bombe stops so that a human can have a look at it. That template is the crib. The easiest way to understand the crib and how it works is to look at a real example.

The crib: In the film, a U-boat breaks radio silence when it sights a convoy. From triangulation, the code breakers identify the convoy that the sending U-boat has spotted as HX 229. The code breakers know that convoy HX 229 is at grid reference BD1491, that its heading is 70 degrees, and that its speed is 10 knots. From the Short Signal Book, they know to expect 5, 4-letter groups in the following order: TypeOfMessage, Position1, Position2, Course, and Speed. A short time later, one of the listening stations gives them the actual encrypted signal: "CKSA KAFV MWZJ QKDX QRZA". So, applying the Short Signal format, TypeOfMessage is "CKSA", Position is "KAFV MWZJ", Course is "QKDX", and Speed is "QRZA". Therefore, "CKSA" somehow maps to "convoy", "KAFV MWZJ" somehow maps to "BD1491", "QKDX" somehow maps to "70 degrees", and "QRZA" somehow maps to "10 knots". The Bombe is then configured to stop when a plain text candidate is found that has such a sequence of the right kind of letters and numbers in the right order. Once the Enigma/Shark setting for that day is known, all other intercepts for that day can be deciphered, not just the crib.

Even though the Bombe completes hundreds of decryptions per minute, and even though it has the crib to help it determine when it's found a candidate plain text, finding the one correct plain text out of the "4000-million-billion" possible candidates would still take centuries. But if the initial settings of those hundreds of small Enigma machines in the Bombe can be culled somehow... That's where the menu comes in.

The menu: The menu contains initial mappings that cut down on the numbers of combinations of Enigma settings that need to be tried. For example, if the code breakers discover that "S" and "M" are paired, as is shown in the film, then any candidate setting that doesn't map key "S" through plug board-to-rotor-to-rotor-to-rotor-to-reflector-to-rotor-to-rotor-to-rotor-to-plug board to light "M" doesn't even need to be tried. That information cuts the "4000-million-billion" possible settings way down. The more such mappings that you can discover, the faster the Bombe can find candidate plain texts. In the film, after 23 intercepts Tom figures that they've built a large enough menu to cut Bombe processing down to a few hours and he passes the menu to the Bombe operators.

EDIT: Corrected minor typos.
_____
I don't have a dog. And furthermore, my dog doesn't bite. And furthermore, you provoked him.

reply

Thank you, the best explanation that I have read.👍

reply