Kryptologie

Die vorliegenden Materialien wurden von Daniel Hoherz und André Tempel erstellt. Sollten andere Editoren die Materialien erstellt haben, werden diese explizit genannt.

In den vorherigen Jahrgängen haben Sie sich bereits mit verschiedenen Verfahren der Kryptographie und Kryptoanalyse beschäftigt. Zur Erinnerung hier nochmal eine kurze Defintion der beiden Begriffe:

Kryptographie Kryptoanalyse

Die Kryptographie ist die Wissenschaft der Verschlüsselung von Informationen und Informationssicherheit und befasst sich mit der Konzeption, Definition und Konstruktion von gegen Manipulation widerstandsfähiger Informationssysteme.

Die Kryptoanalyse ist die Wissenschaft von Methoden und Techniken, mit denen Informationen aus verschlüsselten Informationssystemen gewonnen werden sollen. Ihr Ziel ist, den Manipulationswiderstand von Kryptosystemen aufzuheben, zu umgehen oder deren Sicherheit zu quantifizieren.

In diesem Kontext hatten Sie einige Verschlüsselungsverfahren und Entschlüsselungsverfahren, aber auch zahlreiche Fachbegriffe kennengelernt.

  1. Finden Sie sich in einer Gruppe von maximal drei Personen zusammen und bearbeiten Sie die folgenden Aufgaben. Beachten Sie bitte, dass Sie Ihre Ergebnisse dokumentieren.

    Sammeln Sie in Ihrer Gruppe Begriffe und Verfahren aus den letzten Jahrgängen rund um das Thema Kryptologie.

    Definieren Sie möglichst viele dieser Begriffe.

In den vorherigen Jahrgängen haben Sie bereits einiges über Verschlüsselungs- und möglichen Entschlüsselungsstrategien gelernt. Dieses Wissen vertiefen wir nun und erweitern es – besonders um komplexere und modernere Ansätze, um die Sicherheit zu steigern.
Unten finden Sie die Kompetenzenm, die Sie im Laufe der Einheit erwerben werden. Sie können die Übersicht zur Selbstkontrolle nutzen.

Inhalt Mindeststandard Regelstandard Expertenstandard
Grundlagen Ich kann die grundlegenden Begriffe korrekt verwenden und Angriffstypen beschreiben. Ich kann erläutern, welche Angriffstypen von symmetrische und asymmetrische Verfahren verhindert werden sollen. Ich kann polyalphabetische Substitutionsverfahren (bspw. Vigenère) sowie asymmetrische Verfahren wie digitale Signaturen und Zertifikate erläutern sowie Blockchiffre (LK)
Sicherheit Ich kann Häufigkeitsanalyse und Brute-Force als Entschlüsseluzngsmethoden passend anwenden. Ich kann den Kasiski-Test zur Entschlüsselung von Vigenère erläutern und durchführen. Ich kann die Sicherheit von symmetrischen Verfahren beurteilen, indem die Kenntnisse zur Entschlüsselungsmethoden herangezogen werden.
Implementierung (LK) Ich kann einfache Substitutionsverfahren (Caesar) implementieren Ich kann polyalphabetischeVerfahren (z. B. Vigenère) implementieren. Ich kann moderen Blockchiffren implementieren.

Jeder Art von Informationsübertragung läuft nach dem folgenden Prinzip ab:

Sender-Empfänger-Modell

Beim normalen Sprechen miteinander, sind Sender und Empfänger zwei Personen und der Kanal ist die Luft. Die beteiligten Personen zusammen mit dem Übertragungsmedium Luft bilden hier ein Netzwerk.
Bei elektronischer Kommunikation sind Sender und Empfänger meist zwei Endgeräte, die an ein Netzwerk angeschlossen sind, und der Kanal sind die Leitungen.
Ein Kryptosystem ist ein System, das Verfahren zur sicheren Kommunikation und Datenübertragung bereitstellt, indem es Informationen so transformiert, dass sie von Unbefugten nicht gelesen oder manipuliert werden können. Kryptosysteme nutzen mathematische Algorithmen und Schlüssel, um Daten zu verschlüsseln und zu entschlüsseln. Sie sind essenziell für die Informationssicherheit und werden in verschiedenen Anwendungen eingesetzt, wie z. B. in der sicheren Kommunikation, im Online-Banking, in der Datenverschlüsselung und in digitalen Signaturen.
Ein Kryptosystem besteht in der Regel aus den folgenden grundlegenden Komponenten:

  1. Klartext: Der Klartext ist die ursprüngliche, unverschlüsselte Information, die gesichert werden soll. Dies können Texte, Dateien oder andere Datenformen sein.
  2. Chiffre/Chiffrat/Chiffretext: Der Chiffretext ist das Ergebnis der Verschlüsselung des Klartexts. Es handelt sich um die transformierte Version der Daten, die ohne den entsprechenden Schlüssel nicht lesbar ist.
  3. Verschlüsselungsalgorithmus: Der Verschlüsselungsalgorithmus ist ein mathematisches Verfahren, das zur Umwandlung des Klartexts in Chiffretext verwendet wird.
  4. Schlüssel: Der Schlüssel ist ein geheimer Wert, der zur Verschlüsselung und Entschlüsselung der Daten verwendet wird. Die Sicherheit eines Kryptosystems hängt stark von der Geheimhaltung und der Komplexität des Schlüssels ab. Schlüssel können in verschiedenen Längen und Formaten vorliegen, je nach verwendetem Algorithmus.
  5. Entschlüsselungsalgorithmus: Der Entschlüsselungsalgorithmus ist das Verfahren, das verwendet wird, um den Chiffretext zurück in den Klartext umzuwandeln. Der Entschlüsselungsprozess benötigt den entsprechenden Schlüssel, um die Daten korrekt zu rekonstruieren.
  6. Schlüsselverwaltung Die Schlüsselverwaltung umfasst die Generierung, Verteilung, Speicherung und den Austausch von Schlüsseln. Eine effektive Schlüsselverwaltung ist entscheidend für die Sicherheit eines Kryptosystems, da schwache oder kompromittierte Schlüssel die gesamte Sicherheit gefährden können.

Es gibt verschiedene Arten des Angriffs auf Kryptosysteme. Um die Angriffsarten besser betrachten zu können, werden sie in Kategorien eingeteilt. Diese Aufteilung zeigt, inwiefern der Datenfluss von der Norm abweicht. Sender und Empfänger sind Alice (A) und Bob (B). Eve (E) ist die böse Angreiferin.

Angriffstyp Erläuterung

Angriff auf die Verfübarkeitt verhindert, dass Informationen ihr Ziel erreichen.

Angriff auf die Vertraulichkeit ermöglichen es Dritten unbemerkt auf einen Teil des Systems zuzugreifen.

Angriff auf die Integrität ermöglichen nicht berechtigten Dritten Zugriff und Veränderung der Nachricht.

Angriff auf die Authentizität, ermöglichen nicht berechtigten Dritten das Einschleusen von gefälschten Nachrichten in ein System.

  1. Im Folgenden sind einige Angriffsszenarien beschrieben. Finden Sie sich zunächst in zwei Gruppen zusammen und bearbeiten Sie die Szenarien Ihrer Gruppe
    1. Personen: IT-Manager Sarah Müller und das IT-Team von TechCorp.
      Unternehmen: TechCorp, ein mittelständisches Unternehmen, das Softwarelösungen für die Finanzbranche anbietet.
      Beschreibung: An einem Montagmorgen bemerkt Sarah Müller, dass die Server von Tech-Corp nicht mehr erreichbar sind. Nach einer schnellen Untersuchung stellt sich heraus, dass ein Angreifer absichtlich einen Stromausfall in der Nähe des Unternehmens herbeigeführt hat, um den Betrieb zu stören. Durch den Ausfall sind alle internen Systeme und Datenbanken nicht mehr zugänglich, was zu einem erheblichen Gnanziellen Verlust und einem Vertrauensverlust bei den Kunden führt. Sarah und ihr Team müssen schnell handeln, um die Systeme wiederherzustellen und die Ursachen des Angriffs zu analysieren.
    2. Personen: Max Schmidt, ein Bankkunde, und der IT-Sicherheitsspezialist Thomas Becker.
      Unternehmen: Die Bank von Max Schmidt, eine lokale Bank mit einer Online-Banking-Platform.
      Beschreibung: Max Schmidt versucht, sich in das Online-Banking seiner Bank einzuloggen. Ein Angreifer hat jedoch eine Phishing-Webseite erstellt, die der echten Webseite der Bank sehr ähnlich sieht. Max gibt seine Zugangsdaten ein, ohne zu bemerken, dass er auf der falschen Seite ist. Thomas Becker, der IT-Sicherheitsspezialist der Bank, erhält kurz darauf Benachrichti gungen über verdächtige Aktivitäten auf Max‘ Konto. Er stellt fest, dass die Zugangsdaten ab gefangen wurden und dass der Angreifer bereits Geldüberweisungen vorgenommen hat. Die Bank muss schnell handeln, um weitere Verluste zu verhindern und Max zu informieren.
    3. Personen: Maria, die Geschäftsführerin von FoodDelivery Inc., und ein unzufriedener Mitar beiter.
      Unternehmen: FoodDelivery Inc., ein Online-Lieferdienst, der Essensbestellungen von Restaurants entgegennimmt.
      Beschreibung: Ein unzufriedener Mitarbeiter von FoodDelivery Inc. hat Zugriff auf das interne System. Er verändert die Bestelldaten, um die Lieferungen an sein eigenes Restaurant zu leiten, anstatt an die Kunden, die tatsächlich bestellt haben. Maria bemerkt, dass die Anzahl der Bestellungen für das Restaurant des Mitarbeiters ungewöhnlich hoch ist, während andere Restaurants weniger Bestellungen erhalten. Nach einer Untersuchung entdeckt sie die Manipulation und muss Maßnahmen ergreifen, um den Mitarbeiter zu entlassen und die Bestellungen zu korrigieren.
    4. Personen: Daniel, ein neuer Mitarbeiter bei ByteSolutions, und ein Angreifer, der sich als IT- Support-Mitarbeiter ausgibt.
      Unternehmen: ByteSolutions, ein IT-Dienstleister für kleine und mittelständische Unternehmen.
      Beschreibung: Daniel erhält einen Anruf von einem angeblichen IT-Support-Mitarbeiter, der behauptet, er müsse einige Sicherheitsupdates auf seinem Computer durchführen. Der Angreifer gibt vor, dass es ein Problem mit Daniels Zugangsdaten gibt und fordert ihn auf, seine Anmeldedaten und einen Bestätigungscode anzugeben. Daniel, der neu im Unternehmen ist und keine Erfahrung mit solchen Anrufen hat, gibt die Informationen preis. Der Angreifer nutzt diese Informationen, um auf das interne System von ByteSolutions zuzugreifen. Nach dem Vorfall wird Daniel geschult, um solche Angriffe in Zukunft zu erkennen.
    1. Personen: Dr. Anna Weber, eine Professorin an der Universität Berlin, und ein Betrüger namens Lukas.
      Unternehmen: Universität Berlin, eine renommierte Bildungseinrichtung.
      Beschreibung: Lukas gibt sich als Dr. Anna Weber aus und kontaktiert die Verwaltung der Universität, um vertrauliche Informationen über die Studenten zu erhalten. Er fälscht seine Identität, indem er gefälschte E-Mails und Dokumente vorlegt. Die Verwaltung ahnt zunächst nichts Böses und gibt ihm die gewünschten Informationen. Als Dr. Weber von dem Vorfall erfährt, ist sie entsetzt und muss die Universität darüber informieren, dass ihre Identität missbraucht wurde. Es wird eine Untersuchung eingeleitet, um die Sicherheitslücken zu schließen.
    2. Personen: Lisa, die Marketing-Managerin von FashionWorld, und das IT-Sicherheitsteam.
      Unternehmen: FashionWorld, ein Online-Shop für Modeartikel.
      Beschreibung: Während einer großen Verkaufsaktion wird FashionWorld Opfer eines DDoS-Angriffs. Ein Angreifer überlastet die Server des Unternehmens mit einer Flut von Anfragen, sodass die Webseite nicht mehr erreichbar ist. Lisa und ihr Team erhalten zahlreiche Beschwerden von Kunden, die nicht einkaufen können. Das IT- Sicherheitsteam muss schnell reagieren, um den Angriff abzuwehren und die Webseite wieder online zu bringen. Der Vorfall führt zu einem Verlust von Umsatz und Kundenvertrauen.
    3. Personen: Tom, der Finanzmanager von TechGiant, und ein Betrüger, der sich als Lieferant ausgibt.
      Unternehmen: TechGiant, ein großes Technologieunternehmen.
      Beschreibung: Tom erhält eine E-Mail mit einer Rechnung von einem vermeintlichen Lieferanten, der behauptet, TechGiant hätte Waren bestellt. Die Rechnung sieht echt aus, enthält jedoch gefälschte Informationen. Tom bezahlt die Rechnung, ohne die Bestellung zu überprüfen. Später stellt sich heraus, dass der Lieferant nicht existiert und die Zahlung an den Betrüger ging. TechGiant muss die betrügerische Transaktion melden und sicherstellen, dass solche Vorfälle in Zukunft verhindert werden.
    4. Personen: Dr. Peter Lange, ein Arzt bei Health- Care Inc., und ein Angreifer, der sich als Patient ausgibt.
      Unternehmen: HealthCare Inc., eine Klinik, die elektronische Patientenakten verwaltet.
      Beschreibung: Dr. Peter Lange erhält eine E-Mail von einem angeblichen Patienten, der um Informationen zu seiner Behandlung bittet. Der Angreifer hat jedoch die E-Mail-Adresse gefälscht und versucht, sensible Daten über die Patien- tenakte zu erhalten. Dr. Lange, der die Identität des Patienten nicht überprüfen kann, gibt einige Informationen preis. Später stellt sich heraus, dass die E-Mail von einem Angreifer stammt, der die Informationen für betrügerische Zwecke nutzen wollte. HealthCare Inc. muss Maßnahmen ergreifen, um die Sicherheit der Patientendaten zu gewährleisten.
  2. Finden Sie sich in 4er-Gruppen zusammen und präsentieren Sie sich gegenseitig die Szenarien und Ihre Klassifikation der Szenarien zu den Angriffsarten.

Hier könnte Ihre Lösung stehen.

Zettel mit Geheimtext

Auf dem Schulflur wurde ein Zettel mit einer Nachricht gefunden. Der Anfang der Nachricht ist:

Xwx uxq utht Hwajttnsdrbt
njpt tkgy xhhuoa wwjgknnlpl!
Rpy ohz ikpcxm mmwce Yhnyanb
lszj ibpt camexl Qqzae

Offenbar handelt es sich um einen Geheimtext, der mit einem unbekannten Verfahren erzeugt wurde. Was nun?

  1. Tauschen Sie sich kurz mit den neben Ihnen sitzenden Personen aus, ob man vermuten kann, dass dieser Geheimtext mit einem Transpostionsverfahren erstellt wurde.
  2. Betrachten wir zwei Möglichkeiten, die eine Häufigkeitsanalyse der gesamten Nachricht liefert:
    Ergebnis 1
    Ergebnis 2
    Analysieren Sie, welche Schlussfolgerungen die beiden Ergebnisse jeweils zulassen.

Hier könnte Ihre Lösung stehen.

Der französische Diplomat Blaise de Vigenère (1523–1596) entwickelte die nach ihm benannte Verschlüsselungsmethode, um die Schwächen des Caesar-Chiffres und anderer monoalphabetischer Verfahren zu überwinden. Statt nur eines Alphabets werden bei der Vigenère-Chiffrierung mehrere (bis zu 26) verwendet, die dadurch entstehen, dass man das Ausgangsalphabet jeweils zyklisch um eine Position verschiebt und die so entstandenen Alphabete im sogenannten Vigenère-Quadrat untereinander anordnet.
Die Vigenère-Chiffre stellt historisch gesehen die erste polyalphabetische Substitution dar. Ihre Kryptoanalyse galt lange Zeit als praktisch unmöglich.
Schauen wir uns ein konkretes Beispiel an.
Der zu verschlüsselnde Klartext ist „Die Herbstferien sind viel zu kurz“ und der Schlüssel soll das Wort „Geheim“ sein. Grundlage des Verfahrens ist das Vigenère-Quadrat:

Aktuelle Position: Bewege die Maus über das Quadrat
ABCDEFGHIJ KLMNOPQRST UVWXYZ

Nun verschlüsselt man jedes Zeichen des Klartextes mit einem Schlüsselzeichen. Dafür kann man zum Beispiel den Schlüssel, in der Tabelle als „k“ für key bezeichnet, unter den Klartext, in der Tabelle als „KT“ bezeichnet, schreiben. Ist das letzte Schlüsselzeichen verwendet worden, beginnt man wieder von vorne, bis man beim letzten Klartextzeichen angekommen ist. Groß- und Kleinschreibung ist für die Verschlüsselung nicht relevant und Satzzeichen, sowie andere Sonderzeichen, ebenso.

KT d i e h e r b s t f e r i e n s i n d v i e l z u k u r z
k g e h e i m g e h e i m g e h e i m g e h e i m g e h e i

Jedes Zeichen des Klartextes wird nun mit seinem Schlüsselzeichen mit Hilfe des Vigenère-Quadrates verschlüsselt. Das erste Klartextzeichen ist ein „d“, weshalb man sich dieses in der ersten Zeile mit Buchstaben heraussucht. Nun sucht man in der ersten Spalte mit Buchstaben das dazugehörige Schlüsselzeichen, hier „g“. Die Spalte zum „d“ und die Zeile zum „g“ treffen sich bei „j“. Dies ist das erste Zeichen unseres Geheimtextes „GT“.

Klartextzeichen: D, Schlüsselzeichen: G, Geheimtextzeichen: J

Geheimtext nach dem Verschlüsseln des ersten Klartextzeichens:

KT d i e h e r b s t f e r i e n s i n d v i e l z u k u r z
k g e h e i m g e h e i m g e h e i m g e h e i m g e h e i
GT j

Für das zweite Geheimtextzeichen verschlüsselt man das zweite Klartextzeichen „i“ mit seinem entsprechenden Schlüsselzeichen, nun „e“.

Klartextzeichen: I, Schlüsselzeichen: E, Geheimtextzeichen: M

Geheimtext nach dem Verschlüsseln des zweiten Klartextzeichens:

KT d i e h e r b s t f e r i e n s i n d v i e l z u k u r z
k g e h e i m g e h e i m g e h e i m g e h e i m g e h e i
GT j m
  1. Bearbeiten Sie die Aufgaben in arbeitsteiliger Partnerarbeit.

    Vervollständigen Sie die Verschlüsselung des Klartextes aus dem Einstiegsbeispiel.

    Denken Sie sich eine eigene kurze Nachricht mit mindestens 10 Zeichen und einen Schlüssel aus.
    Erzeugen Sie aus mit Ihrem Satz einen mit dem Vigenère-Verfahren verschlüsselten Geheimtext.

    Entschlüsseln Sie den mit dem Vigenère-Verfahren verschlüsselten Geheimtext einer anderen Person aus dem Kurs mit Hilfe des Vigenère-Quadrats.

  2. Bearbeiten Sie die folgenden Aufgaben schriftlich und ausformuliert in Partnerarbeit.

    Erläutern Sie, weshalb es sich bei dem Vigenère-Verfahren um ein polyalphabetisches Verfahren handelt und geben Sie auch die Anzahl der Geheimtextalphabete an, wenn die Schlüssellänge n ist.
    Vergleichen Sie das Vigenère-Verfahren mit dem Caesar-Verfahren.

    Entscheiden Sie, ob eine einfache Häufigkeitsanalyse, bei einem mit dem Vigenère-Verfahren verschlüsselten Geheimtext, ein geeignetes Mittel der Kryptoanalyse ist und begründen Sie Ihre Antwort.

Betrachten wir den folgenden mit Vigenère verschlüsselten Geheimtext:

FIQFIQIOUOELOTHFIQTTXOSHSELOIJMAQEJXDHHFDDTELOHRSNZVRGFGHGELFRWGUHSDLFSHFIQJGXOGXOD IJNGFTVJCKIEXUEOFIGFRQJCKUMHIROFBHODLHSRODHSNDMSZBPSFNWJEUJNGJEVFRHJNPBLLHEQGLDHGH

  1. Untersuchen Sie den Geheimtext mit Ihrem Sitzpartner auf Auffälligkeiten.
  2. Betrachten wie das folgenden beispiel einer Vigenère-Verschlüsselung des Klartextes
    eswareinmaleinfischerundseinefraudiewohntenzusammenineinerkleinenfischerhuettedichtaneinem
    mit dem Schlüssel
    hund„.
    KT e s w a r e i n m a l e i n f i s c h e r u n d s e i n e
    k h u n d h u n d h u n d h u n d h u n d h u n d h u n d h
    GT

    KT d i e w o h n t e n z u s a m m e n i n e i n e r k l e i
    k u n d h u n d h u n d h u n d h u n d h u n d h u n d h u
    GT

    KT n e n f i s c h e r h u e t t e d i c h t a n e i n e m
    k n d h u n d h u n d h u n d h u n d h u n d h u n d h u n
    GT

    Untersuchen Sie den Klartext auf sich wiederholenden 3-Gramme, 4-Gramme oder 5 Gramme (n-Gramm).
    Nutzen Sie hierzu das Onlinetool cryptool.

    Analysieren Sie auch, welche Auswirkungen die n-Gramme auf den Geheimtext haben und ob man daraus nützliche Schlüsse ziehen kann.

Wir haben festgestellt, dass aufgrund der Tatsache, dass bei einer Vigenère-Verschlüsselung nicht immer ein gleiches Zeichen des Klartextes mit dem gleichen Schlüsselbuchstaben verschlüsselt wurde, die ursprünglichen Zeichenhäufigkeiten des Klartextes „verwischt“ werden. Gerade dies ist der Vorteil eines polyalphabetischen, im Vergleich zu einem monoalphabetischen, Substitutionsverfahrens.
Sehr lange galt ein mit dem Vigenère-Verfahren verschlüsselter Text als nicht angreifbar. In diesem Abschnitt wird ein Mittel der Kryptoanalyse vorgestellt, mit welchem jedes polyalphabetische Verschlüsselungsverfahren zu knacken ist.
Das Kasiski-Verfahren wurde erstmals 1863 von Friedrich Wilhelm Kasiski, einem preußischen Soldaten und Kryptologen, veröffentlicht.
Grundlage ist, dass der Geheimtext bekannt ist und durch das Vigenère-Verfahren, mit unbekanntem Schlüssel, chiffriert wurde

Geheimtext:
FIQFIQIOUOELOTHFIQTTXOSHSELOIJMAQEJXDHHFDDTELOHRSNZVRGFGHGELFRWGUHSDLFSHFIQJGXOGXODIJNGFTVJCKIEXUEOFIG FRQJCKUMHIROFBHODLHSRODHSNDMSZBPSFNWJEUJNGJEVFRHJNPBLLHEQGLDHGH

Schritt 1: Suche nach n-Grammen mit Zeichenlänge 3 (besser mehr als 3!)
Zunächst sucht man im Geheimtext Wiederholungen von Zeichenketten mit mehreren Zeichen. Die Idee dahinter ist, dass es sehr unwahrscheinlich ist, dass diese gleichen Zeichenketten im Geheimtext zufällig durch die Verschlüsselung von verschiedenen Klartextzeichen mit unterschiedlichen Schlüsselzeichen entstanden sind. Also geht man davon aus, dass diese Zeichenketten auch im Klartext identisch und somit mit den gleichen Schlüsselzeichen chiffriert wurden. Je länger diese Wortwiederholungen im Geheimtext sind, desto wahrscheinlicher wird die Annahme. Man sollte nach Wiederholungen mit mindestens drei Zeichen, besser mehr, suchen. In unserem einfachen Beispiel soll uns die Länge 3 genügen.
FIQFIQIOUOELOTHFIQTTXOSHSELOIJMAQEJXDHHFDDTELOHRSNZVRGFGHGELOFRWGUHSDLFSHFIQJGXOGXODIJNGFTVJCKIEXUEOFIG
FRQJCKUMHIROFBHODLHSRODHSNDMSZBPSFNWJEUJNGJEVFRHJNPBLLHEQGLDHGH

Wir finden die Wiederholungen FIQ und ELO der Länge 3.

Schritt 2: Zählen der Abstände zwischen den Wiederholungen
Wenn man annimmt, dass die Zeichenketten FIQ und ELO mit den gleichen Schlüsselzeichen chiffriert wurden, muss der Schlüssel einen ganzzahligen Abstand zu diesen Zeichenketten haben. Also muss zum Beispiel von einem ELO zum nächsten der Schlüssel 1-mal, 2-mal, 3-mal,… vom Anfang des Wortes ELO zum nächsten hineinpassen. Deshalb werden nun alle Abstände von einer Wiederholung zur nächsten gezählt.

Wörter Abstände in Zeichen
FIQ 3, 12, 57, 69, 72
ELO 15, 18, 33

Schritt 3: Gemeinsame Teiler der Abstände finden
Nun haben wir also gezählt, dass 3, 12, 15, 18 und 57 Zeichen zwischen den Wiederholungen liegen. Der gesuchte Schlüssel wird also irgendeine Länge haben, die ein ganzzahliger Teiler der gefunden Abstände ist. Wären zum Beispiel alle gefundenen Abstände 15 und 20, würde die unbekannte Schlüssellänge 3, 5 oder 15 mal in die 15 und 2, 4, 5, 10 oder 20 mal in die 20 passen. Die einzige gemeinsam enthaltene Schlüssellänge ist bei diesem Beispiel 5. Nun geht man davon aus, dass der Schlüssel 5 Zeichen beinhaltet.
Bei unserem Beispiel sind die gemeinsamen Teiler der gefundenen Abstände:

Abstände Gemeinsame Teiler
3, 12, 57 3 | 2, 3, 4, 12 | 3, 19, 57 | 3, 11, 33, 69
2, 3, 4, 6, 8, 12, 24, 36, 72
15, 18 3, 5, 15 | 2, 3, 6, 9, 18

Man beachte, dass nicht immer alle gefunden Abstände systematisch zum Schlüssel passen müssen, es kann auch sein, dass wenige der gefunden Abstände und Wiederholungen tatsächlich zufällig entstanden sind und uns hier nicht weiterhelfen. Solche Abstände werden ignoriert.
Die Zahl 3 kommt als einziger gemeinsamer Teiler in Frage. Also könnte die Schlüsselwortlänge 3 sein.

Schritt 4: Zerlegung des Textes in n Blöcke (n = Schlüsselwortlänge)
Nun kann eine Dechiffrierung beginnen. Wenn die Länge des Schlüssel tatsächlich 3 ist, muss der 1., 4., 7., 10., … Buchstabe mit dem ersten Zeichen des Schlüssels chiffriert worden sein. Analog dazu der 2., 5., 8., 11., … Buchstabe mit dem zweiten Schlüsselzeichen und der 3., 6., 9., 12., … Buchstabe mit dem dritten Schlüsselzeichen. Jede dieser Verschlüsselungen für sich betrachtet ist eine monoalphabetische Substitution und im speziellen eine Caesar-Verschlüsselung. Deshalb teilt man den Geheimtext jetzt in die oben genannten Blöcke auf, von denen jeder einzelne nach Caesar verschlüsselt wurde.

Schlüsselzeichen Block zum Schlüsselzeichen
1 FFIOOFTOSOMEDFTOSVFGFSFFJOOFJIUFFJUIFOHOSMBFJFJBHGH
2 IOETITSEIAJHDENHRGERUDSIGGDNTCEEIRCMRBDSNSPNENERNELG
3 QQULHQXLJQHDLRZGHLWHLHXXVKXOGQKOHLHRDZSWUGVHPLQDH

Schritt 5: Häufigkeitsanalyse der einzelnen Blöcke
Da jeder einzelne Block mit Caesar chiffriert wurde, können wir durch eine einfache Häufigkeitsanalyse dasjenige Zeichen im Geheimtextblock finden, welches das „E“ im Klartext gewesen sein muss. Ist nicht ein einziges Zeichen deutlich am Häufigsten im Block vertreten, wählen wir sicherheitshalber die am nächst häufigsten auftauchenden Zeichen zusätzlich.

Block Häufigste Zeichen
1 F: 14 mal
2 E: 9 mal, N: 6 mal, G: 6 mal
3 H: 11 mal

Schritt 6: Caesarverschiebung der einzelnen Blöcke
Jetzt kann man die Caesar-Schlüssel der einzelnen Blöcke bestimmen. Wenn es mehrere Möglichkeiten, wie in unserem Beispiel bei Block 2 gibt, bestimmen wir mehrere Caesar-Schlüssel und schauen später, ob ein Schlüsselwortmöglichkeit sinnvoll erscheint bzw. den Geheimtext sinnvoll entschlüsseln kann.

Block Caesar-Schlüssel
1 F: 14 mal -> Caesar-Schlüssel 1 (B)
2 E: 9 mal -> Caesar-Schlüssel 0 (A)
N: 6 mal -> Caesar-Schlüssel 9 (I)
G: 6 mal -> Caesar-Schlüssel 2 (C)
3 H: 11 mal -> Schlüssel 3 (D)

Schritt 7: Mögliche Schlüsselwörter aufstellen
Schauen wir uns zunächst alle möglichen Schlüsselwörter, die sich aus unserer bisherigen Analyse des Geheimtextes ergeben haben, an.
bad, bid, bcd
Das einzige Wort, dass hier ein „richtiges“ Wort ist, ist bad, welches nun als Schlüsselwort getestet wird. Natürlich kann man nicht davon ausgehen, dass ein Schlüsselwort immer einen Sinn ergibt. Dies ist sogar nicht empfehlenswert, da eine Dechiffrierung über Mittel der Kryptoanalyse dadurch erleichtert wird. Im Normalfall müssten wir nun eine Dechiffrierung mit allen drei möglichen Schlüsseln versuchen.

Schritt 8: Dechiffrierung der ersten Zeile

Geheimtext F I Q F I Q I O U O E L O T H F I Q T T
Schlüssel B A D B A D B A D B A D B A D B A D B A
Verschiebung 1 0 3 1 0 3 1 0 3 1 0 3 1 0 3 1 0 3 1 0
Klartext E I N E I N H O R N E I N T E E I N S T

Also ist der gesuchte Klartext: Ein Einhorn einte einst… (Das ist der Beginn eines Märchens.)

  1. Bearbeiten Sie die Aufgaben in Einzelarbeit.

    Verschlüsseln Sie nach Vigenère Ihren Vor- und Zunamen mit dem Schlüsselwort „Schule“.

    Entschlüsseln Sie den folgenden Geheimtext mit dem Schlüsselwort „geheim“:
    jmlwmebiyjitxiukixzylfmdsiovmdknhlztarkizfkeswvuilaovmioiez

  2. Bearbeiten Sie die folgenden Aufgaben schriftlich und ausformuliert in Einzelarbeit.

    Entschlüsseln Sie mit Hilfe des Kasiski-Verfahrens den Geheimtext „Geheimtext 1.odt“, welcher mit dem Vigenère-Verfahren chiffriert wurde. Nutzen Sie hierfür ein Textverarbeitungsprogramm, Häufigkeitsanalyse für n-Gramme von Cryptool und Vigenère-Entschlüsselung von Cryptool.
    Beschreiben Sie das gesamte Verfahrne mit allen Schritten.

    Entschlüsseln Sie mit Hilfe des Kasiski-Verfahrens den Geheimtext „Geheimtext 2.odt“, welcher mit dem Vigenère-Verfahren chiffriert wurde.

    Erläutern Sie, wieso die Vigenère-Chiffrierung lange Zeit als sicher galt.

  3. Eine neue Variante, Running key, soll die Sicherheit von Vigenère verbessern. Es gibt nun zwei Schlüsselwörter und diese werden nacheinander genutzt.
    Für den Klartext „the mandalorian is a bounty hunter“ und die beiden Schlüssel „grogu“ und „dindjarin“ wird der Geheimtext wie folgt erzeugt:
    Zeichen abcdefgh ijklmno pqrstu vwxyz
    Verschiebung 01234567 891011121314 151617181920 2122232425

    KTthemand aloriani
    key1grogugr ogugrogu
    key2dindjar indindja
    k92527929637 2219231430171520
    k%26925193611 221923144171520
    keyBjzbjdgl wtxoerpu
    GTcgfsgto welfmrcc

    KTsabount yhunter
    key1grogugr ogugrog
    key2rindind jarindi
    k2325279281920 2363714301714
    k%2623251921920 236111441714
    keyBxzbjctu xgloero
    GTpzcxwgo vnfcxvf
    Der vollständige Geheimtext ist: cgfsgtowelfmrccpzcxwgovnfcxvf.

    Verschlüsseln Sie den Klartext „love wins“ mit den Schlüsseln „at“ und „sun“ nach der obigen Methode.

    Entschlüsseln Sie den Geheimtext „IHSQIRIHCQCU“, der mit den Schlüsseln „go“ und „cat“ nach der obigen Methode verschlüsselt wurde.

    Beurteilen Sie die folgende Aussage:
    Running key ist wie eine Vigenère-Verschlüsselung mit einem einzigen Schlüssel, dessen Länge dem kleinsten gemeinsamen Vielfachen der Einzelschlüssellängen entspricht.

    Vergleichen Sie die Sicherheit von Running key mit der von Vigenère, in den folgenden Fällen.

    1. Das kleinste gemeinsame Vielfache der Schlüssellängen ist kleiner als die Länge des Klartextes.
    2. Das kleinste gemeinsame Vielfache der Schlüssellängen ist größer oder gleich als die Länge des Klartextes.

    Beurteilen Sie die folgenden Aussagen:

    1. Es ist wichtiger, den Verschlüsselungsalgorithmus geheimzuhalten, als den Schlüssel.
    2. Es ist wichtiger, den Schlüssel geheimzuhalten, als den Verschlüsselungsalgorithmus.

    Untersuchen Sie, in welchen Situationen die Kombination der Schlüssel bei Running key die größere Sicherheit bietet.

    1. Schlüssel 1: „on“ und Schlüssel 2: „over“
    2. Schlüssel 1: „on“ und Schlüssel 2: „off“
    3. Schlüssel 1: „security“ und Schlüssel 2: „test“
    4. Schlüssel 1: „network“ und Schlüssel 2: „key“
    Formulieren Sie eine Aussage, wie die Schlüssellängen der Teilschlüssel sein müssen, um eine möglichst hohe Sicherheit bei Running key zu erzielen.

Stellen wir uns vor, Alice und Bob wollen ein sehr sicheres Verschlüsselungsverfahren nutzen, um sich geheime Nachrichten zu schreiben.

Alice schickt Bob eine Nachricht

Bevor die beiden Nachrichten versenden können, müssen sie sich auf einen gemeinsamen Schlüssel einigen.
Dafür müssen sich die beiden entweder treffen oder den Schlüssel über die Post oder einen digitalen Kommunikationsweg austauschen. Letzteres ist heutzutage eher wahrscheinlich.
Wenn nun die neugierige Eve erfahren hat, dass die beiden geheime Nachrichten austauschen, möchte sie unbedingt erfahren, welche Geheimnisse die beiden wohl zu bereden haben.
Wie kann Eve dabei vorgehen?
Alice schickt nun eine verschlüsselte Nachricht an Bob und Eve hat die Möglichkeit, diese Nachricht abzufangen.

Eve fängt die Nachricht zwischen Alice und Bob ab

Da die Nachricht verschlüsselt und die Verschlüsselung sehr sicher ist, nützt ihr dieser Schritt nichts. Das Problem ist aber, dass Eve offenbar die Möglichkeit hat, Nachrichten abzufangen und auch weiterzuleiten. Wenn sie das mit der verschlüsselten Nachricht kann, kann sie auch was abfangen?
Genau, die Schlüssel können beim Austausch abfangen und weiterleiten. In der analogen Welt könnte Eve einfach die Briefe mit dem Schlüssel und der verschlüsselten Nachricht abfangen.
Somit könnte sie jede Nachricht entschlüsseln, lesen und unbemerkt weiterleiten.

Symmetrische Verschlüsselung hat das Problem, dass zum Ver- und Entschlüsselung der Nachricht der verwendete Schlüssel beiden Partnern bekannt sein muss. Kennt ein Angreifer nun also den Schlüssel, weil er den Austausch diesen verfolgt hat, kann er sämtliche Nachrichten abfangen, entschlüsseln und lesen oder auch neue Nachrichten verschlüsseln und versenden. Wir sehen, dass in solchen Fällen Vertraulichkeit, Authentizität und Integrität der Nachricht nicht mehr gewahrt werden.
An dieser Stelle setzen nun asymmetrische Verfahren an. Sie sorgen in erster Linie dafür, dass Authentizität und Integrität der Nachricht gewahrt werden, indem sie dafür Sorge tragen, dass der Schlüssel sicher ist und er auch nur zur Kommunikation mit einer bestimmten Person passt.
Wie das geht, schauen wir uns im Folgenden an.

  1. (Einzelarbeit) Stellen wir uns folgende Situation vor: Karl Kunde sitzt sonntags vor dem PC um zu shoppen. Er entdeckt den Online-Shop von Vera Verkäuferin, bei dem er gerne einige Dinge erwerben möchte. Für die Bezahlung möchte er seine Kreditkarte nutzen, die Vera auch akzeptiert.
    Selbstverständlich sollen die notwendigen Daten ausschließlich an Vera gehen und niemandem sonst, vor allem nicht Spike Spitzbube, der sehr gerne die Kreditkarteninformationen von Karl wüsste, in die Hände fallen.
    Man kann davon ausgehen, dass Vera und Karl sich aufgrund räumlicher Distanz nicht treffen können.
    Erläutern Sie, warum ein symmetrisches Verschlüsselungsverfahren für die Kommunikation von Vera und Karl nicht geeignet ist.
  1. (Partnerarbeit) Karl und Vera haben ein neues besonderes Verfahren entwickelt. Dieses Verfahren kann man sich wie ein Schloss vorstellen.
    Doch dieses Schloss hat eine Besonderheit. Es besitzt zwei Schlüssellöcher.
    Geöffnetes Schloss
    Geschlossenes Schloss
    Das Neue ist hier, dass sowohl Karl, als auch Vera, einen eigenen, privaten Schlüssel für das Schloss besitzen.
    Schloss mit den beiden Schlüsseln
    Der gelbe Schlüssel ist Karls privater Schlüssel und der grüne Veras. Wenn nun eine Nachricht verschlüsselt werden soll, muss das Schloss an diese Nachricht gehängt und geschlossen werden. Wenn man die Nachricht wieder lesen möchte, muss das Schloss an der Nachricht geöffnet werden.
    Situation: Karl möchte eine verschlüsselte Nachricht an Vera schicken

    Beschreiben Sie den Ablauf des Verfahrens, wenn Vera eine Nachricht an Karl schicken möchte.

    Der neugierige Spike hat nun die Möglichkeit, den verschlüsselten Brief abzufangen.
    Untersuchen Sie, welche der am Kryptosystem beteiligten Komponenten (Schloss, Veras Schlüssel, Karls Schlüssel) öffentlich bekannt sein bzw. ausgetauscht werden dürfen und welche nicht.

    Karl und Vera müssen das gemeinsame Schloss vorher austauschen. Das soll zwar auf einem möglichst sicheren Kanal geschehen aber der clevere Spike kann das Schloss abfangen.
    Entscheiden Sie, ob Spike mit dem Schloss etwas anfangen kann.

    Nun ändern wir die Situation. Karl und Vera haben einen eigenen Schlüssel, wie vorher auch, aber nun ein eigenes Schloss.
    Wir gehen davon aus, dass beide Schlösser nur durch den jeweiligen Schlüssel geöffnet werden können. Das Verschließen eines Schlosses kann durch jede Person vorgenommen werden.

    Neue Sitation: Jeder hat ein Schloss und einen Schlüssel zum Öffnen.

    Erläutern Sie, weshalb Karl und Vera vorher ihre jeweiligen Schlösser geöffnet austauschen oder an irgendeinem öffentlich zugänglichen Ort deponieren müssen, wenn die beiden verschlüsselte Nachrichten austauschen wollen.
    Untersuchen Sie, welchen Nutzen Spike das Abfangen

    • der Schlösser,
    • einer verschlüsselten Nachricht,
    • beider oben genannten Teile
    nützen würde.

    Erläutern Sie, was die Verfahren in dieser Aufgabe von allen bisher betrachteten Verschlüsselungsverfahren unterscheidet und worin genau der Mehrwert an Sicherheit liegt.
    Geben Sie auch ganz deutlich an, welche Komponenten eines solchen Kryptosystems öffentlich, also bekannt, und welche privat, also geheim, sein müssen. Gehen Sie dabei auch darauf ein, weshalb bestimmte Komponenten gerade öffentlich sein müssen.

Nun klären wir, wie es überhaupt möglich ist, dass sich Karl und Vera so untereinander einigen können, dass sie für ein symmetrisches Verschlüsselungsverfahren einen gemeinsamen Schlüssel haben können, den sie aber niemals untereinander austauschen müssen.

Für diese Art der Verschlüsselung werden mathematische Berechnungen genutzt. Die hier wesentliche Berechnung ist die Modulo-Rechnung.
In Java(/Processing) haben wir bereits kennengelernt, dass man mit z. B. 3%2 den Wert 1 berechnen kann. Das Zeichen % berechnet in Java den ganzzahligen Rest beim Teilen von 3 durch 2. In der Mathematik schreibt man dies allerdings nicht mit dem Zeichen % sondern dem Wort mod. Das mod steht für das Wort modulo. Zum Beispiel liest man 3mod 2≡1 als „3 modulo 2 ist 1“, also der ganzzahlige Rest beim Teilen von 3 durch 2 ist 1. Das Gleichheitszeichen wir hier durch ≡ ersetzt, da z. B. hinter 1mod 3 unendlich viele Zahlen stehen, nicht nur die 1. So ist auch 4≡1mod 3 oder auch 7, 10, 13,…
Rechenregeln für Restklassen
Bei allen Rechnungen ist zu beachten, dass am Ende einer jeden Rechnung gegebenenfalls noch einmal modulo zu rechnen ist, wenn das Ergebnis zu groß ist. Zum Beispiel ist

8mod 5+18mod 5≡3+3=6

und 6 ist noch weiter modulo zu rechnen:

8mod 5+18mod 5≡(3+3)mod 5=6mod 5≡1.
Rechnung Formal Beispiel
Addieren (a + b) mod n ≡ (a mod n + b mod n) (5 + 12) mod 3 ≡ 17 mod 3 ≡ 2
und
5 mod 3 + 12 mod 3 ≡ (2 + 0) mod 3 ≡ 2
Multiplizieren (a · b) mod n ≡ (a mod n) · (b mod n) (4 · 5) mod 3 ≡ 20 mod 3 ≡ 2
und
(4 mod 3) · (5 mod 3) ≡ 1 · 2 ≡ 2
Potenzieren ak mod n ≡ (a mod n)k 44 mod 3 ≡ 256 mod 3 ≡ 1
und
(4 mod 3)4 ≡ 14 ≡ 1

Man beachte, dass insbesondere bei der Rechenregel zum Potenzieren enorm viel Rechenaufwand eingespart wird!

Elegantes Potenzieren
Große Potenzen sind ohne ein digitales Hilfsmittel nur sehr aufwendig zu berechnen. Hier ein Beispiel zum schnellen Berechnung von Potenzen beim Restklassenrechnen ohne Hilfsmittel:

710mod 11≡(72⋅72⋅72⋅72⋅72)mod 11≡(49⋅49⋅49⋅49⋅49)mod 11≡(5⋅5⋅5⋅5⋅5)mod 11≡(25⋅25⋅5)mod 11≡(3⋅3⋅5)mod 11≡45mod 11≡1

Noch ein Beispiel:

520mod 9≡(52⋅52⋅52⋅52⋅52⋅52⋅52⋅52⋅52⋅52)mod 9≡(25⋅25⋅25⋅25⋅25⋅25⋅25⋅25⋅25⋅25)mod 9 ≡(7⋅7⋅7⋅7⋅7⋅7⋅7⋅7⋅7⋅7)mod 9≡(49⋅49⋅49⋅49⋅49)mod 9≡(4⋅4⋅4⋅4⋅4)mod 9≡(16⋅64)mod 9 ≡(7⋅1)mod 9≡7.

Wir nutzen im Folgenden das Wissen über die Restklassenrechnung, um den sogenannten Diffie-Hellman-Schlüsselaustausch durchzuführen.

  1. Bearbeiten Sie die Aufgaben in arbeitsteilige Partnerarbeit. Dokumentieren Sie Ihre Arbeit in diesem Dokument.

    Jeder von Ihnen wählt für sich eine private Zahl x zwischen 2 und 15.

    Berechnen Sie den (ganzzahligen) Rest, wenn Sie p=11 und und g= 7 wählen und teilen Sie das Ergebnis (Ihren öffentlichen Schlüssel) Ihrem Partner mit. Sie finden unten einen Rechner, den Sie nutzen können.

    Sie haben den öffentlichen Schlüssel von Ihrem Partner erhalten. Berechnen Sie nun den gemeinsam geheimen Schlüssel k.
    Vergleichen Sie das Ergebnis mit Ihrem Partner.
    Das gemeinsamen Ergebnis kann nun als Schlüssel in einem symmetrischen Verfahren genutzt werden.

    Führen Sie einen weiteren Durchgang aus, indem Sie 7 und 11 durch andere Zahlen ersetzen.
    Die erste Zahl muss kleiner als die zweite Zahl, das Modul, und das Modul sollte eine Primzahl sein.
    Dokumentieren Sie auch auch hier Ihr Ergebnis mit der Vorlage.

    Berechne deinen öffentlichen Schlüssel und den gemeinsamen geheimen Schlüssel.

    1. Berechne deinen öffentlichen Schlüssel

    Gib eine Primzahl p, eine Generator g und deinen privaten Schlüssel ein.

    Dein öffentlicher Schlüssel:

    (Berechnet als: gprivat mod p = )

    2. Berechne den gemeinsamen geheimen Schlüssel

    Gib den öffentlichen Schlüssel deines Gegenübers ein, um den gemeinsamen geheimen Schlüssel zu berechnen.

    Gemeinsamer geheimer Schlüssel:

    (Berechnet als: andererSchlüsselprivat mod p = )

  1. Die folgenden Aufgaben bearbeiten Sie bitte in Partnerarbeit.

    Begründen Sie, welche der für das vorher vorgestellte Verfahren Zahlen über einen öffentlichen Kanal ausgetauscht werden müssen und demnach während des Schlüsseltauschs von einer angreifenden Person abgefangen werden können

    Diskutieren Sie, ob das bloße Abfangen dieser Informationen für Spike ausreicht, um den gemeinsamen geheimen Schlüssel zu berechnen und damit abgefangene verschlüsselte Nachrichten zu entschlüsseln.
    Erläutern Sie zusätzlich, welche Voraussetzungen Spike erfüllen müsste, um an die privaten Schlüssel von Karl und Vera zu gelangen.
    Untersuchen Sie, welche Art von Angriffen Spike ausführen kann, wenn er

    1. an einen privaten Schlüssel herankommen könnte,
    2. an den gemeinsamen Schlüssel herankommen könnte.

    Fassen Sie tabellarisch zusammen, welche Angriffsarten mit symmetrischer Verschlüsselung und den asymmetrischen Verfahren verhindert werden sollen.

  1. Wir erweitern das Angriffsszenario noch etwas. Bearbeiten Sie die Aufgaben in Partnerarbeit.
    Spike hat nun auch ein eigenes Schloss mit entsptrechendem geheimen Schlüssel.
    Spike hat nun auch ein Schloss und einen geheimen Schlüssel
    Untersuchen Sie, welche Möglichkeiten sich für Spike jetzt ergeben, wenn er die gesamte Kommunikation zwischen Karl und Vera abfangen kann.
    Gehen Sie insbesondere darauf ein, ob Spike mit seinem eigenen Schloss etwas anfangen kann und ob dies den anderen beiden gegebenenfalls auffällt.
  1. (Partnerarbeit) Wir erweitern das Szenario erneut. In der Realität ist es so, dass man sowohl mit einem Schlüssel, als auch mit einem Schloss verschlüsseln kann.
    Das wirkt vielleicht auf den ersten Blick nicht möglich, aber ein sehr einfaches Beispiel kennt jede Person aus dem Mathematikunterricht.
    Der zu verschlüsselnde Klartext sei die Zahl 5.
    Veras privater Schlüssel ist die Funktion g , mit g ( x ) = x 3 .
    Veras öffentlicher Schlüssel, also das bisherige Schloss, ist dann die Funktion f , mit f(x)=x3.
    Um die Abbildungen anzupassen, werden die öffentlich Schlüssel ab nun nicht mehr als Schloss dargestellt und die privaten nicht mehr als Schlüssel dargestellt.

    Erläutern Sie die untere Abbildung.

    Spike hat nun auch ein Schloss und einen geheimen Schlüssel

    Entwickeln Sie einen privaten und einen öffentlichen Schlüssel für Karl.
    Beschreiben Sie den Ablauf, wenn Vera an Karl die Klartextnachricht 4 schicken möchte.

  1. (Partnerarbeit) So, jetzt sind wir soweit, dass Vera die für eine Überweisung des Betrags, der von Karl gekauften Produkte, an Karl weitergeben möchte. Der fiese Spike denkt sich jedoch, dass er viel lieber das Geld auf sein eigenes Konto überwiesen haben möchte.
    Um das umsetzen zu können, tauscht er den öffentlichen Schlüssel von Vera aus.
    Im Folgenden sind zwei Szenarien mit den öffentlichen und privaten Schlüsseln dargestellt.
    Szenario 1
    Szenario 2

    Vergleichen Sie beide Szenarien und beurteilen Sie, ob es mit dem asymmetrischen Konzept des privaten und öffentlichen Schlüssels möglich ist, dass ein Sender authentifiziert, also als der vermeintliche Sender erkannt werden kann.
    Erläutern Sie diesen Ablauf.

    Schauen wir uns noch einmal das Verschlüsseln mit öffentlichen und privaten Schlüsseln an.
    Karl möchte zunächst verschlüsselt einkaufen. Da er weiß, dass er mit Vera kommunizieren möchte, sucht er im öffentlichen Register nach ihrem öffentlichen Schlüssel.

    Da Karl ein Kundenkonto besitzt, möchte er natürlich mit seinem Konto einkaufen.
    Entwickeln Sie mit Hilfe von Aufgabenteil a) eine Möglichkeit, dass Karl sich bei seiner verschlüsselten Bestellung auch bei Vera authentifizieren kann.
    Stellen Sie diesen Ablauf auch grafisch dar.

Vermutlich ist Ihnen bei einer URL schon häufiger das Schloss neben ebendieser aufgefallen, wie Sie es in dem Bild sehen können.

URL mit Schloss, Quelle: https://www.pctipp.ch/

Stellen Sie Vermutungen auf, welche Bedeutung das Schloss hat.

Damit die Authentifikation verlässlich ist, gibt es digitale Zertifikate, auch Public-Key-Zertifkat genannt. Wie der Name verrät, sind dies Zertifikate, welche die Zugehörigkeit eines öffentlichen Schlüssels zum angegebenen Eigentümer dieses Schlüssels bestätigt. Diese Aufgabe übernimmt eine dritte vertrauenswürdige Institution. In der Regel enthält ein digitales Zertifikat die folgenden Informationen:

  • den zu bestätigenden öffentlichen Schlüssel
  • den Eigentümer/die Eigentümerin des Schlüssels
  • die ausstellende Institution des Zertifikats (CA → Certificate Authority)
  • die genutzten kryptographischen Verfahren
  • die Gültigkeitsdauer des Zertifikats
  • eine digitale Signatur der ausstellenden Institution
  1. Webseiten sind ein gutes Beispiel für das Ausstellen von Zertifikaten. Auch Webseiten sollten überprüft worden sein, dass sie vertrauenswürdig sind und wirklich von dem bereitgestellt werden, von dem der Benutzer es erwartet. Nutzen Sie im Folgenden den Chrome-Browser, andere Browser funktionieren auch.

    Öffnen Sie zunächst die Seite der Bundesregierung und finden Sie über das Symbol oben links neben der URL folgende Aspekte heraus:

    • Aussteller des Zertifikats (Issuer)
    • Für welche Domain ist das Zertifikat gültig (Subjekt)
    • Ablaufdatum des Zertifikats (Validity)
    • Welcher Public Key-Algorithmus wird verwendet?
    • In welcher Darstellungsform liegen die Schlüssel vor?

    In den Folgenden drei Beispiele zeigt der Browser Fehler an.
    Untersuchen Sie bei den drei Websites welche Art von Fehler vorliegt und welche Gefahr davon ausgeht. Halten Sie Ihre Ergebnisse in einer Tabelle fest.

    1. Beispielseite A
    2. Beispielseite B
    3. Beispielseite C

Sie kennen das sicher: Sie erhalten eine E-Mail, die auf den ersten Blick von einem vertrauenswürdigen Anbieter stammt – etwa von Netflix, PayPal oder Ihrer Bank. Die Mail sieht authentisch aus, enthält Logos und sogar persönliche Anreden. Doch bei genauerem Hinsehen fallen Ihnen merkwürdige Details auf:

  • Die Absenderadresse lautet z. B. support@netflixx-security.com (mit zwei „x“) statt @netflix.com.
  • Der Link in der Mail führt zu einer URL wie https://netflix-kunden-service.ru (Russland-Domain!).
  • Die Mail fordert Sie auf, „dringend“ Ihre Zahlungsdaten zu aktualisieren – sonst werde Ihr Account gesperrt.

Beispielhafer Inhalt einer Phishing-Mail

Zum Glück überprüft Ihr Mail-Programm die Mails schon vorab und kann durchaus solche Mails filtern.
Stellen Sie Vermutungen darüber an, wie ein Mailprogramm herausfindet, ob die Mail vom richtigen Absender kommt oder nicht. Hinweis: natürlich spielen Zertifikate hier auch eine Rolle, aber die lassen wir hier einmal außen vor.

Die Idee der digitalen Signaturen

Alice (Senderin) hat von Online-Händler Otto einen Staubsauger geliefert bekommen, den sie nie bestellt hat. Der Grund: Bösewicht Mallory (Angreiferin) hat eine E-Mail an Otto geschickt und sich dabei als Alice ausgegeben. Leider ist es nur zur einfach, den Absender einer E-Mail zu fälschen […], und man braucht nicht viel Fantasie, um sich auszumalen, welchen Unfug Mallory damit sonst noch anstellen kann. Diese Umstände sind jedoch bekannt, und daher ist das Vertrauen, das einer E-Mail entgegengebracht wird, im Allgemeinen nicht sehr hoch. Das Problem falscher Absender ist allerdings nicht auf den Bereich der Computernetzwerke beschränkt. Schließlich kann auch per Post jeder, der dazu Lust und Laune hat, einen Brief mit beliebiger Absenderangabe durch die Gegend schicken. Im richtigen Leben löst man dieses Problem mit einer Unterschrift. In der digitalen Welt verwendet man eine digitale Signatur.

Was ist eine digitale Signatur?

Unter einer digitalen Signatur darf man sich keine Unterschrift von Hand vorstelle, die eingescannt und digital gespeichert wird. Eine solche könnte schließlich leicht kopiert und zweckentfremdet werden. Vielmehr versteht man darunter eine spezielle, schlüsselabhängige Prüfsumme, die im Zusammenhang mit einem digitalen Dokument ähnliche Eigenschaften aufweist wie eine Unterschrift von Hand. Damit die Bezeichnung Signatur gerechtfertigt ist, muss diese Prüfsumme folgende Voraussetzungen erfüllen:

  • Sie darf nicht einfach zu fälschen sein.
  • Ihre Echtheit muss überprüfbar sein.
  • Sie darf nicht unbemerkt von einem Dokument zum anderen übertragen werden können.
  • Das dazugehörige Dokument darf nicht unbemerkt verändert werden können.

Der erste Punkt wird sinnvollerweise wiederum dadurch gelöst, dass ein Passwort (auch in diesem Fall privater Schlüssel genannt) in die digitale Signatur eingeht. Damit kann Alice ihre eigene, eindeutige digitale Unterschrift generieren, sofern niemand sonst den Schlüssel kennt. Die Tücke bei der Sache ist jedoch, dass es für Bob (Empfänger) auch ohne Kenntnis des Schlüssels möglich sein muss, die Echtheit von Alices Unterschrift zu überprüfen. Dazu verwendet er wiederum einen öffentlichen Schlüssel […].

Kryptografie, Klaus Schmeh, dpunkt.verlag, ergänzt durch Lehrkraft

Wie kann man sich das konkret vorstellen?

Zunächst muss erstmal die digitale Signatur erstellt werden. Gegeben ist stets die zu übertragende Nachricht, auch Klartext genannt. Aus dieser Nachricht wird ein sogenannter Hash-Wert gebildet (diese Ermittlung kann auf sehr verschiedene Arten erfolgen [in der Abbildung als Hash-Algorithmus bezeichnet]). Der Hash-Wert ist ein nummerischer Wert mit fester Länge, wobei der Begriff „hash“ aus dem Englischen kommt und Störsignale bedeutet. Der Hash-Wert wird anschließend mithilfe des privaten Schlüssels von Alice (und manchmal auch zusätzlich mithilfe des öffentlichen Schlüssels von Bob) verschlüsselt. Der daraus resultierende Wert wird digitale Signatur genannt und der Nachricht angehängt/beigefügt. Somit ist die digital unterschriebene Nachricht erzeugt. Diese Nachricht wird dann übermittelt. Bob (der Empfänger) kann nun aus der Nachricht ohne digitale Signatur den Hash-Wert bestimmen. Mithilfe des öffentlichen Schlüssels von Alice (Senderin) (und manchmal auch mit seinem privaten Schlüssel) kann die digitale Signatur entschlüsselt werden. Stimmen nun der Hash-Wert aus der Nachricht und der entschlüsselte Wert aus der digitalen Signatur überein, weiß Bob, dass die Nachricht von Alice kommt und nicht verändert wurde.

Digitale Signierung einer Nachricht und Überprüfung
  1. (Partnerarbeit) Im Folgenden betrachten wir ein konkretes Verfahren, eine Nachricht digital mit einer sogenannten Hashfunktion zu signieren, um eine Authentifikation zu ermöglichen.
    Schritt Beschreibung Beispiel
    1 Die Hashfunktion überführt jedes Zeichen der Nachricht in seinen Unicode-Wert, also seinen ASCII-Code als Dezimalwert, summiert die Werte auf und berechnet zum Schluss den Rest beim Teilen dieser Summe durch 26. Das Ergebnis soll unter dem Hashwert h sein. Die Nachricht sei „ABC“. A hat den ASCII-Wert 65, B 66 und C 67. Dann ist die Summe: 65+66+67=198. 198 mod 26 = 16. Der Hashwert ist somit h=16.
    2 Zum Ver- und Entschlüsseln des Hashwertes wird ein, wie in Aufgabe 1 zum asymmetrischen Schlüsseltausch, erstellter gemeinsamen Schlüssel k verwendet. Dieser wird zu h addiert. Danach wird die Summe wieder modulo 26 gerechnet. Der gemeinsame asymmetrische Schlüssel sei 19. Da h=16, ist h+k=35. 35 mod 26 = 9.
    3 Die digitale Signatur ist der Buchstabe im Alphabet, der an der Stelle k+h mod 26, beginnend mit 0 für ‚A‘, ist. Ist zum Beispiel k+h mod 26 = 4, so ist die digitale Signatur das ‚E‘. Hier ist h+k mod 26 = 9, also ist die digitale Signatur in unserem Beispiel ‚J‘.
    4 Die digitale Signatur wird an die eigentliche Nachricht angehängt. Die Nachricht, inklusive der digitalen Signatur, ist für unser Beispiel: „ABCJ“.
    5 Nun kann die Nachricht übertragen werden.

    Erstellen Sie nach dem Verfahren von Aufgabe 1 zum asymmetrischen Schlüsseltausch einen gemeinsamen Schlüssel.

    Erstellen Sie jeweils für eine selbstgewählte Nachricht mit zwei Wörtern eine nach dem obigen Verfahren gebildete digitale Signatur.

    Entwickeln Sie gemeinsam die einzelnen Schritte eines Verfahrens, mit welchem eine, nach dem obigen Verfahren gebildete, digitale Signatur überprüft werden kann. Hier sollten Sie sich überlegen, wie Sie als Empfänger einer Nachricht ihrer Partnerarbeitperson diese so überprüfen können, dass sicher ist, die Nachricht kommt von dieser Person.

    Tauschen Sie Ihre Ergebnisse aus Aufgabenteil b) aus und testen Sie Ihr Verfahren bei dieser Nachricht.

  1. (Partnerarbeit) Im Folgenden betrachten wir die Hashfunktion aus der Aufgabe 1 etwas genauer.

    Ein Überweisung soll getätigt werden. Damit die Bank und ein Kunde bzw. eine Kundin authentifiziert werden können, wird für die digitale Signatur unser Verfahren genutzt. Erstellen Sie eine digitale Signatur für den eingezahlten Betrag „TAUSENDEINHUNDERT“ mit dem gemeinsamen Schlüssel 17.

    Ein Angreifer fängt die Nachricht ab und ändert den eigentlichen Nachrichtenteil zu „EINHUNDERTTAUSEND“.
    Analysieren Sie anhand des obigen Beispiels die Sicherheit unserer digitalen Signatur.
    Entwickeln Sie eine mögliche Verbesserung unseres Verfahrens.

    Hashfunktionen sollten drei wesentliche Kriterien erfüllen:

    1. Geringe Wahrscheinlichkeit von Kollisionen der Hashwerte für die Eingabewerte → verschiedene Eingaben liefern den gleichen Hashwert (Kollision).
    2. Surjektivität: Jeder Hashwert im definierten Wertebereich, also alle Werte, die theoretisch als Funktionswert der Hashfunktion vorkommen können, soll auch tatsächlich vorkommen können.
    3. Effizienz: Die Funktion muss schnell berechenbar sein, ohne großen Speicherverbrauch auskommen und sollte die Eingabewerte möglichst nur einmal lesen müssen.

    Entscheiden Sie, welche Kriterien die gegebene Hashfunktion aus unserem Verfahren erfüllen und welche nicht.