|
|
# Anforderungskatalog für das Projekt: Enigma
|
|
|
|
|
|
| Kriterium | Bedingungen | Notizen |
|
|
|
| ----- | ----- | ----- |
|
|
|
| Es soll eine Nachricht verschlüsselt werden | Verschlüsselung nach Enigma Algorithmus | Zu finden im Internet http://kryptografie.de/kryptografie/chiffre/enigma.htm |
|
|
|
| Erstellung eines Codebuches Tagesschlüssel werden bereit gestellt Walzennr. + Pos., Startpunkte + Umspringpunkte für Entschlüsselung des Spruchschlüssels |
|
|
|
| Codebuch muss allen Clients bekannt sein | | |
|
|
|
| | | |
|
|
|
| Grafische Oberfläche | | |
|
|
|
| GUI: Es muss eine Möglichkeit geben, Text einzugeben | 26 Buchstaben von A-Z | Trennung der Wörter mit "X" |
|
|
|
| GUI: Lampenfeld | 26 Leuchten A-Z | |
|
|
|
| GUI: Steckerbrett | Max. 10 Steckverbindungen (26 Buchstaben paarw. Vertauscht) | |
|
|
|
| GUI: Möglichkeit die Walzen einzustellen | Walzen einzeln anordnen | |
|
|
|
| GUI: Möglichkeit die Ringe einzustellen | Ringe (Umspringpunkte) setzen für die einzelnen Walzen | |
|
|
|
| GUI: Es muss ein Spruchschlüssel hinterlegt werden | Drei Buchstaben eingeben, für jede Walze einen | Mit dem Spruchschlüssel wird die Nachricht zusätzlich verschlüsselt |
|
|
|
| GUI: Klartext, verschlüsselter Text | Anzeigen des Klar/Verschlüsselten Textes | Klartext und chiffrierter Text werden dem Nutzer angezeigt |
|
|
|
| GUI: Möglichkeit den Text zu senden | | chiffrierter Text wird in Morsezeichen übersetzt |
|
|
|
| GUI: Möglichkeit zur Löschung des letzten Zeichens | Setzt die Walzenstellungen um 1 zurück und löscht lzt. Bst. aus Anzeigefeldern | |
|
|
|
| | | |
|
|
|
| Verschlüsselung | | |
|
|
|
| Walzen | 3 Walzen müssen zur Verschlüsselung genutzt werden | 5 Walzen zur Auswahl |
|
|
|
| Reflektor | | |
|
|
|
| Steckverbindung | Bis zu zehn zusätzliche Buchstaben Vertauschungen werden angegeben | 13 mgl. Steckverbindungen |
|
|
|
| Ringe | Ändern den Umspringpunkt der Walzen (Notch) | 3 Ringe |
|
|
|
| Spruchschlüssel | Ändert die Start Reihenfolge der Walzen | |
|
|
|
| Spruchschlüssel verschlüsseln | "Spruchschlüssel wird doppelt in die Nachricht eingefügt (ABCABC) und mit dem Tagescode verschlüsselt. Der Rest der Nachricht wird dann mit der Korrektur des Spruchschlüssels behandelt" | |
|
|
|
| Verschlüsseln der Nachricht | Nachricht wird mit den korrigierten Einstellungen (Spruchschlüssel) verschlüsselt | |
|
|
|
| Übergeben der Nachricht an den Datenaustausch | Verschlüsselte Botschaft wird an den Funker übergeben | |
|
|
|
| | | |
|
|
|
| Datenaustausch (Funker) | | |
|
|
|
| Nachricht konvertieren in Morsecode | Umwandlung der Nachricht in Morsecode nach Morseguidlines | https://de.wikipedia.org/wiki/Morsezeichen |
|
|
|
| Speichern der Nachricht in einer Datenbank | Sender fügt die Nachricht (im Morsecode) in die bereitgestellte Datenbank ein | |
|
|
|
| Abrufen der Nachricht | Empfänger ruft die Nachricht aus der Datenbank ab | |
|
|
|
| Konvertieren der Nachricht in verschlüsselten Text | Empfänger konvertiert von Morsecode in verschlüsselte Nachricht | |
|
|
|
| | | |
|
|
|
| Entschlüsselung | | |
|
|
|
| Walzen müssen laut Codebuch eingestellt werden | Einstellungen aus dem Codebuch auslesen und einstellen | |
|
|
|
| Steckbrett muss anhand des Codebuches eingestellt werden | Setzen der maximal 10 Steckverbindungen | |
|
|
|
| Aus dem verschlüsselten Text muss der Spruchschlüssel extrahiert werden | Die ersten sechs Stellen der Nachricht enthalten den Spruchschlüssel gedoppelt | |
|
|
|
| Anpassen der Walzeneinstellung anhand des Spruchschlüssels | Walzen Einstellung muss korrigiert werden | |
|
|
|
| Verschlüsselter Text muss von Enigma in Klartext konvertiert werden | Anhand der Walzeneinstellungen sowie des Steckbrettes wird die Nachricht dekodiert | |
|
|
|
| Anzeigen des Entschlüsselten Textes | Ausgabe des entschlüsselten Textes an den Benutzer | |
|
|
|
| | | |
|
|
|
| Qualitätskriterien | | |
|
|
|
| Orientierung an den JavaCodeConventions | | |
|
|
|
| Dokumentation über Kommentare und Javadoc | | |
|
|
|
| Die Oberflächen dürfen nicht blockiert werden max. Blockierungszeit 250 ms | | |
|
|
|
| | | |
|
|
|
| Sonstiges | | |
|
|
|
| Präsentation 15 Min Länge | Alle Informationen in einem Dokument zusammengefasst | | |
|
|
\ No newline at end of file |