Asymmetrie umkehren
Wir erinnern uns an das Prinzip der reinen asymmetrische Verschlüsselung:
Gedankenexperiment
Was würde geschehen, wenn wir den Vorgang ändern?
Bei der asymmetrischen Verschlüsselung gibt es zwei Schlüssel, den öffentlichen und den privaten. Normalerweise verwendet Alice zur Verschlüsselung den öffentlichen Schlüssel von Bob. Bob wieder entschlüsselt den übermittelten Geheimtext mit seinem privaten Schlüssel.
Aufgabe: Frage
Was geschieht, wenn Alice den Klartext mit ihrem eigenen privaten Schlüssel «verschlüsselt»?
Dies lässt sich mit Schloss und Schlüssel leider nicht mehr sinnvoll und verständlich darstellen. Wir stellen uns die asymmetrische Ver-/Entschlüsselung einfach als reine mathematische Angelegenheit vor:
Der Verschlüsselungsfunktion
Die Entschlüsselungsfunktion
Aufgabe: Gedankenexperiment
Was erhalten wir, wenn wir der Verschlüsselungsfunktion anstelle des öffentlichen Schlüssels von Bob den privaten Schlüssel von Alice übergeben?
Wie lässt sich dieses «Produkt» wieder in einen Klartext verwandeln?
Lösung: Gedankenexperiment
Es entsteht ebenso ein «spezieller Geheimtext», also etwas, das nicht direkt verstanden werden kann, wir bezeichnen dieses Produkt mit dem Buchstaben
. Da dieser spezielle «spezielle Geheimtext»
mit dem privaten Schlüssel von Alice «verschlüsselt» wurde, kann er nur mit dem zugehörigen öffentlichen Schlüssel von Alice wieder in Klartext umgewandelt werden.
Aufgabe: Bedeutung des Gedankenexperimentes
Was bedeutet es, wenn jemand einen Text mit seinem eigenen privaten Schlüssel «verschlüsselt», so dass der Geheimtext nur mit dem zugehörigen öffentlichen Schlüssel «entschlüsselt» werden kann?
Was sagt die Tatsache, dass man einen solchen Geheimtext mit einem fremden (nicht dem eigenen) öffentlichen Schlüssel entschlüsseln kann, aus?
Digitale Signatur
Wir haben soeben das Prinzip der digitalen Signatur entdeckt.
Tipp: Digitale Signatur
Wenn Bob die Nachricht mit dem öffentlichen Schlüssel von Alice entschlüsseln kann, dann muss diese Nachricht vorher mit dem privaten Schlüssel von Alice verschlüsselt worden sein. Somit kann sie von niemandem anders stammen als von Alice. D.h. diese Nachricht ist quasi digital signiert.
Aufgabe: mehrere Leute
Überlege dir, wie ein signiertes Dokument von mehr als zwei Personen angeschaut und überprüft wird. Welche Schlüssel werden verwendet?
Lösung: mehrere Leute
Es wird nur das Schlüsselpaar von Alice verwendet:
Nachteile
Die bisher kennengelernte Art der digitalen Signatur ist nicht optimal, denn es gibt mehrere Probleme:
- Wegen der «Signatur» ist der Klartext nicht mehr lesbar (er ist ja nun speziell «verschlüsselt»). Dies ist umständlich, denn wenn du ein Dokument auf Papier unterschreibst, bleibt dieses trotzdem lesbar.
- Asymmetrische Verfahren sind langsam, d.h. wenn wir ein grosses Dokument (z.B. ein Video) signieren, dauert dieser Vorgang unnötig lange – ebenso das Überprüfen der Signatur (also das Entschlüsseln).
Integrität
Lesbarkeit und Signatur
Das im letzten Kapitel beschriebene Verfahren hat den grossen Nachteil, dass ein Dokument erst lesbar ist, wenn es «entschlüsselt» – oder anders ausgedrückt: wenn die Signatur entfernt – wurde. Das ist unpraktisch, schliesslich sind sämtliche deine von Hand unterschriebenen Dokumente trotzdem stets lesbar. Sobald das Dokument entschlüsselt (also lesbar) ist, ist aber auch die Signatur verschwunden – und somit auch die Überprüfbarkeit, welche Person was unterschrieben hat.
Wir suchen folglich eine Lösung, die das gleichzeitige Betrachten des Dokuments und der Signatur ermöglicht.
Manipulationen erkennen
Ist der Klartext stets sichtbar, so müssen wir sicherstellen, dass er nicht manipuliert werden kann. Schliesslich wollen wir nicht, dass ein Vertrag nach dem Signieren noch unentdeckt verändert werden kann.
Hashwerte
Hashwerte kennen wir bisher nur zur sicheren Speicherung von Passwörtern. Hashfunktionen können allerdings nicht nur Passwörter in Hashwerte umwandeln, sondern irgendwelche Daten.
Wir haben gesehen, dass Hashwerte eine Art digitale Fingerabdrücke sind. Es ist extrem schwierig (resp. in vernünftiger Zeit nicht möglich), zu einem bestehenden Text einen anderen zu finden, der denselben Hashwert erzeugt.
Auch wenn verschiedene Personen den Hashwert desselben Textes berechnen, ergibt sich stets derselbe Hashwert – aber natürlich nur, wenn dieselbe Hashfunktion verwendet wird. Ist ein Text auch nur ein wenig anders (wie im untenstehenden Beispiel gezeigt), so ergibt sich sofort ein völlig anderer Hashwert, womit leicht zu erkennen ist, dass die Texte nicht übereinstimmen.
Verfahren kombinieren
Wichtig ist uns:
- Die Dokumente sind stets lesbar und trotzdem vor Manipulationen geschützt sein.
- Asymmetrische Verfahren sollen eingesetzt werden, aber nicht zum Verschlüsseln des ganzen Dokuments, weil dies langsam ist.
Aus diesem Grund müssen wir – ähnlich wie bei der asymmetrischen Verschlüsselung – auch bei den digitalen Signaturen «nachbessern», wenn es um den konkreten Einsatz im Alltag geht.
Hashwerte
Hashwerte derselben Hashfunktion haben stets dieselbe Länge. Sie sind im Vergleich zum eingegebenen Text sehr kurz (wie der Fingerabdruck eines Menschen sehr klein ist im Vergleich zu all dem, was den Menschen mit diesem Fingerabdruck ausmacht).
Tipp
Anstelle des gesamten Textes signieren wir nur den Hashwert, das beseitigt die beiden obengenannten Nachteile.
Digitale Signaturen richtig verwenden
Wir versuchen, mehrere Verfahren zu kombinieren und deren Vorteile zu nutzen. Einerseits berechnen wir den Hashwert eines Dokuments, andererseits «verschlüsseln» wir nur diesen Hashwert asymmetrisch. Somit reduziert sich der Einsatz von asymmetrischer Verschlüsselung wiederum auf ganz kurze Werte. Zudem bleibt das Dokument intakt und stets lesbar.
Aufgabe: Digitale Signatur überprüfen
Überlege dir, wie man eine solche digital signierte Nachricht überprüfen kann. Zeichne die benötigten Schritte auf.
Lösung: Digitale Signatur überprüfen
Zertifizierungsstellen
Übertragung öffentlicher Schlüssel
Öffentliche Schlüssel enthalten keine geheime Information, können also problemlos über einen offenen Kanal übertragen werden. Oder?
Aufgabe: Angriff auf den öffentlichen Schlüssel
Alice schickt ihren öffentlichen Schlüssel (also ihr Vorhängeschloss) per Post an Bob. Überlege dir, was der bösartige Mallory anstellen könnte, um Alice und Bob zu überlisten.
Lösung: Angriff auf den öffentlichen Schlüssel
Da der öffentliche Schlüssel nur aus Zahlen besteht, ist es für Bob nicht erkennbar, ob er den richtigen Schlüssel erhalten hat.
Schutz gegen Man-in-the-Middle-Attacken
Wie können wir uns vor Man-in-the-Middle-Attacken schützen? Kann uns Trent helfen?
Aufgabe: Zertifizierungsstellen
Wie könnte Trent dafür sorgen, dass die öffentlichen Schlüssel besser überprüfbar sind?
Lösung: Zertifizierungsstellen
Trent ist bekannt und akzeptiert als Zertifizierungsstelle, alle kennen seinen öffentlichen Schlüssel. Wenn Trent die Kunden gut überprüft und deren Schlüssel signiert, kann Bob sicher sein, den richtigen Schlüssel zu verwenden. Er akzeptiert folglich keine unsignierten Schlüssel mehr.
pogoneo via Openclipart (PD) ↩︎