Enigma Home Page |
1938 system indicator and femalesWhen the indicator system of 1938 was introduced, the Poles used a phenomenon which finally enabled them to find the Walzenlage (the order of rotors) and the Ringstellung directly and after the steckers. in short, the complete daily key. The indicator contains the message key ciphered twice. The pairs of letters for indicator 1 and 4, 2 and 5 and 3 and 6 belong independently to three cycles. If one of the pairs is made up of identical letters, this corresponds to a cycle of one unit. The Poles called them "females". This phenomenon is not possible for every Grunstellung (the start position on which the message key is ciphered twice). The probability of having a female is only around 40%. Cycle theory tells us that having a female at a given Grundstellung or not happens independently of the Steckers.
The Polish Bombe (Bomba)The Rejewski’s Bombe and Zygalski’s sheet are based on the presence of females in the indicators. Rejewski's Bombe only uses three females, but the repeated letter must also be the same. When the german have only three rotors, it takes six Bombes to explore all possible keys simultaneously, which would take two hours. However, Polish Bombes have restrictions: there must be no turnover between the two positions of a female (this is also the case with the sheets), and the letter that is repeated must not belong to a Stecker (it must therefore be self-Steckered). When a solution is plausible, the Bombe stops. From the stop position, we can deduce the Ringstellung (as for the sheets) via the following formula (Link 2009): AAA - stop_position + begin_position Based on Link's article, I wrote a Polish Bombe simulator. I was able to reproduce the examples without problems. The Polish Bombe: the English versionThe British built Bombes in late 1939 based on the same principles but with eight Enigmas instead of six. They could, therefore, test the simultaneous presence of four females. The English version: search of a steckerThe Polish Bombe forces the letter present in the females to be self-steckered. Because the English version decreases the number of stops, it becomes possible to test all the steckers associated with the letter common to the four females. Example of using my Bombe simulatorKeyUKW : B Walzenlage : IV-V-II Ringstellung : JSY Steckers : RV, ZF, EC, IG, YW, UT, NA, BJ, DL, OM Several headers from trafficA list of Grundstellung and the corresponding indicator (as well as the message key which is unknown to the cyrptolog): Key – Grund. – Indicator DIJ BKT HFEHNK RFC KBQ HPSHHE DAY TIA HOLHYK BWP MGT QHTFHV UQT FZM MHHDZH Note:You should not take the last case (FZM) if you test a Walzenlage whose middle wheel is the V wheel. Indeed, it causes a turnover of the middle wheel and the left wheel.
Using my simulatorThe repeated letter is H (-L H), and we use the Ringstellung AAA (-R AAA). The Walzenlage tested is IV-V-II (-W IV,V,II). The -g option specifies the list of Grundstellung associated with females: $ curl -O http://www.jfbouch.fr/crypto/enigma/tools/bomba.tar $ tar -xf bomba.tar $ cd bomba $ python bombe_poles.py -W IV,V,II -R AAA -L H -g BKT,KBQ,TIA DIN SSV We obtain two stops (two plausible solutions). Using the previous formula, we get the Ringstellung (for example for the second stop): Ring = AAA - SSV + BKT = JSY With only three Grundstellung we get 65 stops for the 60 Walzenlages of the army’s Enigma model. - Use the English Polish Bombe (with 8 Enigmas) I think, we can specify the Stecker (with -L and -S options) $ python3 bombe_poles.py -W IV,V,II -R AAA -L H -S H -g BKT,KBQ,MGU,TIA Walzenlage:IV,V,II ,Stecker:HH ,stop:SSV - If I want to scan all possible steckers, I use the bombe_poles.sh software. Note: you need a Unix Shell (ksh, bash, dash, zsh, ...). $ sh bombe_poles.sh IV,V,II H BKT,KBQ,MGU,TIA Walzenlage:IV,V,II ,Stecker:HF ,stop:CVO Walzenlage:IV,V,II ,Stecker:HH ,stop:SSV References
|