Auch heute werden vielen Nachrichten verschlüsselt, z.B. im Internet, wenn man Online-Banking o.Ä. macht.
Deine Aufgabe ist es jetzt, eine Verschlüsselungsmaschine zu programmieren, die auf einen Klick Deine geheime Nachricht so verschlüsselt, dass sie keiner mehr versteht!
Denke aber daran, auch eine Entschlüsselungsmaschine zu programmieren, damit dein Freund / Deine Freundin Deine Nachricht auch lesen kann.
Hierfür benötigst Du eine umfangreichere Programmierumgebung als Scratch. Sie heißt BYOB und funktioniert genauso einfach wie Scratch, hat aber einige Befehle mehr. Am wichtigsten für Dich sind dabei jetzt die Befehle, mit denen Du Buchstaben in Zahlen umwandeln kannst. Du findest Sie unter "Operatoren" und dort "ASCII-Wert von ..." und "ASCII ... als Buchstabe". Hier wird gemäß dem "ASCII-Code"** jedem Buchstaben eine Zahl zugeordnet.
* Ändert das Programm so, dass man möglichst schnell viele Codes durchprobieren kann, und macht einen zweiten Contest!
Tipp: Gehe zweischrittig vor:
- Baue in das Programm einen Abschnitt ein, der dafür sorgt, dass aus Kleinbuchstaben Großbuchstaben werden.
- Wenn das geklappt hat, füge noch einen Abschnitt ein, der dafür sorgt, dass, wenn der Code eines Buchstabens hinter dem großen Z entsteht, daraus wieder ein Buchstabe am Anfang des Alphabets entsteht. Also aus "Eckige Klammer auf" ein "A", aus dem Backslash ein "B" usw.
Prinzip: Verwende statt eines festen Wertes ein Schlüsselwort. Lass Deine Enigma die ASCII-Codes des Schlüsselwortes zu denen Deines Geheimtextes Buchstabe für Buchstabe addieren. Da das Schlüsselwort wahrscheinlich kürzer ist als der Geheimtext, wiederhole es einfach immer wieder.
Beispiel:
Geheimtext "Alte Fabrikhalle"
Schlüsselwort: "Papagei"
(Erst Großbuchstaben erstellen)
Dann: ASCII von A = 65; ASCII von P=80; 65+77 = 142, das ist zu groß, also 26 abziehen, immer noch zu groß, also nochmal 26 abziehen. Das ergibt 90, also ein Z aufschreiben.
Weiter: ASCII von L (zweiter Buchstabe von ALTE)= 76; ASCII von A (zweiter Buchstabe von PAGAGEI=65; 76+65 = 141, das ist zu groß, also 26 abziehen, immer noch zu groß, also nochmal 26 abziehen. Das ergibt 89, also ein Y aufschreiben.
...
Viel Erfolg!
* Mehr dazu findest Du, wenn Du ENIGMA bei Google eingibst.
** ASCII: American Standard Code for Information Interchange. Eine Übersicht findest Du
hier.