5 ms·
Show HN: I wrote an Enigma machine emulator for the Web
- edent 7y agoThis 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. Once I got that done, it worked very well.
- lubeskih 7y agoThank you for the feedback! I should probably work on that... I agree that it's confusing.
- nacs 7y agoAgreed on this, played around dragging things around for a couple minutes and still couldn't get it to do anything. Maybe pre-configure some default settings so it works immediately upon load. Or perhaps a short video showing its use.
- jedimastert 7y agoI would recommend setting defaults (probably first three rotors set at the beginning) and possibly not have the locking mechanism in place?
- quirkafleeg3 7y agoThis is awesome! It's always great to preserve history.
- nenadg 7y agoGood stuff, Drag'n'drop is not working on Firefox btw.
- lubeskih 7y agoHmm.. 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? I would appreciate if you could open a more detailed issue on the GitHub repository at: https://github.com/lubeskih/enigma-emulator https://github.com/lubeskih/enigma-emulator. Thank you!
- phito 7y agoWork for me on Firefox 69.0
- whoeverest 7y agoAlso works for me on Firefox 68.
- snek 7y agoWhy is there a stript blocking mobile browsers
- d--b 7y agoJust mentioning this: https://observablehq.com/@tmcw/enigma-machine https://observablehq.com/@tmcw/enigma-machine
- yboris 7y agoPhenomenal! Thank you for this link -- such a lucid demonstration of how it works!
- octosphere 7y agoInteresting easter egg on the main page: http://lh.mk http://lh.mk --> views source <!-- who.lh.mk for the curious ones --> http://who.lh.mk http://who.lh.mk
- jedimastert 7y agoHistory/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?
- lubeskih 7y agoI 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. Check out this more detailed article about the rotor wiring: https://www.cryptomuseum.com/crypto/enigma/wiring.htm 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. :)
- kakwa_ 7y agoI'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.
- notfashion 7y agoEach 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.
- jedimastert 7y agoThanks 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?