This is very clever. But I think you would benefit from testing it with real users. I spend a minute clicking around and nothing seemed to work - then I noticed the low contrast text telling me to configure things.
So I configured them and it still didn't work. Turns out the "lock" setting was now hidden and I had to scroll down.
Hmm.. Not sure what is causing your problem. I was testing the software on Firefox (69.0) while writing it and it works just fine. Maybe you're blocking JS or something?
History/math question: I understand that the wiring in the wheels is such that the electricity is sent through the wheels then looped back through. My question is: were the wheels completely random or did they have to be specifically designed to do that?
I don't completely understand your question but I will try to answer it.
The wheels were specifically designed to do that. The internal wiring of the wheels was random, but known. For example, every "Rotor I" that exists would have A wired to E, B wired K, C wired to some other letter on the other side etc... But then "Rotor II" would have A pointing to, let's say, M, B to L ..
And yes, they were specifically designed to do that, the whole point of it was for the electrical current to travel randomly and take an unique path throughout the rotors on each key-press.
I'm probably completely wrong, but the wiring of the rotors makes me vaguely think of S-Boxes in modern algorithms. Not sure if the comparison holds to scrutiny however.
Each rotor implements a permutation of its input terminals. So maybe more like a p-box, but the difference is significant (only two wires in use at a any time, and one is in "reverse") so probably just thinking of it as a permutation is better.
Thanks for the response. I love the info provided. I guess my real question is this: if I wired a completely random wheel (of course making two for sender and receiver) and chucked it into an Enigma machine, would it work as intended, break some prescribed rule of the encryption, or just completely destroy the machine?
21 comments
[ 0.26 ms ] story [ 56.0 ms ] threadSo I configured them and it still didn't work. Turns out the "lock" setting was now hidden and I had to scroll down.
Once I got that done, it worked very well.
Maybe pre-configure some default settings so it works immediately upon load. Or perhaps a short video showing its use.
I would appreciate if you could open a more detailed issue on the GitHub repository at: https://github.com/lubeskih/enigma-emulator.
Thank you!
https://observablehq.com/@tmcw/enigma-machine
http://lh.mk --> views source
http://who.lh.mkThe wheels were specifically designed to do that. The internal wiring of the wheels was random, but known. For example, every "Rotor I" that exists would have A wired to E, B wired K, C wired to some other letter on the other side etc... But then "Rotor II" would have A pointing to, let's say, M, B to L ..
And yes, they were specifically designed to do that, the whole point of it was for the electrical current to travel randomly and take an unique path throughout the rotors on each key-press.
Check out this more detailed article about the rotor wiring: https://www.cryptomuseum.com/crypto/enigma/wiring.htm
Not sure if this answers your question. I'd be happy to clear out any confusions if you're more specific. :)