Hi all! Just wanted to show off a new project I've come up with, seeing that the other 500 in progress can't grab my interest at the moment
Like vintage computers and Pink Floyd: We
know those who say they dislike them are lying, as with cipher machines and other vintage crypto stuff.
Enough blabbing, here's the deal: The Hagelin B-21 is sorta a Swedish cousin to the Enigma - it's simpler, has only two code wheels and plug boards, but else has the same qualities as the enigma:
Here's a link for more info:
http://www.cryptomuseum.com/crypto/hagelin/b21/index.htmNow, I'm no clockmaker, or machinist, so turning all the mechanical parts is out of the question; I'm gonna implement it with only discrete logic and a ROM!
Here's my schematic, I've labeled all the functional blocks for the viewers convenience.
Basic theory is, I'm diode steering the keypad into a row and column active high signal. columns are connected to the lamp-boards (in the original, there was a code-wheel and plugboard on these as well), and then I'm feeding rows to the Eprom. the 'rotation' of the wheel is done by a 74193 counter. It also has an up/down button for setting starting point.
the green section is the plugboard and switching logic; if the code wheel was just wires this weren't needed, but you can't invert the data/addr on an EPROM.
the encrypt/decrypt switch shifts the counter between up and down, and the direction of the plugboard.
The eprom will then hold the key, two sets, one for encode and one for decode. A few issues still stand; the COLPRES line should have a negative edge detector, so it 'turns the wheel' on release. I also need a solution to view the letter the 5 bits from the counters are at; another eprom as lookup, maybe.
I am by no means sure this will work, the logic surrounding the plugboard got me puzzled for a while.
Hope some of you find this interesting!
--Chris