
Show HN: I wrote an Enigma machine emulator for the Web - lubeskih
https://enigma.lh.mk
======
edent
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.

Once I got that done, it worked very well.

~~~
lubeskih
Thank you for the feedback! I should probably work on that... I agree that
it's confusing.

~~~
nacs
Agreed 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.

------
d--b
Just mentioning this:

[https://observablehq.com/@tmcw/enigma-
machine](https://observablehq.com/@tmcw/enigma-machine)

~~~
yboris
Phenomenal! Thank you for this link -- such a lucid demonstration of how it
works!

------
jedimastert
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?

~~~
lubeskih
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.

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_
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.

~~~
notfashion
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.

------
octosphere
Interesting 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)

------
nenadg
Good stuff, Drag'n'drop is not working on Firefox btw.

~~~
lubeskih
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?

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!

------
quirkafleeg3
This is awesome! It's always great to preserve history.

------
snek
Why is there a stript blocking mobile browsers

~~~
lubeskih
It's just an alert telling you that the emulator is not supported on mobile
devices.

~~~
egfx
Why does it take you to google.com instead of the page you came from?

~~~
lubeskih
That's a good point. Noted.

