Wie kann ich mit Verschlüsseln Vertraulichkeit herstellen? (11 Stunden)

In dem vorangegangenen Lernabschnitt wurde die Leitfrage aufgeworfen, wie bei der E-Mail- Kommunikation Vertraulichkeit hergestellt werden kann. Die Antwort auf diese Frage liegt nahe: Verschlüsselung! Taucht man  tiefer in das Gebiet der Kryptographie ein und setzt es mit dem Informatiksystem E-Mail in Verbindung, so stößt man auf weitere Probleme, deren Lösung Aufgabe der Informatik war (und auch zukünftig sein wird).

Die Schülerinnen und Schüler lernen in diesem Abschnitt der Unterrichtseinheit zunächst klassische Verschlüsselungsverfahren kennen. Dabei erkennen sie – indem sie sich selbst als Kryptoanalytiker versuchen – dass selbst das „Knacken“ komplexer Verschlüsselungen mittels Logik, Kombinatorik und Mathematik mit etwas übung leicht durchzuführen ist. Dabei erzeugt der Wille der Schülerinnen und Schüler, verschlüsselte Inhalte zu entschlüsseln, erfahrungsgemäß eine hohe Motivation.
Die Behandlung der symmetrischen Verschlüsselungsverfahren endet mit der Erkenntnis, dass es ein Verfahren existiert, das erwiesenermaßen nicht zu entschlüsseln ist („One-Time-Pad“, siehe unten). Die kritische Stelle dieser Verschlüsselung liegt jedoch nicht im Verfahren selbst, sondern in der übermittlung des Schlüssels. Während in der realen Welt an Handgelenke gekettete Koffer als Transportmittel für Schlüssel eine gewisse Sicherheit bieten mögen, so ist dies mit dem Blick auf den Kontext – E-Mail und Internet – natürlich keine Option.

Der Einstieg in die asymmetrischen Verschlüsselungsverfahren, die den Austausch von Schlüsseln auf einem geheimen Kanal erübrigen, findet anhand des Diffie-Hellmann-Verfahrens statt. Für die Erarbeitung des Verfahrens im Unterricht genügen eine Box und zwei Vorhängeschlösser: Die Schülerinnen und Schüler erhalten  die Aufgabe, eine Nachricht an ihre Mitschüler zu senden, ohne dass die Box von einer dritten Partei auf dem Transportweg geöffnet werden kann.

Im letzten Teil des Lernabschnitts werden aktuelle asymmetrische Verfahren am wichtigsten Beispiel RSA erarbeitet. Um die Schülerinnen und Schüler für die Angriffsmöglichkeiten, die auch dieses Verfahren bietet, zu sensibilisieren werden die mathematischen Grundlagen des Verfahrens behandelt und Angriffsmöglichkeiten von RSA aufgezeigt (Stichwort: Primzahlfaktorisierung). Am Ende des Lernabschnitts ist somit die Leitfrage beantwortet, wie bei der E-Mail-Kommunikation absolute Vertraulichkeit gewährleistet werden kann – es bleiben noch die Fragen nach der Sicherung von Authentizität und Integrität der elektronischen Post, die in dem nachfolgenden Lernabschnitt 4 beantwortet werden.

Sachanalyse

Die Forderung nach Vertraulichkeit einer Nachricht lässt sich erfüllen, wenn die Nachricht so verschlüsselt wird, dass nur der Empfänger der Nachricht diese wieder entschlüsseln kann. Bei den einfachen  „klassischen“ Verfahren lassen sich die Substitution bei denen Zeichen des Klartexts durch andere Zeichen ersetzt werden von der Transposition unterscheiden, bei denen die Zeichen des Klartexts lediglich in ihrer Reihenfolge vertauscht werden. Aus Gründen der Reduktion werden in dieser Unterrichstsreihe Transpositionsverfahren nicht besprochen, bei Interesse und zusätzlicher Zeit bieten sich optionale Exkurse zur Skytale und Fleißnerschen Scheibe an.

Einfache Substitutionssverfahren wie das Caesar-Verfahren arbeiten mit der Verschiebung von kompletten Alphabeten, ohne die Reihenfolge der Zeichen zu variieren. So lässt sich eine mit Caesar verschlüsselte Nachricht in 25 Versuchen durch systematisches Ausprobieren auch ohne Kenntnis des Schlüssels knacken.

Werden die Zeichen des Geheimtextalphabets jedoch in beliebiger Reihenfolge arrangiert, so erhöht sich die Anzahl möglicher Zuordnungen von 25 beim Caesar-Verfahren erheblich:

26! = 403.291.461.126.605.635.584.000.000.

Nimmt man an, dass ein Computer zur Anwendung eines Schlüssels 0,01 Sekunden benötigt, so würde ein systematisches Ausprobieren sämtlicher Schlüssels 4.032.914.611.266.056.355.840.000 Sekunden dauern. Da ein Jahr 60 ∙ 60 ∙ 24 ∙ 365 = 31536000 Sekunden hat, würde das systematische Ausprobieren sämtlicher Schlüssel 127.882.883.411.531.467 Jahre dauern. Bedenkt man, dass die Erde ca. 4.600.000.000 Jahre alt ist, erweist sich das Vorgehen als praktisch unmöglich!

Bei Verfügbarkeit längerer Textpassagen lassen sich jedoch auf Grundlage einer Häufigkeitsanalyse Codezeichen entsprechend der in der Zielsprache typischen Häufigkeit Klartextzeichen zuordnen und die Verschlüsselung so knacken. Diese Erkenntnis hat zur Entwicklung polyalphabetischer Verfahren wie z. B. dem Vigenère-Verfahren geführt . Hierbei wird bei jedem Buchstaben das Caesar-Verfahren mit einem anderen Schlüsselbuchstaben angewendet, es handelt sich sozusagen um ein Multi-Caesar-Verfahren. Die wechselnden Schlüsselbuchstaben werden in einem Schlüsselwort zusammengefasst. Wenn das Schlüsselwort allerdings zu kurz gewählt wurde, lässt sich auch eine längere, mit dem dem Vigenère-Verfahren verschlüsselte Nachricht knacken, z. B. durch die Analyse von Parallelstellen (Kasiski-Test). Ist die Länge des Schlüssels erst einmal bestimmt, kann der Text in einzelne Teile zerlegt werden, die dann nur noch mit dem selben Schlüsselbuchstaben verschlüsselt sind und daher leicht entschlüsselt werden können.

Sind die Schlüsselwörter jedoch länger als der Klartext, zufällig gewählt und werden nur einmalig verwendet (Prinzip One-Time-Pad), so garantiert das Verfahren 100%ige Sicherheit. Aufbewahrung und Transport der geheimen Schlüsselwörter, die Absender und Empfänger gleichermaßen benötigen, stellte selbst für Geheimdienste im 20. Jahrhundert eine große Herausforderung dar. Mit der asymmetrischen Kryptographie wurden in der zweiten Hälfte des 20. Jahrhunderts Verfahren entwickelt, die ohne den vorherigen Austausch geheimer Schlüssel auskommt. Das bekannteste Verfahren RSA wird heute in vielen Web-Sicherheits-Technologien wie SSL/TSL benutzt, um Sitzungsschlüssel für eine symmetrische Verschlüsselung auf sicherem Wege auszutauschen.

Standardbezug

Die Schülerinnen und Schüler …

  • … erkennen die Unsicherheit einfacher Verschlüsselungsverfahren.
  • … strukturieren Sachverhalte durch zweckdienliches Zerlegen und Anordnen.
  • … kennen Algorithmen zum Lösen von Aufgaben und Problemen aus verschiedenen Anwendungsgebieten und lesen und interpretieren gegebene Algorithmen.

Weiterführende Literatur zu klassischen Krypto-Verfahren

Optionaler Einstieg:
Der Goldkäfer  (eine zusätzliche Doppelstunde)

Eine sehr anschauliche und zugleich spannend beschriebene Anwendung eines Substitutionsverfahrens sowie der Kryptoanalyse durch Häufigkeitsanalyse findet sich in der Geschichte Der Goldkäfer (The Gold-Bug) von Edgar Allan Poe. Dieser Abschnitt der Unterrichtseinheit stellt einen optionalen Einstieg in das Thema Verschlüsselung dar und benötigt erfahrungsgemäß eine Doppelstunde. Die im „Goldkäfer“ durchgeführte Dechiffrierung durch den Helden der Geschichte basiert auf einem für die Kryptoanalyse wichtigen Verfahren: der Häufigkeitsanalyse. Ausgehend von der Analyse erschließt sich der Geheimtext durch die Anwendung von Heuristiken, die auf dem Aufbau von Sprache basieren. Die Schülerinnen und Schüler erhalten dabei zunächst nur einen Teil des Textes, der den Lösungsweg zur Dechiffrierung zunächst ausblendet. Aufgabe ist es, nachdem die Häufigkeitsanalyse durchgeführt wurde, selbst Heuristiken zu entdecken, die der Entschlüsselung des Geheimtextes dienen.

Das Auszählen der Häufigkeit der Codezeichen sollte zur Beschleunigung des Verfahrens arbeitsteilig durchgeführt und die Ergebnisse in einer Folie gesammelt werden. Alternativ zum manuellen Auszählen lässt sich die Häufigkeit von Zeichen eines Codes auch gut mit dem Werkzeug CrypTool ermitteln:

  • Chiffre als Textdatei öffnen oder direkt in das Klartext-Textfeld eingeben,
  • dann den Menüpunkt Analyse > Werkzeuge zur Analyse > Histogramm wählen.

Auf Grundlage eines Vergleichs des Ergebnis mit der durchschnittlichen Buchstabenhäufigkeit im Deutschen können dann Vermutungen entwickelt werden, die über ein zeichenweises Ersetzen der Zeichen überprüft werden können:

  • Menüpunkt Analyse > Symmetrische Verschlüsselung (klassisch)
    > Manuelle Analyse > Substitution wählen

Falls der „Goldkäfer“ nicht als Einstieg in den Lernabschnitt gewählt, sondern nur das Caesar-Verfahren behandelt wird, so sollte in der Caesar-Stunde die Häufigkeitsanalyse als Lösungsmöglichkeit für verschlüsselte Texte behandelt werden. Grund dafür ist, dass das Knacken beliebiger monoalphabetischer Substitutionscodes durch die Häufigkeitsanalyse die Motivation für die Entwicklung von polyalphabetischen Verschlüsselungen darstellte. Möchte man diese wiederum knacken, so muss man sie zunächst auf eine monoalphabetische Verschlüsselung reduzieren, um sie durch eine Häufigkeitsanalyse angreifbar zu machen. Ist für die Unterrichtseinheit genug Zeit vorhanden, empfehlen wir den „Goldkäfer“ als Einstieg in die Verschlüsselung zu wählen – nicht zuletzt weil die Geschichte über Piraten und vergrabene Schätze bei den Schülerinnen und Schülern Spannung, Neugier und somit auch Motivation erzeugt.

=> Verlaufsplanung Der Goldkäfer

Material

Software

Stunden 6/7:
Monoalphabetische Kryptographie – Caesars Geheimcode

Die Schülerinnen und Schüler werden aufgefordert, sich gegenseitig mit Hilfe von je zwei untereinander angeordnet und seitlich gegeneinander verschoben Doppelalphabet-Streifen verschlüsselte Nachrichten per E-Mail zuzusenden und erhaltene Nachrichten zu entschlüsseln. Dabei lernen die Schülerinnen und Schüler erste Fachbegriffe aus der Kryptologie kennen und wenden diese sachgerecht an.

In einem zweiten Arbeitsauftrag sollen die Schülerinnen und Schüler versuchen, eine Nachricht auch ohne Kenntnis des Schlüssels zu entschlüsseln. Hier werden sie erfahren, dass mit dem Caesar-Verfahren verschlüsselte Nachrichten sich durch Ausprobieren aller möglichen 25 Abstände mit vertretbarem Aufwand knacken lässt. Falls für den Einstieg in die Verschlüsselung nicht die optionale Doppelstunde „Der Goldkäfer“ gewählt wird, so muss an dieser Stelle auch die Häufigkeitsanalyse als Methode zum Entschlüsseln monalphabetischer Verschlüsselungen eingeführt werden (siehe oben).

Abschließend sollte unter Einsatz des Werkzeugs Krypto 1.5 gezeigt werden, wie das Ausprobieren verschiedener Schlüssel mit Hilfe des Computers drastisch beschleunigt wird.

Optional kann das Caesar-Verfahren anschließend auch als Programm umgesetzt werden. Der Vorteil daran ist, dass anhand der Thematik „Verschlüsselung“ Programmierkonzepte eingeführt werden können. Es besteht dabei jedoch auch die Gefahr, dass der rote Faden der Unterrichtseinheit verloren geht, da erfahrungsgemäß die Programmierung neue Probleme und Fragen aufwirft, die mit den zentralen Fragestellungen der Unterrichtseinheit keine Verbindung besitzen. Wenn die klassische Kryptographie mit übungen zur Programmierung verbunden werden soll, erscheint es uns daher sinnvoller, dies in einer vorausgehenden Unterrichtsreihe umzusetzen.

=> Verlaufsplanung Stunde 6/7

Material

Software

Stunden 8:
Polyalphabetische Kryptographie – Vigenère und One-Time-Pads

Die Erfahrung, dass auch ein beliebiger monoalphabetischer Substitutionscode durch eine Häufigkeitsanalyse geknackt werden kann führte zu der Idee von Blaise de Vigenère, die Zeichen eines Textes abwechselnd mit verschiedenen Abständen von Geheimtextalphabet und Klartextalphabet zu verschlüsseln. Ein Schlüsselwort bestimmt, mit welchem Geheimtext- alphabet ein Zeichen an einer bestimmten Position im Klartext verschlüsselt wird. Insgesamt werden so viele Geheimtextalphabete verwendet, wie das Schlüsselwort verschiedene Zeichen enthält, es handelt sich also um ein polyalphabetisches Verfahren.

Das Werkzeug Krypto 1.5  bietet eine sehr übersichtliche Animation des Viginère-Verfahrens. Als Arbeitsauftrag sollten die Schülerinnen und Schüler aufgefordert werden, eine Nachricht, die sie per E-Mail verschicken wollen, mit Krypto 1.5 unter dem Menüpunkt Demos >> Vigenère-Verschlüsselung zu verschlüsseln und dabei die Animation  zu beobachten um das Vorgehen zu erklären. Die verschlüsselte Nachricht kann einfach aus dem Chiffre-Feld von Krypto 1.5 in den E-Mail-Client kopiert bzw. aus dem E-Mail-Client zum entschlüsseln in das Chiffre-Feld von Krypto 1.5 kopiert werden. Der „Arbeitsbogen Häufigkeitsanalyse mit Vigenere verhindern“ bietet geeignete Arbeitsaufträge, durch die die Schülerinnen und Schüler sich die Funktionsweise des Verfahrens anhand der Animation erschließen.

Das Verfahren wurde lange Zeit als sicher angesehen. Wird das Schlüsselwort bei der Verschlüsselung längerer Textpassagen jedoch oft genug angewendet, so treten in der Chiffre aufgrund der in einer Sprache typischen Buchstabengruppen (Bi- und Trigramme) oder auch häufig auftretender kurzer Wörter wie z. B. Artikel wiederkehrende Zeichenkombinationen auf, auf deren Grundlage auf die Länge des Schlüsselwortes geschlossen werden kann. Ist die erst einmal gelungen, so lässt sich auf der Menge der Zeichen, die mit der gelichen Position des Schlüsselworts verschlüsselt wurden jeweils eine Häufigkeitsanalyse durchführen.

Mit dem Werkzeug CrypTool lässt sich zeigen, dass auch diese Verschlüsselung geknackt werden kann (Menü Analyse >> Symmetrische Verschlüsselung (klassisch) >> Chyphertext Only >> Vigenère). So könnte z.B. die Lehrkraft eine mit Vigenere verschlüsselte E-Mail mit einem spannenden Betreff an alle Schülerinnen und Schüler senden, die offenbar aus Versehen an sie gelangte. Die Schülerinnen und Schüler wollen natürlich die Nachricht entschlüsseln und werden in diesem Moment auf die Möglichkeit aufmerksam gemacht, mit CrypTool die Chiffre zu knacken (Die gesuchte Person ist Blaise de Vigenere – das müssen die Schülerinnen und Schüler dann wiederum selbst herausfinden).

Aus dieser statistischen Angriffsmöglichkeit folgt die Schlussfolgerung, dass sie bei einer sicheren Verschlüsselung mit dem Vigenère-Verfahren das Schlüsselwort sich – bezogen auf den Klartext – nicht wiederholen darf, d.h. seine Länge sollte größer als die der verschlüsselten Nachricht sein. Außerdem sollte das Schlüsselwort selbst nicht ein natürlichsprachliches Wort sondern eine zufällig erzeugte Zeichenfolge sein, die jeweils nur ein einziges Mal eingesetzt werden darf. Dieses Prinzip (One-Time-Pad) wurde z.B. von Agenten im Kalten Krieg eingesetzt (Ein interessanter Bericht zu von Funkern entdeckten merkwürdigen Zahlencodes: http://www.astrosol.ch/numberstations/ ). Das One-Time-Pad verhindert somit Angriffe auf die Verschlüsselung mittels statistischer Verfahren. Die Schwachstelle des Verfahrens liegt jedoch in der übermittlung des Schlüssels. Die Beseitigung dieser Angriffsmöglichkeit wird durch asymmetrische Verschlüsselungsverfahren ermöglicht, die in den folgenden Stunden des Lernabschnitts behandelt werden.

=> Verlaufsplanung Stunde 8

Material

Software

Optionaler Exkurs:
Vigenère per Hand knacken (eine zusätzliche Stunde)

Das Knacken einer Vigenère-Verschlüsselung per Hand ist – selbst mit einem arbeitsteiligen Vorgehen – nicht ohne einen gewissen Zeitaufwand durchzuführen. Deshalb schlagen wir vor, diese Stunde nur durchzuführen, wenn die Lerngruppe in der vorangegangenen Stunde Probleme mit dem Verständnis der polyalphabetischen Verschlüsselung hatte.

Im Rückblick auf die letzte Stuunde sollte nun überlegt werden, wie ein Knacken der Chiffre möglich ist. Mit den Arbeitsbögen Vigenère knacken kann das Verfahren zur Bestimmung der Schlüsselwortlänge durch den Vergleich der Abstände zwischen Parallelstellen händisch nachvollzogen werden. Je nach Vorkenntnissen der Lernenden sollte die Bestimmung des größten gemeinsamen Teilers ggf. im geführten Unterrichtsgespräch erfolgen. Die Schülerinnen und Schüler sollten nun in die überlegungen eingebunden werden, wie sich bei bekannter Länge des Schlüsselworts die einzelnen Buchstaben des angewendeten Geheimworts durch eine Häufigkeitsanalyse auf den wiederkehrend durch einen Buchstaben des Geheimworts verschlüsselten Geheimzeichen rekonstruiert werden können. Die Anwendung der Häufigkeitsanalyse für die mit dem 2. bis 7. Buchstaben des Schlüsselworts verschlüsselten Geheimtext sollte dann arbeitsteilig für die jeweiligen Buchstaben des Geheimworts erfolgen – lassen Sie die Schüler einfach von 2 bis 7 reihum abzählen!.

Durch die Bestimmung der Länge des Schlüssels kann die Vigenère-Verschlüsselung auf eine monoalphabetische Verschlüsselung reduziert werden, die wiederum mit dem den Schülerinnen und Schülern bekannten Verfahren der Häufigkeitsanalyse geknackt werden kann. Der Geheimtext wurde so angelegt, dass der am häufigsten auftretende Buchstabe pro Spalte (mit einer Ausnahme) dem „E“ entspricht. Das Schlüsselwort für den Text lautet: „LOGISCH“. Anschließend wird das Vorgehen im Plenum schriftlich festgehalten.

=> Verlaufsplanung Exkurs Vigenère per Hand knacken

Material

Optionaler Exkurs: Film „Krieg der Buchstaben“
(eine zusätzliche Doppelstunde zwischen Stunden 8 und 9)

Der BBC-Dokumentarfilm „Krieg der Buchstaben“ (dt., ca. 45 Min.) bietet die Möglichkeit den Kontext „E-Mail“ zu verlassen und das Thema Verschlüsselung aus der Perspektive der historischen Ereignisse des 20. Jahrhunderts zu betrachten. Bevor die Verschlüsselung durch das Aufkommen moderner Kommunikationsmittel in das Blickfeld von Unternehmen und Privatpersonen rückte, war sie im 20. Jahrhundert besonders Mittel von Staat und Militär die eigene Kommunikation geheim zu halten. Der Film bietet den Schülerinnen und Schülern die Möglichkeit, die Funktionsweise historischer Chiffriermaschinen kennen zu lernen (etwa der deutschen Enigma) und mit den im vorangegangenen Unterricht behandelten Verschlüsselungs- verfahren in Beziehung zu setzen. Gleichzeitig kann der Film als Anregung für eine Diskussion über Vertrauen bzw.. Misstrauen in zwischenstaatlichen Beziehungen dienen, um den Einsatz von  Entschlüsselungsmethoden kritisch zu hinterfragen.

Zu diesem Zweck erhalten die Schülerinnen und Schüler Beobachtungsaufträge, die sowohl die technische, als auch die gesellschaftliche Dimension von den im Film vorgestellten Ver- schlüsselungstechniken betreffen. Nach der Sichtung des Films haben die Schülerinnen und Schüler Zeit, sich über ihre Arbeitsergebnisse auszutauschen, um anschließend im Plenum ihre Ergebnisse und Meinungen zu präsentieren. Erfahrungsgemäß ist die Diskussion über Ver- schlüsselung sehr fruchtbar, sodass für den Film eine Doppelstunde eingeplant werden sollte.

=> Verlaufsplanung Exkurs Krieg der Buchstaben

Material:

Stunde 9:
Trennung von Ver- und Entschlüsseln mittels Einwegfunktion

Grundlegend für die asymmetrische Kryptographie sind Einwegfunktionen mit Falltür. Einwegfunktionen sind dadurch charakterisiert, dass sie leicht berechenbar sind, ihre Umkehrfunktion aber nur mit riesigem Rechenaufwand bestimmt werden kann. Ein klassisches Beispiel dafür ist ein Telefonbuch: Während die Telefonnummer leicht zu finden ist, wenn man den Namen kennt, ist das Auffinden des Namens sehr schwer, wenn  nur die Telefonnummer bekannt ist. Auch das Zerreißen ein eines Blatts Papier lässt sich leicht durchführen, das Zusammenfügen der zerrissenen Teile ist dagegen für den Restaurator eine anspruchsvolle Aufgabe.

Bei einer Einwegfunktion mit Falltür (kurz: Falltürfunktion) gibt es sozusagen eine „Hintertür“, mit deren Kenntnis die Umkehrfunktion wiederum leicht zu bestimmen ist. Ein Beispiel dafür ist ein Briefkasten:  Während das Einwerfen eines Briefes leicht geschieht, ist es schwer, ihn danach wieder herauszufischen – es sei denn, man hat den Schlüssel zum Briefkasten. In dieser Stunde werden Vorhängeschlösser als ein Beispiel für eine Falltürfunktion eingesetzt. Auch hier ist es einfach, ein Schloss durch Zudrücken zu schließen, das Schloss ohne Schlüssel zu öffnen ist allerdings aufwändig.

Zur Einführung in die asymmetrische Kryptographie wird den Schülerinnen und Schülern der Arbeitsauftrag erteilt, ein Geheimnis mittels einer Kiste zu übertragen, wobei jeder Kommunikationspartner über ein Vorhängeschloss mit passendem Schlüssel verfügt. Damit können sie selbstständig erarbeiten, wie durch eine Trennung von Ver- und  inverser Entschlüsselungsfunktion das übermitteln geheimer Schlüssel vermieden werden kann:

Die Schülerinnen und Schüler teilen sich sich in zwei Gruppen, um ein Rollenspiel durchzuführen. Jede Gruppe erhält ein Vorhängeschloss, eine der Gruppen zusätzlich einen Karton/Truhe. Die Gruppen erhalten die Aufgabe, eine Nachricht in dem Karton an die andere Gruppe zu versenden. Dabei muss der Karton den in der Mitte platzierten Lehrer passieren, ohne dass dieser die Möglichkeit hat, die Nachricht zu lesen.

Die Lösung dieses Problems kann mit verschiedenen Verfahren gelöst werden. Im Diffie-Helmann-Schlüsseltausch schließt die versendende Gruppe den Karton, in dem die Nachricht liegt, mit ihrem Schloss zu und schickt ihn zur anderen Gruppe. Diese Gruppe befestigt ihr Schloss ebenfalls am Karton und schickt ihn wieder zum ursprünglichen Sender zurück. Dieser entfernt nun sein Schloss und sendet den Karton zurück, der nun geöffnet werden kann. Bei dem Diffie-Hellman-Schlüsseltausch handelt es sich nicht um ein vollwertiges asymmetrisches Verschlüsselungsverfahren. Es ist nicht gegen „man-in-the-middle“-Angriffe geschützt, so kann eine übermittelnde Station die Antworten der Kommunikationspartners imitieren und seinen eigenen Schlüssel anstatt denen der Kommunikationspartner übermitteln um so Kenntnis von der übertragenen Botschaften zu erlangen. Der amerikanische Mathematiker ElGamal entwickelt 1985 aus dem Diffie-Hellman-Verfahren ein vollwertiges asymmetrisches Kryptosystem, das auch noch heute verwendet wird.

Um zu verdeutlichen, dass dieses Verfahren auch Angriffsmöglichkeiten bietet und die Lösung des Schlüsseltauschproblems nicht 100%ige Sicherheit bietet, kann das Szenario erneut durchgeführt werden. Diesmal befestigt der Lehrer/die Lehrerin jedoch ein eigenes Schloss an dem Karton und sendet ihn sofort an die sendende Gruppe zurück. Diese entfernt nun korrekterweise ihr Schloss und versendet den Karton erneut. Der Lehrer/die Lehrerin hat nun die Möglichkeit, die Nachricht zu lesen. Gleichzeitig nimmt der Lehrer/die Lehrerin einen baugleichen Karton, der eine eigene Nachricht enthält und sendet ihn – anstatt des Originals – weiter. Der falsche Karton wird durch die Schülerinnen und Schüler mit einem Schloss versehen und an den Lehrer / die Lehrerin zurück geschickt. Nun entfernt er/sie sein/ihr eigenes Schloss und sendet den Karton sogleich zurück (man-in-the-middle-Angriff).

Die Modellierung Diffie-Hellman-Verfahren auf der Ebene von Kisten und Schlössern trennt nicht zwischen privatem und öffentlichem Schlüssel und ist daher für die Anbahnung des RSA-Verfahrens ungeeignet. Entdecken die Schülerinnen und Schüler das Diffie-Hellman-Verfahren, so sollte durch  die Demonstration des man-in-the-middle Angriffs eine weitergehende überlegung motiviert  werden, wie sich ein Austausch der Schlösser verhindern lässt. Hier sollte der Lehrer/die Lehrerin das Szenario gezielt erweitern und ein Treffen der Kommunikationspartner zur Vorbereitung der späteren Kommunikation vorschlagen, wobei nach wie vor keine geheimen Informationen ausgetauscht werden sollen. Es bietet sich an, dass die Gruppen im Vorfeld der Kommunikation ihre Schlösser austauschen (die dann die öffentlichen Schlüssel symbolisieren) und dabei die zum Aufschließen notwendigen Schlüssel (die privaten Schlüssel im Sinne der asymmetrischen Kryptologie) behalten. Nun kann die Kiste direkt von der sendenden Gruppe mit dem Schloss der empfangenden Gruppe verschlossen und nur von der empfangenden Gruppe wieder geöffnet werden.

Abschließend sollten die Schülerinnen und Schüler aufgefordert werden, das zuletzt beschriebene Verfahren schriftlich festzuhalten und die Trennung von Ver- und Entschlüsslungsfunktion als zentrale Idee der Lösung zu benennen.

=> Verlaufsplanung Stunde 9

Material

Optionaler Exkurs:
Mathematische Umsetzung des Diffie-Hellman-Verfahrens
(eine zusätzliche Stunde zwischen Stunden 9 und 10)

Für mathematisch interessierte Lerngruppen bietet es sich an, die mathematische Umsetzung des Diffie-Hellman-Verfahrens zu erarbeiten. Dazu eignet sich der Arbeitsbogen von Johann Penon (s. u.) sowie eine sehr schöne Veranschaulichung im Programm CrypTool unter Einzelverfahren → Protokolle → Diffie-Hellman-Verfahren. Fundierte Informationen zu dem Diffie-Hellman-Verfahren erhält man z. B. in der Online-Hilfe sowie im Skript von CrypTool. Zum „Knacken“ dieses Systems wird im Gegensatz zur Primfaktorzerlegung bei RSA der diskrete Logarithmus bestimmt.

Material:

Arbeitsbogen von Johann Penon zum Diffie-Hellman-Verfahren:
http://oszhandel.de/gymnasium/faecher/informatik/krypto/diffie_hellmann_merkle.html

Weiterführende Internetquellen zu Diffie-Hellman- und ElGamal-Verfahren:

Stunde 10:
Das Prinzip der asymmetrischen Kryptologie

Die Schülerinnen und Schüler erarbeiten sich mit der Animation „Vertraulichkeit und Authenzität durch asymmetrische Kryptologie herstellen“ das Prinzip der asymmetrischen Kryptographie.  Sie knüpfen an das aus der letzten Stunde bekannte Schlüsselaustauschverfahren an und setzen es in den Kontext E-Mail. Dabei lernen sie die Funktion von öffentlichen und privaten Schlüssel kennen. Eine Anleitung zur Bedienung der Animation ist auf der dazugehörigen Webseite vorhanden, es wird jedoch empfohlen, den Schülerinnen und Schülern die Anleitung in Papierform zu Verfügung zu stellen, um ein ständiges auf- und abscrollen zu vermeiden. Nachdem die Schülerinnen und Schüler sich die Funktionsweise der asymmetrischen Kryptographie erarbeitet haben, sollen sie diese in Partnerarbeit in einem zusammenhängen- den Text verschriftlichen.

Diese Stunde legt die Grundlage für die Beschäftigung mit RSA, während der eigentliche Verschlüsselungsvorgang hier noch als „Black-Box“ funktioniert.

Sollte die Erarbeitung der Animation auch nach erfolgreicher Sicherung des Verfahren die Stunde nicht füllen, so kann bereits hier thematisiert werden, dass die Verschlüsselung mit dem öffentlichen Schlüssel des Empfängers wie auch alle zuvor besprochenen Verfahren keine Aussagen über die Authentizität des Absenders und die Integrität der Nachricht zulässt. Während die Integrität der Nachricht nur durch Erstellen und „signieren“ eines Hashwerts sichergestellt werden kann, so kann die Authentizität des Absenders bereits hier belegt werden, wenn dieser eine zuvor vereinbarte Nachricht (z.B. seinen Vornamen) mit seinem privaten Schlüssel verschlüsselt. Dieses „vertauschen“ der Schlüssel um einen anderen Zweck zu erfüllen sollte nur dann bereits in dieser Stunde besprochen werden, wenn das Verständnis für die Herstellung von Vertraulichkeit sichergestellt ist, da sonst die Gefahr besteht, beide Prozesse und die Zuordnung der Schlüssel zu vermischen.

=> Verlaufsplanung Stunde 10

Material

Stunde 11:
Konstruktion einer mathematischen Einwegfunktion – Semiprimzahlen und Zerlegung in Primfaktoren

In den vorangegangenen Stunden haben die Schülerinnen und Schüler bereits ein Beispiel für eine Einwegfunktion mit Falltür (auch Falltürfunktion genannt – vom engl. „trap door function“) kennen gelernt: das Vorhängeschloss. Für die asymmetrische Verschlüsselung ist aber eine andere Falltürfunktion von Interesse – die Primzahlfaktorisierung: Es ist zwar einfach, ein Produkt aus Primzahlen zu erzeugen, die Zerlegung großer Zahlen in ihre Primfaktoren ist jedoch – je nach Größe der Zahl – schwierig. Eben diese Tatsache macht sich die asymmetrische Verschlüsselung mit dem RSA-Kryptosystem zu Nutze: Während ich aus ausschließlich mir bekannten Primzahlen ohne Schwierigkeiten ein Produkt erzeugen und veröffentlichen kann (öffentlicher Schlüssel), so ist es mit heutiger Rechentechnik bei den üblichen Schüsselgrößen (mind, 1024 Bit) unmöglich, aus diesem Produkt auf die Primfaktoren  zu schließen. Die erforderlichen Schlüsselgrößen werden durch den RSA-Faktorisierungs- wettbewerb ermittelt. Die größte Zahl, die in diesem Wettbewerb bisher faktorisiert wurde, ist die RSA-768, die – wie der Name sagt – 768 Bit groß ist. Weil man annimmt, dass die Zahl RSA-1024 bis zum Jahr 2020 zerlegt sein wird, gelten 1024-Bit-Verschlüsselungen ab 2014 als nicht mehr sicher. Man nimmt an, dass mindestens  2048-Bit-Verschlüsselungen für viele Jahre ausreichende Sicherheit bieten – mit zunehmender Rechenleistung (oder dem Erfinden eines revolutionären Verfahrens zur Primzahlfaktorisierung) steigt auch der Aufwand, den man bei der Verschlüsselung betreiben muss.

Für das Verständnis des später in diesem Lernabschnitt behandelten RSA-Verfahrens, ist es zunächst notwendig, dass sich die Schülerinnen und Schüler über Eigenschaften der Prim- und Semiprimzahlen informieren. Dafür werden die Definitionen der (Semi)Primzahlen erläutert und ein Verfahren eingeführt, dass das Auffinden von Primzahlen ermöglicht (Sieb des Eratosthenes). Abschließend sollen die Schülerinnen und Schüler Semiprimzahlen in ihre Faktoren zerlegen, wobei sie erkennen, dass mit steigender Größe der Zahl der Aufwand der Faktorisierung immer höher wird – und irgendwann so groß ist, dass die Faktorisierung ohne Hilfe eines Rechners nicht mehr durchzuführen ist.

Material

Weiterführende Literatur und Internetquellen zu Stunde 11:

Stunde 12/13:
Implementierung asymmetrischer Kryptologie am Beispiel RSA

Das 1978 entwickelte RSA-Verfahren ist ein asymmetrisches Verschlüsselungsverfahren, das genügend große Semiprimzahlen nutzt, um die nötige Sicherheit des Verfahrens zu gewährleisten (z. Zt. 1024 Bit). Die unter dem Gesichtspunkt der Sicherheit wichtigsten Grundlagen des Verfahrens haben die Schülerinnen und Schüler bereits in der Stunde „Konstruktion einer mathematischen Falltürfunktion – Semiprimzahlen und die Zerlegung in Primfaktoren“ kennen gelernt.

Da das RSA-Verfahren für Schülerinnen und Schüler meist nicht auf Anhieb zu verstehen ist, wurde dieser Unterrichtsabschnitt so gestaltet, dass zunächst händisch mit kleinen Zahlen operiert wird. Dabei berechnen die Schülerinnen und Schüler zunächst einen eigenen geheimen und öffentlichen Schlüssel und üben das Ver- und Entschlüsseln von Zahlen. Ein AB zum modularen Rechnen führt die SuS in diese für sie ungewohnte Rechenart ein, ein weiterer AB zum modularen Potenzieren kann bei Bedarf zusätzlich eingesetzt werden. Möglich ist auch ein Exkurs zu dem „Square and Multiply“ Algorithmus, so wie er im Artikel „RSA&Co., Neue Folge Teil 1“ ausführlich beschrieben wird (s. Literatur). Dieser Algorithmus lässt sich auf die sog. äthiopische oder auch russische Bauern-Multiplikation aus der Unterhaltungsmathematik zurückführen.

Anschließend soll das Verfahren angewendet werden – auch hierbei wird in dieser Doppelstunde mit kleinen Zahlen operiert, die noch per Hand zu berechnen sind: Die Schülerinnen und Schüler erhalten die Aufgabe, ihren Geburtstag (Monat und Tag einzeln) zu verschlüsseln Sie tauschen zunächst ihren öffentlichen Schlüssel mit dem Nachbarn aus und nutzen den öffentlichen Schlüssel des Nachbarn, um den eigenen Geburtstag zu chiffrieren. Sie übermitteln das Chiffrat an ihren Nachbarn, der es mit seinem privaten Schlüssel entschlüsselt.

Die RSA-Verschlüsselung ist nicht fixpunktfrei, d. h. es kann besonders bei kleinen Schlüsseln relativ häufig vorkommen, dass die Originalzahl und die verschlüsselte Zahl identisch sind. Das ist kein Argument gegen die Verwendung von RSA, weil es bei den tatsächlich eingesetzten Schlüssellängen nur selten auftritt und auch kein Sicherheitsrisiko darstellt – im Gegenteil: Die Fixpunktfreiheit der Enigma hat Alan Turing einen entscheidenden Ansatz zum Brechen des Enigma-Codes geliefert. Allerdings kann diese Tatsache in dieser Phase zu Fragen bei den Lernenden führen, die dann geklärt werden müssen.

Um die Einsicht zu motivieren, dass bei der Verschlüsselung mit RSA große Primzahlen gewählt werden sollten, wird nun im Plenum versucht, ein Chiffre zu knacken. Zu diesem Zweck können einige Schülerinnen und Schüler (oder alle – je nach Größe des Kurses) ein Chiffre zur Verfügung stellen. Gemeinsam versucht die Lerngruppe, den Modul zu faktorisieren. Sind die beiden Faktoren gefunden, so kann das Produkt phi(N) = (p-1) * (q-1) berechnet werden. Nun muss nur noch eine Zahl d (der geheime Schlüssel) gefunden werden, für die gilt:

(d * e) mod phi = 1

Mit dem gefundenen Schlüssel kann nun die Chiffre geknackt werden!

Wenn genügend Zeit vorhanden ist, kann zur übung und Festigung des Umgangs mit dem RSA-Verfahren auch ein kleiner „Chiffrierwettbewerb“ eingeschaltet werden. Zweierteams von SuS wählen sich eine passenden Name wie „Blechtley Park“, „Room 40“, „Black Chamber“ usw., überlegen sich ein RSA-Schlüsselsystem und veröffentlichen an der Tafel ihren öffentlichen Schlüssel zusammen mit einer chiffrierten Botschaft. Die Aufgabe für die Teams ist es dann, die von den anderen Teams veröffentlichen Schlüssel und Botschaften zu knacken. Dabei wird auch deutlich, das man beim RSA-Verfahren genau zwischen dem Modul N für das Ver- und Entschlüsseln und dem Modul phi(N) für das Erzeugen des Schlüsselpaares unterscheiden muss – jedenfalls ist die Verwechslung dieser Moduln nach unserer Erfahrung die häufigste Fehlerquelle, wenn das von den SuS erdachte System nicht funktioniert.

Ohne den erweiterten Euklidischen Algorithmus ist es – besonders bei größeren Schlüsseln – sehr aufwändig, die zu einer gegebenen Zahl e inverse Zahl d zu finden. Wenn dieses Problem in die Tiefe gehend behandelt werden soll, bietet sich ein weiterer Exkurs zu diesem Algorithmus an. Eine Unterrichtsskizze hierzu findet sich in „RSA&Co., Neue Folge Teil 2“ (s. Literatur). Für diese Unterrichtsreihe haben wir uns aber entschlossen, die mathematischen Anteile möglichst knapp zu halten, um den roten Faden „Sicherheitsprobleme bei der E-Mail-Kommunikation“ nicht aus den Augen zu verlieren. Deshalb haben wir uns für den Einsatz der RSA-Demo von CrypTool entschieden; hier sind die genannten Algorithmen bereits eingebaut und stehen als „Black Box“ zur Verfügung.

Material

Stunden 14/15:
Sicherheit von RSA

Nachdem die SuS in der letzten Doppelstunde erfahren haben, dass die händische Anwendung des RSA-Verfahren wegen der notwendigerweise sehr kleinen Schlüsselgrößen sehr unsicher ist, ist es naheliegend, nunmehr Computer einzusetzen.

Deshalb führen die Schülerinnen und Schüler das RSA-Verfahren erneut durch, diesmal jedoch mit Zahlen, deren Größe so zu wählen ist, dass eine Entschlüsselung ohne Hilfe des Computers nicht durchzuführen ist. Zu diesem Zweck soll erneut das Geburtsdatum verschlüsselt werden, diesmal jedoch als große Zahl der Form ttmmjjjj (z.B. wird der 12.06.1995 zur Zahl 12061995). Auch die Primzahlen sind aus einem Schlüsselsystem mit n > 32.000.000 zu wählen. Die Rechnungen werden nun von den Schülerinnen und Schülern mit Hilfe von CrypTool (RSA-Demo) durchgeführt.

Da die Bedienung der RSA-Demo von CrypTool nach unseren Erfahrungen in den Lerngruppen der SekI nicht selbsterklärend ist, erhalten die SuS einen AB, der ihnen die ersten Schritte mit der RSA-Demo erleichtern soll.

Anschließend sollen die o. e. „Geburtstagszahlen“ mit der RSA-Demo verschlüsselt und vom Kommunikationspartner wieder entschlüsselt werden. Die erste Herausforderung ist dabei, Primzahlen p und q zu finden, deren Produkt (der Schlüssel N) größer als 32.000.000 ist. Als Ansatz hierfür bietet es sich an, die Quadratwurzel aus dieser Zahl zu berechnen (≈ 5700, nach oben gerundet). Mit der Untergrenze 5700 und der Obergrenze 5800 ist man damit auf der sicheren Seite.

Hat man sein eigenes Schlüsselsystem mit der RSA-Demo erstellt, soll der öffentliche Schlüssel an den Kommunikationspartner geschickt werden, der damit sein Geburtsdatum wir oben beschrieben verschlüsseln soll. Die RSA-Demo bietet auch die Möglichkeit, nur mit öffentlichen Schlüssels eines Partners Nachrichten zu verschlüsseln. Wenn im oberen Teil des Fensters diesen Knopf (den zweiten von oben) betätigt, verschwindet der eigene geheime Schlüssel und es bleibt nur der eigene öffentliche Schlüssel lesbar. Hat man den vorher nicht notiert, hat man Pech gehabt: Er kommt nicht wieder zurück, wenn man wieder auf den obersten Knopf drückt! Die einfachste Lösung ist es, eine zweite Inkarnation der RSA-Demo zu starten, dann hat man ein Fenster für das eigene Schlüsselpaar und ein zweites für den öffentlichen Schlüssel des Partners.

Nach diesen Vorbereitungen können die gewünschten Daten per mail und copy & paste an den Partner gesendet werden.

Zu Beginn der nächsten Phase stellt der Unterrichtende die folgende Aufgabe: „Alice übermittelt Bob ihr verschlüsseltes Geburtsdatum. Der öffentliche Schlüssel von Bob lautet 65537, der Modul N ist 32442353. Könnt Ihr das Geburtsdatum von Alice auch ohne Bobs geheimen Schlüssel ermitteln?“ Hier sollten die Lernenden zunächst versuchen, diese Aufgabe selbstständig ohne weitere Hilfe zu lösen. Am Lehrertisch liegt ein vorbereiteter AB: „RSA mit CrypTool knacken“, den die SuS holen können, wenn sie gar nicht mehr weiterkommen. Auf diese Weise sollte die Aufgabe von allen relativ schnell zu lösen sein.

Dieser Arbeitsschritt motiviert die nächste Aufgabe: „Wie groß muss der RSA-Schlüssel sein, damit er mit CrypTool nicht so schnell geknackt werden kann?“ Hier muss zunächst über die Bitlänge von Primzahlen und RSA-Schlüsseln gesprochen werden. Wenn man z. B. einen 128-Bit-RSA-Schlüssel erzeugen will, benötigt man zwei Primzahlen mit 64 Bit Länge. Bei der RSA-Demo würde man also folgendermaßen vorgehen: Man wählt Primzahlen generieren (Knopf rechts oberhalb der Mitte), gibt bei p und q jeweils 263 als Untergrenze und 264 als Obergrenze an. Damit erhält man 2 verschiedene 64-Bit-Primzahlen, mit dem Knopf „Primzahlen übernehmen“ erhält man den gewünschten 128-Bit-Schlüssel (den Modul N).
Diese überlegung lässt sich verallgemeinern: Bei einer gewünschten Bitlänge von 2n wäre 2n-1 die Unter- und  2n die Obergrenze. Wenn man mit diesen Werten experimentiert, zeigt sich, dass 128-Bit-Schlüssel noch sehr leicht mit CrypTool zerlegt werden können.

Material

Software

 

Stunde 16:
E-Mails mit Enigmail verschlüsseln

Die damit erstellten Nachrichten werden – wie bereits in den Stunden 2/3 – mittels Socket Sniff analysiert, um den Unterschied zu unverschlüsselten E-Mails zu verdeutlichen. Mit dem Ende dieses Lernabschnitts haben die Schülerinnen und Schüler die Fähigkeit erworben, selbstständig mit Verschlüsselungssystemen umzugehen, ihr eigenes Schlüsselpaar zu erzeugen und mit Programmen wie Thunderbird oder Outlook verschlüsselte E-Mails zu senden und empfangen.

Nachdem sich die Schülerinnen und Schüler in den vorangegangenen Stunden die theoretischen Grundlagen der asymmetrischen Verschlüsselung erarbeitet haben, sollen sie sich nun in der praktischen Anwendung dieses Verfahrens üben. Am Ende der Stunde sollen alle Lernenden wissen, wie sie selbstständig ein Schlüsselpaar erstellen und wie sie die Verschlüsselung in E-Mail-Programmen (z.B. Thunderbird oder Outlook) einsetzen können.

Der erste Schritt der Unterrichtsstunde besteht darin, Schlüsselpaare mittels OpenPGP (resp. PGP4Win für Outlook) zu erzeugen und zu verwalten, oder alternativ ein (leider zeitlich begrenztes) Zertifikat über ein Truscenter anzufordern (z.B. bei Trustcenter.de → erzeugen einer sog. „TC Internet-ID“). Mit diesem Schlüsselpaar allein ist das Verschlüsseln von Mails noch nicht zu bewerkstelligen. Zunächst muss den E-Mail-Programm „beigebracht“ werden, Verschlüsselung zu nutzen. Im Falle von Thunderbird sollte dafür das Enigmail-Plugin installiert werden, für Outlook-Benutzer reicht das oben genannte Paket PGP4WIn.

Anschließend tauschen die Schülerinnen und Schüler ihre öffentlichen Schlüssel aus und verwalten diese im E-Mail-Programm. Dadurch bilden sie ein „Web of Trust“. Die Schülerinnen und Schüler verschicken und empfangen nun (über den bekannten Hamster-Server) verschlüsselte und signierte E-Mails an ihre Mitschülerinnen. Um sich wirklich davon zu überzeugen, dass die erarbeiteten Anforderungen an sichere Kommunikation erreicht worden sind, erhalten die Schülerinnen und Schüler wieder den Auftrag, den aus- und eingehenden E-Mail-Verkehr mittels Socket-Sniff zu analysieren. Dabei werden sie erkennen, dass die Informationen der E-Mail nicht länger im Klartextformat verschickt werden. Damit hat die Lerngruppe – für sie nachvollziehbar –  das Ziel erreicht, Authentizität, Integrität und Vertraulichkeit bei der E-Mail-Kommunikation herzustellen und die Schülerinnen und Schüler sind dazu in der Lage, ein solches System auf schulfremden PCs zu installieren.

=> Verlaufsplanung Stunde 16

Material

Weiterführende Internetquelle zum Verschlüsseln und Signieren
von E-Mails:

Software