Kursvorlage
Geheimschriften programmieren
Caesar-Verschlüsselung, Substitutionschiffre, Vigenère und einfache Hashfunktionen in Python.

Didaktische Zielsetzung
Diese Vorlage ermöglicht eine strukturierte Einführung in grundlegende Verfahren der Kryptografie durch deren algorithmische Umsetzung in Python. Fachliche Kompetenzen werden über die Implementierung klassischer Verschlüsselungsverfahren sowie einfacher Hashfunktionen aufgebaut und mit zentralen Programmierkonzepten wie Schleifen, Bedingungen und Datenstrukturen verknüpft. Der Zusammenhang zwischen Modellierung kryptografischer Verfahren, deren strukturierter algorithmischer Umsetzung und der konkreten Implementierung im Code wird dabei systematisch hergestellt. Fachlich lässt sich die Vorlage im Bereich algorithmisches Modellieren und Datenverarbeitung verorten.
Kompetenzschwerpunkte
- Umsetzung der Caesar-Verschlüsselung mittels ord()/chr() und Modulo-Logik für zyklische Buchstabenverschiebung.
- Implementierung der Caesar-Entschlüsselung unter Nutzung von Funktionswiederverwendung und rückwärtsgerichteter Verschiebung.
- Systematisches Durchprobieren möglicher Schlüssel (Brute-Force) zur Entschlüsselung mit Schleifen und formatierter Ausgabe.
- Realisierung einer Substitutionschiffre über Index-Mapping mit geheimem Alphabet sowie Prüfung auf Eindeutigkeit und Länge.
- Aufbau eines Reverse-Mappings mittels Dictionary zur Entschlüsselung substitutionsbasierter Verfahren.
- Umsetzung der Vigenère-Verschlüsselung mit keywordbasierter Verschiebung und positionsabhängiger Modulo-Berechnung.
- Entwicklung einer einfachen Hashfunktion zur Passwortprüfung durch Addition von Buchstabenwerten (A=1..Z=26).
Struktur der Bausteine
Caesar-Verschlüsselung (A–Z) in Python
Einführung in die algorithmische Umsetzung einer zyklischen Buchstabenverschiebung für Großbuchstaben unter Verwendung von ord()/chr() und Modulo.
Caesar entschlüsseln (Decrypt-Funktion)
Ergänzung einer Entschlüsselungsfunktion als Umkehrung der Verschlüsselung unter Nutzung wiederverwendbarer Funktionslogik.
Caesar knacken: Brute-Force 1–25
Anwendung von Schleifen zur systematischen Erprobung aller möglichen Schlüssel und Ausgabe potenzieller Klartexte.
Substitutionschiffre: Geheimes Alphabet
Umsetzung einer substitutionsbasierten Verschlüsselung über Index-Mapping mit Validierung eines geheimen Alphabets.
Substitutionscode entschlüsseln mit Dictionary
Aufbau eines automatisierten Reverse-Mappings mittels Dictionary zur Rückführung von Geheimtext in Klartext.
Vigenère-Verschlüsselung mit Keyword
Implementierung einer positionsabhängigen Verschlüsselung auf Basis eines Schlüsselworts und Modulo-Berechnung.
Vigenère entschlüsseln mit Keyword
Entwicklung der Umkehrfunktion unter Beibehaltung der Keyword-Index-Logik und rückwärtsgerichteter Verschiebung.
Einfacher Passwort-Hash & Mini-Login
Einführung in das Prinzip von Hashfunktionen durch Addition von Buchstabenwerten und Vergleich gespeicherter Hashwerte.
Inhalte im Überblick
| Baustein | Schwerpunkt | Dauer |
|---|---|---|
| Caesar-Verschlüsselung (A–Z) in Python | Zyklische Verschiebung von Großbuchstaben mit ord()/chr() und Modulo; Nicht-Buchstaben unverändert. | 35 min |
| Caesar entschlüsseln (Decrypt-Funktion) | Entschlüsselung durch Rückwärtsverschiebung und Funktionswiederverwendung. | 35 min |
| Caesar knacken: Brute-Force 1–25 | Iteration über Schlüssel 1–25 mit formatierter Ausgabe möglicher Klartexte. | 35 min |
| Substitutionschiffre: Geheimes Alphabet | Permutation des Alphabets mit Index-Mapping und Validierungsprüfung. | 35 min |
| Substitutionscode entschlüsseln mit Dictionary | Reverse-Mapping mittels Dictionary zur Entschlüsselung. | 35 min |
| Vigenère-Verschlüsselung mit Keyword | Keywordbasierte Verschiebung mit Modulo; Nicht-Buchstaben unverändert. | 35 min |
| Vigenère entschlüsseln mit Keyword | Rückwärtsanwendung des keywordbasierten Shifts. | 35 min |
| Einfacher Passwort-Hash & Mini-Login | Addition von Buchstabenwerten und Vergleich gespeicherter Hashwerte. | 35 min |
Die klar gegliederten Bausteine ermöglichen eine transparente Zielorientierung und lassen sich flexibel in bestehende Unterrichtsreihen integrieren.
Ein Demo-Zugang erlaubt die Erprobung der Vorlage und deren Anpassung an die jeweilige Lerngruppe im Unterrichtskontext.