Break an Enigma Key with Bombe
The checking machine (TAR) |
IntroductionEach bombe was managed by a team of two people (most often women in the British army): one configures the Bombe, the other tests each stop. For each Stop, the operator using a machine that emulated an Enigma, checks the consistency of the Stop against the menu. Basically, a stop was considered “good” or “bad”. The good stops were immediately transmitted by telephone to Hut 6 so that the cryptologists of the Machine Room (MR) could check the stop again, verify if the solution was correct, and then deduce the full key. Checking machineTo verify a Stop, the operator used a simplified version of an Enigma: a Checking Machine. The rotors had the same structure as the rotors used on the Bombe: They were placed on the front of the machine. The machine did not have a system for advancing the rotors, the operator was forced to change their position manually. Also, the machine didn't have any steckers. However, like the Enigma, if you pressed one key on the keyboard, a lamp would light up. Principle of the testTesting a stop corresponds to scan the menu: you type on the keys corresponding to the letters in the menu and you must obtain the associated letters or other letters if they belong to a stecker. Concretely, when we perform the test, we go through the letters of the menu. In the following example, we start from the input letter "E". The testing machine is positioned at the grundstellung of the ONO stop which at the menu level corresponds to the ZZF position (abbreviated zf). As we know the stecker EH, we press on H (and not on E). We get the letter B. This is the letter that connects E via the position zf. If the stop is good, it means the letter B is self-steckered. That's a pretty good sign. It is indicated in the result sheet. Then we go through the loop (E-> C-> O-> S-> Z-> E). We set the checking machine to the ONK position (corresponds to zb) and we press the H key. We obtain the letter A. We should have obtained the letter C. So the result is plausible if we have the AC stecker. We continue: in the ONR (zi) position, we press the A key, the J lamp lights up instead of the letter O, so we have the OJ stecker. Then, at the OOG (ax) position, we press the J key, the Z lamp is displayed instead of the letter S, so we have the SZ stecker. Then, at the OOH (ay) position, we press the Z key, the lamp S is displayed instead of the letter Z, so we have the stecker SZ. This is very interesting because we have confirmation of the previous deduction; it is indicated on the results sheet (this is a very good sign). Then, at the OOI (az) position, press the S key, the H lamp lights up. This result confirms the initial hypothesis: the letter E is steckered to the letter H: the closure is confirmed. This is still a good sign. We continue to test the other letters of the menu (S-> T, O-> I-> G, E-> V, E-> U). On the other hand, the annex chain (L-> N-> F-> M-> Q) cannot be tested because no stecker is known. A Stop is considered good if it does not contain an illegal contradiction. A Stop is considered bad if it contains at least one illegal contradiction or the loops (closures) are not confirmed. An illegal contradiction corresponds to the discovery of two incompatible steckers, for example EH and ED. A good stop can contain a legal contradiction. This corresponds to the presence of two letters from the menu steckered to the same letter but present outside the menu. Hut 6 (MR) could require to receive only the very good stop (SSO: Story Stop Only) which should not include any contradiction (legal or illegal) and whose closures were verified.
ExamplesMenu: B V U zd zj au av Input 1\ze|10/11 L----N----F----M----Q letter: E zf\ | /zg 12 13 14 15 zb \|/ az ay zh C-------E-------Z-------S-------T 1 loop \ 2 6 5 /ax 7 1 aux.chain \ zi 4/ aw zc 16 letters \-----------------O-------I-------G 3 8 9 Checking the 1st Stop: 132, EEK, stecker EKMenu letters Key->Lamp Grund Stecker EK 1 B K->H (zf)(eek) BH 2 E K->R (zb)(eeg) CR 3 C R->O (zi)(een) OO Self-stecker 4 O O->K (ax)(efc) SK illegal contradiction 5 S K->P (ay)(efd) ZP 6 Z P->K (az)(efe) KE closure confirmation 7 T K->Y (zh)(eem) TY 8 I O->D (aw)(efb) ID 9 G D->R (zc)(eeh) GR illegal contradiction 10 V K->H (ze)(eej) VH illegal contradiction 11 U K->Y (zg)(eel) UY illegal contradiction Conclusion: Bad Stop Checking the 2nd Stop: 132, WQL, stecker EDMenu letters Key->Lamp Grund Stecker ED 1 B D->W (zf)(wql) BW 2 E D->K (zb)(wqh) CK 3 C K->H (zi)(wqo) OH 4 O H->Q (ax)(wrd) SQ 5 S Q->A (ay)(wre) ZA 6 Z A->D (az)(wrf) ED closure confirmation 7 T Q->P (zh)(wqn) TP 8 I H->P (aw)(wrc) IP illegal contradiction 9 G P->A (zc)(wqi) GA illegal contradiction 10 V D->A (ze)(wqk) VA illegal contradiction 11 U D->A (zg)(wqm) UA illegal contradiction Conclusion: Bad Stop Checking the 3rd Stop: 134, FXA, Stecker EEMenu letters Key->Lamp Grund Stecker EE self-stecker 1 B E->K (zf)(fxa) BK 2 E E->W (zb)(fxw) CW 3 C W->O (zi)(fxd) OO self-stecker 4 O O->J (ax)(fys) SJ 5 S J->Y (ay)(fyt) ZY 6 Z Y->E (az)(fyu) EE closure confirmation 7 T J->P (zh)(fxc) TP 8 I O->P (aw)(fyr) IP illegal contradiction 9 G P->A (zc)(fxx) GA 10 V E->V (ze)(fxz) VV self-stecker 11 U E->U (zg)(fxb) UU self-stecker Conclusion: Bad Stop Checking the 4th Stop: 413, ONO, Stecker EHMenu letters Key->Lamp Grund Stecker EH 1 B H->B (zf)(ono) BB Self-stecker 2 E H->A (zb)(onk) AC 3 C A->J (zi)(onr) OJ 4 O J->Z (ax)(oog) SZ 5 S Z->S (ay)(ooh) SZ Stecker confirmation 6 Z S->H (az)(ooi) EH closure confirmation 7 T Z->Y (zh)(onq) TY 8 I J->V (aw)(oof) IV 9 G V->G (zc)(onl) GG Self-stecker 10 V H->I (ze)(onn) IV Stecker confirmation 11 U H->X (zg)(onp) UX Conclusion: Good Stop The result sheetThe different Stops associated with the same menu and which occur on the same Bombe are recorded on a result sheet called “Check Sheet”. It contains the letters of the menu, the name of the Bombe, and the number of the job (which corresponds to the menu generated by the MR). For each Stop, is indicated if the test is good (/) or bad (x), an order number, the order of the rotors and the position of the rotors during the stop. Then next to the letters in the menu, the letter that you type on the keyboard in its place. The letter is followed by an indication specifying the state of our deductions:
Note, if we read online, next to a letter in the menu, we have the letter that completes the stecker.
X, 1, 132 EEK, H, R, (O), Kx, P, K/, Y, O, Rx, Hx, Yx
X, 2, 132 WQL, W, D, K, H, Q, A/, P, Px, Ax, Ax, Ax
X, 3, 134 FXA, K, (E), (O), J, Y/, Q, P, A, (V), (U)
/, 4, 413 ONO, (B), H, A, J, Z", S/, Y, V, (G), I, X. |