Dies ist eine alte Version des Dokuments!
LU05.A06 - Vigénere-Verschlüsselung programmieren
Lernziele
- Ich kann den Vigénere-Algorithmus mittels einer Programmiersprache umsetzten.
Rahmenbedingungen
- Zeitbudget: 40 Minuten
- Sozialform: Einzelarbeit
- Hilfsmittel:
- Lernvideo Studyflix: Vigénere-Verschlüsselung
- Programmierumgebung
- Codeeditor Ihrer Wahl
- Programmiersprachen: JS, Python, BASH, SHELL, …
- Keine AI oder Google-Suchen → Sie haben genug Programmierkenntnisse, um den Algorithmus selbst zu programmieren.
- Erwartetes Ergebnis: Script, das eine Vigénere-Verschlüsselung realisiert. In beide Richtungen: Klartext → Chiffretext, Chiffretext → Klartext.
Ausgangslage
Die Vigenère-Verschlüsselung ist ein historisches, symmetrisches Verschlüsselungsverfahren aus dem 16. Jahrhundert. Im Gegensatz zur einfachen Caesar-Verschlüsselung, bei der jeder Buchstabe um den exakt gleichen Wert verschoben wird, nutzt Vigenère ein Schlüsselwort. Dadurch ändert sich der Verschiebewert von Buchstabe zu Buchstabe, was das Verfahren als polyalphabetisch klassifiziert [Quelle: Wikipedia.com]
Arbeitsauftrag
Schreiben Sie ein Script bzw. Programm, das eine Nachricht mit Hilfe der Vigenère-Verschlüsselung verschlüsselt und entschlüsselt.
Anforderungen:
- Das Programm soll
- vom Benutzer eine Nachricht (Text) einlesen.
- vom Benutzer einen das Keywort einlesen
- Das Keywortn auf die Länge des Plaintextes anpassen.
- Gross- und Kleinbuchstaben getrennt verarbeiten (A–Z, a–z), alle anderen Zeichen unverändert lassen.
- Implementieren Sie zwei Funktionen:
- verschluesseln(text, shift) → gibt den verschlüsselten Text zurück
- entschluesseln(text, shift) → gibt den entschlüsselten Text zurück
- Das Programm soll den verschlüsselten Text ausgeben, dann den entschlüsselten Text, um zu zeigen, dass die ursprüngliche Nachricht wiederhergestellt wird
** Beispiel:**
Eingabe: Hallo Welt Keyword: Ist Verschlüsselt: Psetg Pmdm Entschlüsselt: Hallo Welt
Hinweis
- Das Keywort muss Wiederholt werden, wenn es zu kurz ist.
- Das Keywort muss gekkürzt werde, wenn es zu lang ist.
