Hallöchen Freunde. Mal eine hoffentlich zumindest irgendwie verständliche Frage von mir: Ich habe mir vorgenommen mal auf papier bzw in Kicad eine Enigma zu basteln. Vom Grundprinzip ist die Enigma ja recht simpel. Nur habe ich bisher keine Idee, wie ich ohne avr die Rotation der Walzen simulieren soll. Grundsätzlich dachte ich an sowas wie ein Schieberegister mit 26 Blöcken gedacht, nur müsste ich auf jeden dieser 26 Blöcke bei zugreifen können. Und das Ganze pro Tastendruck um eins shiften lassen.. Nimmt man für sowas nen speziellen SRAM oder gibt Ähh ja vielleicht hat ja jemand nen Tipp. Danke.
Moin, Markus schrieb: > Nur habe ich bisher keine Idee, wie ich ohne avr die Rotation der Walzen > simulieren soll. Vielleicht mit grossen (EP)ROMs. Untere Adressbits sind Eingang fuer den Buchstaben, obere Adressbits geben die Rotation an, haengen z.b. an einem Zaehler, der nach jedem Zeichen eins hochzaehlt... Muss man aber schon arg engagiert sein, sowas tatsaechlich so machen zu wollen. Gruss WK
Dergute W. schrieb: > Muss man aber schon arg engagiert sein, sowas tatsaechlich so machen zu > wollen. Naja, man hat ja sonst nix zu tun.
Markus schrieb: > Vom Grundprinzip ist die Enigma ja recht simpel. > Nur habe ich bisher keine Idee, wie ich ohne avr die Rotation der Walzen > simulieren soll. Dann erzähl doch erst mal, wie du das mit AVR machst! Wir werden es dann schon auf's Papier bringen... Gruß Rainer
Das Enigma-interne 1-aus-26-Signal könnte man durch 5 bit darstellen; dann wird aus dem Drehen eine Addition/Subtraktion (modulo 26, d.h. aufpassen bei Überlauf). Eine Walze kann man dann durch zwei Tabellen darstellen (das Signal läuft ja immer zweimal durch jede Walze), z.B. in einem kleinen EEPROM. Damit können die "Walzen" immernoch steck- und austauschbar sein.
Nosnibor schrieb: > z.B. in einem kleinen EEPROM Da braucht man doch nix zu stecken...ein EEprom programmierst du einfach um! Aber jetzt lass doch erst mal. Der TO will was , was er mit AVR so nebenbei erledigt, in diskreter Logik auf Papier bringen. Der Masochismus sei ihm gegönnt. Dann muß er aber auch selbst mal anfangen. Ich zumindest habe keine Lust, ihm sein "Schaltwerk" hinzuschreiben! Ist ja seine Idee... Gruß Rainer
Rainer V. schrieb: > Nosnibor schrieb: > >> z.B. in einem kleinen EEPROM > >Der TO will was , was er mit AVR so > nebenbei erledigt, in diskreter Logik auf Papier bringen. Der > Masochismus sei ihm gegönnt. Dann muß er aber auch selbst mal anfangen. > Ich zumindest habe keine Lust, ihm sein "Schaltwerk" hinzuschreiben! Ist > ja seine Idee... > Gruß Rainer Dies Dies. Die Idee mit 5 bit finde ich schonmal nicht schlecht.
Markus schrieb: > Ähh ja vielleicht hat ja jemand nen Tipp Die Enigma bekommt 1 von 26 Buchstaben als Input und hat einen internen Zustand von 26x26x26 Stellungsmöglichkeiten, es ergibt einen Output von 1 von 26 Lämpchen Es reicht ein EPROM von 26x26x26x26=456kx5bit, da man die 26 in 5 bit verpachen wird mit 20 Adressbits also 1Mx8.. Dazu ein Zahler mit 3 Stellen a 26 Positionen und ein 26 zu 5 Prioritätsencoder, und hinterher Decoder von 5 bit auf 26 Leitungen. Der Zähler taktet bei jedem Buchstaben, das EPROM wird je mach Walzen und Reflektor programmiert und eingesteckt.
Markus schrieb: > Ich habe mir vorgenommen mal auf papier bzw in Kicad eine Enigma zu > basteln. > Vom Grundprinzip ist die Enigma ja recht simpel. Ganz toll von MaWin (Gast)01.10.2021 18:32...das du es vielleicht verstehst, wundert mich nicht...aber der TO soll was lernen und nicht einfach nur blöde Projekte zur Bearbeitung hinstellen. MaWin hat Enigma kapiert...der TO hat nur geschrieben, dass es pillepalle ist. Wem glaube ich nun??? Gruß Rainer
Rainer V. schrieb: > das du es vielleicht verstehst, wundert mich nicht... Inzwischen noch besser. Den 26x26x26 Zähler bis 17376 kann man als 15 bit Zähler (2xHC393) aufbauen und durch ein unbenutztes Ausgangsbit des EPROMs rücksetzen lassen, man braucht gar nicht die einzelnen Zählerstufen.
Keine Kleinbuchstaben, keine zahlen, keine Leerzeichen, keine Prosa.
Hier gibt es Schaltbilder ähnlicher Maschinen: https://www.cryptomuseum.com/pub/files/Fialka_200.pdf Die Enigma ist zwar echt toll, die Fialka wäre aber technisch viel interessanter und uC realisierbar.
:
Bearbeitet durch User
Bevor man so einen Beitrg startet, wäre es doch sinnvoll, wenn der TE zuerst mal schaut, was man per Suchmaschine unter dem Begriff ENIGMA findet. Warum das Rad neu erfinden? Hier gibts sehr viele Infos und sogar Bausätze dafür: https://www.cryptomuseum.com/kits/enigma/index.htm Der Link zur Bestellung funktioniert zwar nicht mehr. Man müsste sich da halt durch die Seite durchhangeln um weitere Infos in Erfahrung bringen zu können. Gruß fossi
Markus schrieb: > Nur habe ich bisher keine Idee, wie ich ohne avr > die Rotation der Walzen simulieren soll. "barrel shifter"
Dieter J. schrieb: > Hier gibts sehr viele Infos und sogar Bausätze dafür: Man hätte die Seite lesen können und Programmed PIC controller gefunden, nicht das was er will.
MaWin zitierte im Beitrag #6835540:
> Programmed PIC controller
Nahezu die perfekt pleonastische Doppelmoppel-Tautologie.
Percy N. schrieb: >> Programmed PIC controller > > Nahezu die perfekt pleonastische Doppelmoppel-Tautologie. Ein Laufhund kann rumstehen, liegen, und laufen, aber nur ein laufender Laufhund läuft auch wirklich.
:
Bearbeitet durch User
Könnt ihr nicht die Überschrift lesen; der TO möchte die Enigma mit Logik-IC der Reihe 74xxx nachbauen. Was soll da der Hinweis auf MPU oder FPGA etc.
MaWin schrieb: > Es reicht ein EPROM von 26x26x26x26=456kx5bit, da man die 26 in 5 bit > verpachen wird mit 20 Adressbits also 1Mx8.. Bei so einem Projekt ist es immer Geschmackssache, welche Details man (in all ihrer technischen Umständlichkeit) originalgetreu belassen und welche man durch moderne Lösungen ersetzen will. Man könnte ja auch die ganze Enigma originalgetreu mechanisch nachbauen und nur das Bakelit durch 3D-gedrucktes PLA ersetzen, aber das will der TO offenbar nicht. Am anderen Ende der Skala stehen die Lösungen, die alles wesentliche in einer zentralen Blackbox (µC oder EPROM) verschwinden lassen, aber das ist hier wohl auch nicht gefragt. Mir wäre bei so einem Enigma-Nachbau wichtig, dass man die "Walzen" von Hand austauschen kann, um den Tagesschlüssel realistisch einzustellen, aber das ist natürlich eine persönliche Vorliebe. Die 1-aus-26-Codierung wiederum wäre mir nicht so wichtig, dass ich dafür den Aufwand der Barrelshifter treiben wollte. Bei 5bit-Codierung kann man dann wieder entscheiden, ob man die Walzen in einem ((E)E)PROM-Baustein verschwinden lässt oder als Diodenmatrix transparent macht, alles Geschmackssache.
Nosnibor schrieb: > Am anderen Ende der Skala stehen die Lösungen, die > alles wesentliche in einer zentralen Blackbox (µC oder EPROM) > verschwinden lassen, das ist noch nicht das Ende der Skala, da kommt noch die App für's iPhone
Vor zwanzig Jahren testete ich eine funktionierende Drei Walzen Enigma auf einem PIC uC. Das Program war ein Portierung eines MSDOS C Programs mit dem CCS C Compiler auf einen 18F452. Das Programm wuchs natprlich leider nicht auf meinen Mist. Die Original PC Sourcen schickte mir damals ein leider schon verstorbener Historian von Bletchley Park Geschichte. Ich testete Ver- und Entschlüsselung erfolgreich gegen einen Windows Dreirad Enigma Emulator der unter W2K lief. Das Original Programm konnte auch Bomba Crib Such-Funktionen. Testete ich damals allerdings nicht. Der UC Enigma arbeitete übrigens super schnell. Ein Block von ein paar hundert Buchstaben Text wurde praktisch im Sekundenbruchteil umgesetzt. Habe allerdings im Augenblick keine Ahnung ob die damaligen Arbeitsunterlagen und Sourcen bei mir noch existieren. Es war nur ein Versuch und kein richtiges Projekt. Mir wäre eine diskreter Logikaufbau eigentlich zu kompliziert und aufwendig. Mit einem uC geht das viel leichter und kleiner, zumindest ist das meine Ansicht. Allerdings wäre ein solcher Ansatz lehrreich. Aber dann besser in CMOS Logik. Die Barrelshifter wären mir zu aufwendig. Im uC geht das leichter. Da sieht man doch daß die mechanische Enigma Umsetzung doch durch ihre Einfachheit besticht. Was mit Logik sehr aufwendig machbar ist, wurde mit dem Walzenkonzept höchst elegant gelöst. http://www.tatjavanvark.nl/index.html http://www.tatjavanvark.nl/tvv1/pht10.html An sich finde ich die auf die Enigma beruhende Weiterentwicklung der Fialka wesentlich interessanter. Die Enigma hatte wegen der UKW eine schwerwiegende Schwäche weil ein Buchstabe nicht gegen sich selber verschlüsselt werden konnte. Dieser Fehler wurde bei der Fialka behoben. Mit ihren 10 Walzen und Steckbrett und fachgemässer Anwendung ist sie wahrscheinlich auch heute noch nur schwer zu knacken. Allerdings dürfte zukünftige Quantum Computer Technik möglicherweise auch zu deren Versagen führen. Naja, das waren meine damaligen Spielereien...
:
Bearbeitet durch User
Ich denke ein AVR kriegt eine Enigma-Nachbildung recht problemlos in Software hin. Man muß nur einen recht großen nehmen, damit man eine entsprechende Anzahl Pins bekommt. Prinzipiell ist das nichts weiter als eine Wanderung durch look up tables. Ansonsten war die Enigma mit ihren Walzen und Steckfeldern ansich ja ein rein mechanischer Aufbau. Wenn man das elektrisch nachbilden will, mit einer Software oder so, dann muß man auch eine Eingabemöglichkeit für den Grundzustand der Maschine schaffen. Sprich die Steckbrücken oder Grundstellung der Rotoren, welche Rotoren, welche Umkehrwalze. Wenn man allein diesen Teil in Hardware belassen will, dann wird das schon sehr aufwendig, da das bereits ein wesentlicher Bestandteil für die eigentliche Funktion der Maschine ist.
Kolja L. schrieb: > Keine Kleinbuchstaben, keine zahlen, keine Leerzeichen, keine > Prosa. Das hat man davon wenn man ungenau ist. Ich meinte natürlich, wie wird ein Leerzeichen aus einem Schriftstück umcodiert übertragen? Die Verwender waren ja eher informatikmäßig kaum gebildet. Ich denke, die Beschränkung auf 26 Walzenstellungen war auch einer der Schwachpunkte. Vielleicht ist es schwierig, mehr Positionen mechanisch zu realisieren. Hm, Drehwähler aus der Telefontechnik hatten VIEL mehr Abgriffe. Muß halt alles mechanisch sehr robust sein.
> Die Verwender waren ja eher informatikmäßig kaum gebildet.
Das würde ich so nicht sagen. Erstens muß man keine Intelligenzbestie
sein um eine solche Maschine nach genau definierten (deutschen)
Richtlinien zu betreiben und zweitens kannten sich Funker damals noch
mit ihrer Technik aus.
Enigma-Nachrichten enthalten keine Leerzeichen. Die sehen oft so aus wie
"VONUUUNEUNSECHSANSTUETZPUNKTLUEBECK"... Oder Ziffern waren oft gekürzt
geschrieben "LAUFENKURSZWOVIRSIBEN".
Eine Schwachstelle war, daß ein Buchstabe nicht in sich selbst codiert
werden konnte. Also wenn man z.B. ein "A" verschlüsseln will, kommt
niemals ein "A" wieder raus.
Eine andere Schwachstelle war, daß bei teilweise korrektem Schlüssel
oftmals Teile der Nachricht gelesen werden können, das was fehlt kann
man sich evtl. zusammenreimen. Oder wenn die Steckbrücken nicht völlig
korrekt sind, dann stimmen einzelne Buchstaben nicht, aber im Grunde ist
die Nachricht lesbar.
Oder man kann auf die Suche nach oftmals verwendeten Wörtern gehen.
"OBERKOMMANDOWEHRMACHT" z.B. war in sehr vielen Nachrichten enthalten.
:
Bearbeitet durch User
Gerhard O. schrieb: > Allerdings wäre ein solcher Ansatz lehrreich. > Aber dann besser in CMOS Logik. Das ist jetzt natürlich große Geschmacksache. Und welchen Lerneffekt sollte eine Umsetzung in TTL-Logik haben?? Du mußt die Logik der Verschlüsselung doch auch im AVR oder wem auch immer realisieren. Das heißt doch aber zuallererst, dass du verstanden haben mußt, was die Maschine macht! Alles Andere ist bestenfalls Nostalgie :-) Gruß Rainer
Mach eine FPGA-Implementierung. Dann bekommst du die Belegung der LUTs. Und jede LUT kannst du einfach mit 74xx nachbauen. Das ist dann eine riesen-Löterei, aber rein mechanisch. Zu LUT siehe auch https://electronics.stackexchange.com/questions/169532/what-is-an-lut-in-fpga oder direkt bei Xilinx, etwa https://www.xilinx.com/support/documentation/user_guides/ug384.pdf
Rainer V. schrieb: > Gerhard O. schrieb: >> Allerdings wäre ein solcher Ansatz lehrreich. >> Aber dann besser in CMOS Logik. > > Das ist jetzt natürlich große Geschmacksache. Und welchen Lerneffekt > sollte eine Umsetzung in TTL-Logik haben?? Du mußt die Logik der > Verschlüsselung doch auch im AVR oder wem auch immer realisieren. Das > heißt doch aber zuallererst, dass du verstanden haben mußt, was die > Maschine macht! Alles Andere ist bestenfalls Nostalgie :-) > Gruß Rainer Hallo Rainer, Stimmt. Mir wäre es eigentlich zu viel HW und Bauaufwand. Und meine VHDL Kenntnisse sind mittlerweile viel zu rostig geworden um da schnell etwas auf die Beine zu stellen. Abgesehen davon habe ich daheim keine FPGA HW und Programmiermöglichkeiten mehr zum rumspielen. Wenn sich die alten C Sourcen wieder finden lassen, werde ich sie bei Interesse hier posten. Mit dem PIC funktionierten die Schlüsseloperationen damals einwandfrei. Heute würde ich es aber auf einem Arduino laufen lassen. Aber vielleicht existiert schon eine Arduino Anwendung dafür. Aber im Augenblick habe ich keine Zeit für solche Ablenkungen;-) Bei der PIC Version konnte man die Walzen und Rotor Einstellungen frei wählen. Wie schon gesagt, hätte ich gerne lieber eine Fialka uC Version zum Spielen. Grüße, Gethard
> Mach eine FPGA-Implementierung. > Dann bekommst du die Belegung der LUTs. Und jede LUT kannst du einfach > mit 74xx nachbauen. Das ist dann eine riesen-Löterei, aber rein > mechanisch. Was nen Quatsch. Die 74er Serie gibt es aks "Baubloecke" die man in einem FPGA verdrahten kann. Allerdings muesste der TO dann das Dingens wirklich als Design mit den ollen TTL-Kaefern entwerfen. Wetten das er nach 10 min schon aufgibt?
Gerhard O. schrieb: > vielleicht existiert schon eine Arduino Anwendung dafür Gibt es im Store. "Enigma Simulator" Franklin Heath Ltd. Bevor ich eine Kiste 74er Schaltkreise verlöte, hätte ich schon längst nach einer App gesucht. Frage bleibt nur, ob sie nach Hause telefoniert. Bevor der To den Lötkolben für die 74er anheizt, wäre ein kleiner Logikplan nützlich. https://en.wikipedia.org/wiki/Karnaugh_map
Als Leerzeichen haben die Verschlüssler wohl das "X" genommen, aber dann schwächt man ja den algo noch mehr... :-O Wenn die Enigma ein Schmuckstück werden soll, würd ich in jede Walze nen modulo 26- Zähler einbauen, und die Verdrahtung hardwaremäßig vornehmen. Die "Walze" ist dann ein steckbarer Baustein und kann ausgetauscht werden, Problem gelöst. mfg
Und mal wieder ne Gelegenheit an Alan Turing zu erinnern. Die Briten schmücken sich noch heute mit seiner Genialität. Wie sie es ihm gedankt haben steht meist nur in sehr kleinen Buchstaben, viele wissen es gar nicht.
Och ist ja wirklich jammerschade, das Andy wieder den Zugang über "TOR" total vernagelt hat... :-O :-(( mfg
H.Joachim S. schrieb: > Und mal wieder ne Gelegenheit an Alan Turing zu erinnern. Die Briten > schmücken sich noch heute mit seiner Genialität. Wie sie es ihm gedankt > haben steht meist nur in sehr kleinen Buchstaben, viele wissen es gar > nicht. Ja!! Undank ist der Welten Lohn!! :-(( mfg
Wer nichts bauen möchte, hier ein Link: https://people.physik.hu-berlin.de/~palloks/js/enigma/enigma-u_v20.html
Wenn man aus nostalgischen Gründen eine alte Maschine nachbaut, möchte man einerseits möglichst nahe am Original bleiben, andererseits aber auch den Bastelaufwand in akzeptablen Grenzen halten. Da die Enigma (anders als bspw. ein Zuse-Rechner) ziemlich einfach aufgebaut ist, bietet sich hier ein 1:1-Nachbau mit elektromechanischen Komponenten an, womit man bei mäßigem Arbeitsaufwand sehr nahe am Original bleibt. Für solche Dinge eignet sich auch ein 3D-Drucker sehr gut. Noch einfacher ist IMHO nur eine Softwarelösung, die wahlweise auf einem PC, einem Mikroprozessor, einem FPGA oder einer auf EPROMs basierenden Zustandsmaschine implementiert werden kann. Da hier die mechanischen Arbeiten (Materialbearbeitung, Löten usw.) teilweise oder sogar komplett entfallen, spart man Arbeitsaufwand, bewegt sich aber weg vom Original. Eine Realisierung ausschließlich mit 74er-Bausteinen hingegen wird viel komplexer als das Original, was dem TE anfangs wohl nicht bewusst war. Damit bewegt man sich nicht nur vom Original weg, sondern steckt auch noch ein Vielfaches an Arbeit hinein. Für mich persönlich wäre dies deswegen keine Option (andere werden natürlich anders darüber denken). Spannender fände ich es ohnehin, statt einer Enigma eine Turing-Bomb nachzubauen, wobei ich mich da wegen der höheren Komplexität auf eine Softwarelösung beschränken würde. Aber auch dafür gibt es schon sehr gute Implementationen, wie bspw. diese hier: http://www.lysator.liu.se/~koma/turingbombe/bombe-simulator/ Dort gibt es übrigens auch sehr hübsche Simulationen der Enigma 3 und 4.
Yalu X. schrieb: > Noch einfacher ist IMHO nur eine Softwarelösung, Als App auch sehr schön, aber ich wiederhole es nochmals. Man weiß nie, ob fremde SW nach Hause telefoniert. Also nur Spielzeug! Herr Mielke hätte heute bestimmt eine schöne App ins Netz gestellt und die Eingaben hinten herum direkt ans MfS übertragen? Das spart viel Arbeit.
oszi40 schrieb: > Man weiß nie, ob fremde SW nach Hause telefoniert. Wieso fremd? Der TE möchte doch selber etwas basteln. Und meinst du, er möchte die Enigma, falls sie dann irgendwann läuft, wirklich zur Übertragung vertraulicher Nachrichten verwenden?
> MfS
Was ist an Google, Microsoft, Apple, Mozilla, Facebook, Cloudflare, ...
besser als das MfS?
Sie verkaufen Deine Daten meistbietend.
Bislang sind sie immer noch mit einem "Ups, das war bestimmt ein
Versehen und tut uns leid." davongekommen.
Das ein staatlich bestallter Datenschuetzer aus den Analyse(n) von
Betriebssystemen Konsequenzen fuer die Verbreitung in Deutschland
ableitet haette, ist auch noch nicht vorgekommen.
๑۩۞۩๑ schrieb: > Das ein staatlich bestallter Datenschuetzer aus den Analyse(n) von > Betriebssystemen Konsequenzen fuer die Verbreitung in Deutschland > ableitet haette, ist auch noch nicht vorgekommen. Solange nicht jeder sein Werkzeug wie einen Hammer fachlich ausreichend prüfen kann, ist es schwer von Datensicherheit zu sprechen. Das Suchmaschinen mehr finden als sie zeigen und manche Frage ausgewertet wird ist klar. Leider ist heute keiner mehr allein in der Lage eine sichere SW herzustellen, weil zu viele Köche den komplexen Brei verderben und zu wenige den Überblick über Millionen von Codezeilen haben werden.
oszi40 schrieb: > Überblick über Millionen von Codezeilen haben werden. ... und wenn jetzt einer z.B. MS od. Linux verbieten möchte, geht wahrscheinlich bald das Licht aus, weil alles irgendwo davon abhängig gemacht wurde.
๑۩۞۩๑ schrieb: >> MfS > > Was ist an Google, Microsoft, Apple, Mozilla, Facebook, Cloudflare, ... > besser als das MfS? Vielleicht daß besagte Firmen niemanden für Jahre in finstere Kerker sperren, misshandeln oder ermorden weil er die falsche Meinung vertritt? Solche Vergleiche sind einfach nur strunz-dumm! Oder gezielt platziert von ehemaligen Folterknechten um die damaligen Zustände zu relativieren. Ekelhaft!
๑۩۞۩๑ schrieb: >> MfS > > Was ist an Google, Microsoft, Apple, Mozilla, Facebook, Cloudflare, ... > besser als das MfS? Bis auf Mozilla sind das doch alles AGs. Sie gehören also nicht einem Staat sondern den Aktionären. Und wenn du die Firmenpolitik verändern möchtest, kaufst du dir (evtl mit Gleichgesinnten) entsprechend Aktien und bestimmst mit. Wenn man sich aber nicht um Fakten kümmert und handelt, sondern nur uninformiert herummeckert, der wird nie Dinge ändern können.
ich habe mal eine Walze der Kompaktheit horizontal dargestellt
1 | A B C D E F G H I J K L M N O P Q R S T U V W X Y Z |
2 | |
3 | Y T O D K P A E B J Z W N C H Q S X M G F U I L R V |
Jeder Buchstabe ist ja einem anderen fest zugeordnet also A->Y B->T usw. bei einer Betätigung, dreht sich das ganze um 1 weiter, also muss man ja einfach in seiner Tabelle immer nur eins runter, dann 1 runter +1 nach rechts, dann einmal runter +2 nach rechts, dann wieder eins runter +3 nach rechts.... natürlich alle Walzen untereinander (den Startpunkt der Walze per Offset eingeben,da diese ja verdreht werden können) irgendwann kommt unten die Umkehrwalze und es geht wieder zurück zum Steckbrett das auch nochmal fest ohne Rotation die Buchstaben verdreht. Programmiertechnisch sehe ich keinen so hohen Aufwand. Man braucht eine große Tabelle in der man sich per Pointer rumhangelt, es muss immer nur der Pointer geändert werden und am Schluss sieht man nach wo man in der Tabelle gelandet ist. Als Beispiel mit TEST und 1 Walze wäre das dann GPFI T=G E=K+1=P S=M+2=F T=G+3=I
Thomas O. schrieb: > Programmiertechnisch sehe ich keinen so hohen Aufwand. Eine Enigma per Microcontroller zu implementieren ist trivial. Sie in dazu völlig unpassenden 74xx ohne Tricks wie ROMs aufzubauen hingegen nicht so. Die wurde ja nicht für TTL Logikbausteine konstruiert, sondern als Elektromechanik. Das deckt sich nicht. Es fängt schon damit an, dass die gesamte Signalführung bidirektional arbeitet. Kabel und Kontakten ist das egal. Gattern nicht.
:
Bearbeitet durch User
Es deckt sich überhaupt nicht und macht dementsprechend keinen Sinn.
Thomas O. schrieb: > Jeder Buchstabe ist ja einem anderen fest zugeordnet also A->Y B->T usw. > bei einer Betätigung, dreht sich das ganze um 1 weiter Das bezweifle ich. M.W. dreht sich lediglich die erste Walze um eine Position. Nachdem diese eine Umdrehung vollzogen hat, also nach 26 Zeichen "überläuft", dreht sich die nächst höhere um eine Position. Bei drei Walzen sind das also 26^3 Permutationen. Ansonsten könnte man auf jede weitere Walze verzichten und nur mit einer arbeiten. Grüßle Volker
:
Bearbeitet durch User
Volker B. schrieb: > Das bezweifle ich. M.W. dreht sich lediglich die erste Walze um eine > Position. Nachdem diese eine Umdrehung vollzogen hat, also nach 26 > Zeichen "überläuft", dreht sich die nächst höhere um eine Position. Bei > drei Walzen sind das also 26^3 Permutationen. Wann ein Übertrag auf die nächste Walze statt findet ist nicht derart gleichmäßig. Da gibt es spezielle Kerben in den Walzen. Ein Übertrag findet nur bei bestimmten Stellungen statt.
Cyblord -. schrieb: > Wann ein Übertrag auf die nächste Walze statt findet ist nicht derart > gleichmäßig. Da gibt es spezielle Kerben in den Walzen. Ein Übertrag > findet nur bei bestimmten Stellungen statt. Danke für die Richtigstellung. Da habe ich wohl den Text im zugeh. Wiki zu wörtlich interpretiert: "Da sich bei jedem Tastendruck die Walzen ähnlich wie bei einem mechanischen Kilometerzähler weiterdrehen, ändert sich das geheime Schlüsselalphabet nach jedem Buchstaben." Es kam mir nur darauf an, zu erklären, dass es keinen Sinn ergibt, wenn sich alle Walzen synchron drehen würden. Grüßle Volker
Volker B. schrieb: > Es kam mir nur darauf an, zu erklären, dass es keinen Sinn ergibt, wenn > sich alle Walzen synchron drehen würden. Das ist korrekt, das hatte ich aber aus dem Post von Thomas auch so nicht rausgelesen.
Sehe ich das richtig, dass die Umsetzung der Ringstellung bisher noch nicht angesprochen wurde?
Percy N. schrieb: > Sehe ich das richtig, dass die Umsetzung der Ringstellung bisher noch > nicht angesprochen wurde? Ist die Ringstellung nicht einfach nur die Startposition aller Walzen?
Cyblord -. schrieb: > Ist die Ringstellung nicht einfach nur die Startposition aller Walzen? Falls ich das richtig verstanden habe, wurde dadurch sozusagen das Alphabet auf der Walze verschoben.
Percy N. schrieb: > Cyblord -. schrieb: >> Ist die Ringstellung nicht einfach nur die Startposition aller Walzen? > > Falls ich das richtig verstanden habe, wurde dadurch sozusagen das > Alphabet auf der Walze verschoben. Das geht eigentlich nicht. Jede Walze ist intern fest verdratet.
Cyblord -. schrieb: > Percy N. schrieb: > >> Cyblord -. schrieb: >> >>> Ist die Ringstellung nicht einfach nur die Startposition aller Walzen? >> >> Falls ich das richtig verstanden habe, wurde dadurch sozusagen das >> Alphabet auf der Walze verschoben. > > Das geht eigentlich nicht. Jede Walze ist intern fest verdratet. Richtig. Aber nach meinem Verständnis verschiebt der Ring das Alphabet gegenüber der Verdrahtung. Im Prinzip wäre das tatsächlich lediglich ein Offset auf die Walzenstellung, aber die Verschiebung der Schaltnocke geht in die Übertragungsfunktion mit ein. Diese sollte durch die Ringstellung gegenüber dem Alphabet verschoben werden. Soweit meine Vorstellung, sehr mutig auch 'Verständnis' genannt.
Percy N. schrieb: > Soweit meine Vorstellung, sehr mutig auch 'Verständnis' genannt. In diesem Detailgrad bin ich da leider auch raus. Was mir aber noch zur Enigma Simulation einfällt: Es gibt nicht nur Walzen sondern auch ein Steckbrett. Müsste auch irgendwie simuliert werden bzw. man kann es auch 1:1 direkt aufbauen.
:
Bearbeitet durch User
Cyblord -. schrieb: > Was mir aber noch zur Enigma Simulation einfällt: Es gibt nicht nur > Walzen sondern auch ein Steckbrett. Müsste auch irgendwie simuliert > werden bzw. man kann es auch 1:1 direkt aufbauen. Das habe ich extra außen vor gelassen. Das verwirklicht lediglich eine statische monoalphabetische Überschlüsselung, täglich wechselnd.
Schau dir bitte mal diese Seiten an, vielleicht kannst du aus diesen noch ein paar nützliche Tipps und Tricks für das Verständnis und den Aufbau entnehmen: ENIGMA <http://www.rotilom.com/F6IDT/enigma.htm> ENIGMA <http://users.telenet.be/d.rijmenants/index.htm> Schöne Grüße.
Ich habe hier ein Buch von 1986 ISBN: 9780715620687, 0715620681 The Radio Hacker's Code Book Von George Sassoon Darin ein Kapitel über Enigma3 und ein BASIC-Programm, das Enigma3 simuliert. https://www.google.de/books/edition/The_Radio_Hacker_s_Code_Book/_aG7AAAACAAJ?hl=de
@Volker: Ja so meinte ich das auch nach 26 Buchstaben dreht sich die 2te Walze auch wieder um 1 weiter, der Einfachheit halber, habe ich es nur mit einer Walze dargestellt. Man braucht eine große Tabelle mit insgesamt 8 Walzen, Umkehrwalze und dem Steckbrett und wählt eben 3 aus 8 Walzen aus und das Steckbrett. Dann geht es eben von z.B: Walze 3 auf 5 auf 8, Umkehrwalze und zurück durch 8, 5, 3 und dann zum Steckbrett.
Cyblord -. schrieb: > In diesem Detailgrad bin ich da leider auch raus. In dem Wikipedia-Artikel findet sich "b) Die Ringstellung Es gibt jeweils 26 verschiedene Ringstellungen (01 bis 26) für die mittlere und die rechte Walze. Der Ring der linken Walze trägt nicht zur Vergrößerung des Schlüsselraums bei, da seine Übertragskerbe kein Fortschalten einer noch weiter links befindlichen Walze bewirkt. Insgesamt sind 26² = 676 Ringstellungen relevant (entspricht etwa 9 bit)." Im Umkehrschluss bedeutet das, dass die Fortschaltung durch den Nocken am Ring bewirkt wird, dessen Lage an der Walze eben erst durch die Ringstellung definiert wird. Auch heißt es dort "Die Ringe (Ringstellung), ursprünglich erfunden bereits 1928 von Willi Korn,[56] und nicht, wie vielfach falsch publiziert, von seinem Kollegen Paul Bernstein,[57][58][59] bestimmen den Versatz zwischen der inneren Verdrahtung der Walzen und dem Buchstaben, zu dem der Übertrag auf die nächste Walze erfolgt. Außerdem dienten sie zum Schutz vor Spionage. So wurde verhindert, dass durch Ablesen der von außen sichtbaren Walzenstellung auf die interne Drehposition der Walzen geschlossen werden konnte."
Hier das Programm von 1986 und die Beschreibung dazu. Es lief anscheinend auf einem Z80-Rechner "Sharp PC 3201" https://www.old-computers.com/museum/photos.asp?t=1&c=811&st=1
:
Bearbeitet durch User
Im Anhang ist die Quelle meines damaligen Enigma PIC Versuchs dem der PIC Code zugrunde lag. Der verschlüsselte Text laesst sich mit anderen Enigma Simulatoren wieder entschlüsseln oder die umgekehrte Operation.
:
Bearbeitet durch User
Falls jemand mit AES spielen möchte ist im Anhang ein kleines AES Test Programm (CFB) das auf einem DSPIC33 getestet wurde. Man kann damit ver- und entschlüsseln. Der Schlüssel ist 128-Bit.
Ob ich da eine 26er-Scheibe um 0...26 rotiere, oder einen Summanden von 0...26 (verwürfelt) bereitstelle ist doch ähnlicher Aufwand. Wenn man TTL-Held sein will, ohne je irgenwelche Logik kapiert zu haben, ist das in Scheibentechnik, oder Relais-, oder Röhren-, oder Transistor-, oder Logik-IC-, oder µC-Herangehensweise alles vergleichbar unmöglich. Man muss das Problem erfassen und in die gewählte Technik umsetzen können. Und wer's nicht kann, schafft es eben nicht. GANZ EINFACH. Tschüs.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.