vanitasvitae / EnigmAndroid

Android implementation of the famous Enigma machine
https://blog.jabberhead.tk/enigmandroid/
GNU General Public License v3.0
16 stars 8 forks source link

Not compatible to online Enigma Simulator, when historical turnover points implemented #2

Closed vanitasvitae closed 9 years ago

vanitasvitae commented 9 years ago

I have a new Issue with the Rotors. When I implement the historical turnover notches, the Enigma machine isn't compatible to the online simulator anymore. It seems to me, that the simulator turns over the next Rotor when turning from Z to A, no matter which rotor is selected. That is not historical correct according to Wikipedia. Quote:

Rotor Turnover position(s) BP mnemonic I R Royal II F Flags III W Wave IV K Kings V A Above

How should I deal with it?

Online Enigma Simulator: http://people.physik.hu-berlin.de/~palloks/js/enigma/enigma-u_v20.html

vanitasvitae commented 9 years ago

Okay, I found the Problem: In the original historical Enigma there was an anomaly due to the way it was mechanically implemented. This so called "double step anomaly" causes the middle rotor to rotate twice some times. I added this "feature" to make the simulation as accurate as possible and to make my app compatible to the web version mentioned above.

lordsinclair commented 7 years ago

I have the similar problem but it happens although I checked the switch for double anomaly. I checked another dozen of other configs with the given simulator above (enigma-u_v20.html from HU-Berlin) and the result is the same on EnigmAndroid except only for following single exception. If you may want to try check: EnigmAndroid/97d6c3c8071d and decipher "NZJHBSIGIDRC" -> ITPQRGXLBSQZ. Because I use 2 other simulators on 2 different PCs they both show a different but probably right result with: FAPQIOJXGUMZ. Is the result for my singular issue on EnigmAndroid wrong ? I guess that the same result on HU-Berlin could be true since I could verify it with a third simulator.

vanitasvitae commented 7 years ago

Unfortunatelly I'm no longer actively developing the app.

Edit: Pull Requests are welcome :)