Enigma Home Page |
Description of the cyclometerTo manufacture the catalog intended to identify the daily key in the indicator method of 1930, Rejewski imagined a machine called a Cyclometer. This machine consists of two Enigmas, without Steckers, connected to each other (the output of the first being the input of the second and the output of second being the input of the first). The two sets of rotors would be offset by three positions to emulate the simultaneous encryption of two letters of the indicator (the 1st and the 4th or the 2nd and the 5th or the 3rd and the 6th). Then, via existing switches for each letter, one could display the different cycles (those of cycle theory) existing for a given Grundstellung (the position of the rotors of the first of the two letters) and for a given Walzenlage using lamps. 1938 indicator system and femalesWhen the indicator system of 1938 was introduced, the Poles discovered a phenomenon which enabled them to find the Walzenlage (the order of rotors) and the Ringstellung. As we have seen, 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 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 Zygalski’s sheetsTo find the daily key when the indicator system changed in September 1938, the Polish Zygalski imagined a method which used perforated sheets (a hole corresponding to the presence of a female) superimposed (one sheet for each female found in traffic) until there is only one hole valid for the stacking. This last hole corresponds to a plausible solution of the Ringstellung of the middle and right rotors. Furthermore, for a given Walzenlage, all the Ringstellungs of the left rotor must be tested by making a new stack each time. The position of each hole (a female) is calculated using the Cyclometer in the absence of turnover, the latter depending on the Ringstellung. My Cyclometer simulatorI wrote a Cyclometer simulator. Here is an example of using. 1) Print the syntax$ python3 cyclometer.py -h usage: -h Aide en ligne -v Verbose (mode Debug) -W XYZ The Walhzenage. Example: -W I,II,III [by default] -G XXX:ZZZ The Grund domain. Examples: -G AAA:ZZZ [by default], -G DGJ, AGA:AGZ, ... -R XXX:ZZZZ The Ringstellung domain (ZZZ by default) -U UKW The Reflector, by default B 2) Calculate the cyclesfor a given Walzenlage and a given Grundstellung and a given Ringstellung$ python3 cyclometer.py -W IV,I,II -R AAA -G CCC Walhs Ring Grund pln cry - signature cycles grund (left,mid,rig) ================================================================ 6-6-7-7 ZTWFQRO:LCUBSEJ:IHDKNP:GVAXMY IV,I,II AAA CCC 3) Calculate the cycles for a given Walzenlage for all Grundstellung$ python3 cyclometer.py -W IV,I,II |more Walhs Ring Grund pln cry - signature cycles grund (left,mid,rig) ================================================================ 13-13 TQKUHBYWZOMSI:XVGFNARCEDLPJ IV,I,II ZZZ AAA 1-1-1-1-11-11 CHFXOGSQDNM:AKTJURIZEYV:L:B:W:P IV,I,II ZZZ AAB 13-13 VXZIMJNDTHSQB:LCWEURKPOFYGA IV,I,II ZZZ AAC 3-3-10-10 QYKGXSMHZF:UPLNEOWJDA:VCR:TBI IV,I,II ZZZ AAD 1-1-1-1-1-1-1-1-9-9 HIWOBETUF:LXPJAGQNR:K:Y:C:V:Z:M:D:S IV,I,II ZZZ AAE ... |