Angewandte Informatik
Kryptografie: symmetrisch, asymmetrisch, Signatur
Wie zwei Menschen sicher kommunizieren, die sich nie getroffen und nie einen Schlüssel ausgetauscht haben.
Benötigte Grundlagen
Dieses Vorwissen brauchst du für das Kapitel. Schau kurz nach, wenn dir etwas davon nicht mehr präsent ist, sonst leg direkt los.
Einführung
Du gibst deine Kartennummer in einem Onlineshop ein. Der Shop steht in einem anderen Land, du warst nie dort, und ihr habt nie einen Schlüssel vereinbart.
Trotzdem kann niemand mitlesen. Wie geht das?
Mit den Verfahren aus Klasse 11 nicht. Sie alle setzen voraus, dass beide Seiten denselben Schlüssel kennen, und dieser Schlüssel muss irgendwie zum gelangen. Genau daran hängt die entscheidende Frage der modernen Kryptografie, und ihre Lösung von 1976 gehört zu den erstaunlichsten Ideen der Informatik.
Das kannst du nach diesem Kapitel
das Schlüsselverteilungsproblem erklären und seine Größenordnung berechnen.
symmetrische und asymmetrische Verfahren unterscheiden.
die Idee der Einwegfunktion mit Falltür am Beispiel erläutern.
erklären, wie eine digitale Signatur Echtheit nachweist.
begründen, warum HTTPS ein hybrides Verfahren benutzt.
Kurz aufgefrischt
Vorausgesetzt werden aus Verschlüsselung: von Cäsar zur modernen Kryptografie die Begriffe , Geheimtext, Schlüssel und sowie das : Die Sicherheit darf nur vom Schlüssel abhängen, nie von der Geheimhaltung des Verfahrens.
Das Problem aller bisherigen Verfahren
, Vigenère und auch die modernen Verfahren wie AES sind symmetrisch: Zum Ver- und Entschlüsseln dient derselbe Schlüssel.
Daraus folgt ein Problem, das sich nicht wegdiskutieren lässt:
Wie kommt der Schlüssel zum ?
Über denselben unsicheren Kanal darf er nicht gehen, denn wer mitliest, hätte ihn. Ein persönliches Treffen scheidet bei einem in einem anderen Land aus.
Hinzu kommt ein zweites Problem, das mit der Zahl der Teilnehmer wächst. Sollen Personen paarweise vertraulich kommunizieren, braucht jedes Paar einen eigenen Schlüssel:
Bei 10 Personen sind das 45 Schlüssel, bei 1000 bereits 499 500, und bei allen Nutzern des Internets ist die Zahl jenseits jeder Vorstellung. Jeder einzelne müsste zuvor sicher ausgetauscht worden sein.
Symmetrisch und das Problem daran
Beide Schlüsselzeilen tragen dieselbe Farbe, weil es derselbe Schlüssel ist: Anna verschlüsselt damit, Ben entschlüsselt damit. Genau daraus folgt das Problem, an dem alle Verfahren bis hierher hängen: , Vigenère und auch das moderne AES. Wie kommt dieser Schlüssel zu Ben? Über die gestrichelte Leitung darf er nicht gehen, denn wer dort mitliest, hätte ihn; ein persönliches Treffen scheidet bei einem in einem anderen Land aus. 🔴 Dazu ein zweites Problem, das mit der Teilnehmerzahl wächst: Sollen Personen paarweise vertraulich schreiben, braucht jedes Paar einen eigenen Schlüssel, also Stück. Rechne es aus, bei 10 Personen sind das 45, bei 1000 schon 499 500, und jeder einzelne müsste vorher sicher ausgetauscht worden sein. Beides zusammen macht das symmetrische Verfahren für ein offenes Netz unbrauchbar.
Die Idee: zwei verschiedene Schlüssel
1976 wurde ein Ausweg gefunden, der zunächst unmöglich klingt.
Jeder Teilnehmer besitzt ein Schlüsselpaar:
| Schlüssel | Eigenschaft |
|---|---|
| öffentlicher Schlüssel | darf jeder kennen, wird veröffentlicht |
| privater Schlüssel | bleibt geheim, verlässt den Besitzer nie |
Die beiden hängen zusammen, aber nur in einer Richtung nutzbar:
Was mit dem öffentlichen Schlüssel verschlüsselt wurde, lässt sich nur mit dem privaten entschlüsseln.
Damit löst sich das Problem: Wer dir schreiben will, holt sich deinen öffentlichen Schlüssel, der frei verfügbar ist, und verschlüsselt damit. Nur du kannst die lesen. Es muss nie ein geheimer Schlüssel übertragen werden.
Auch das Mengenproblem verschwindet. Statt Schlüsseln braucht jeder nur ein Paar, also Paare insgesamt.
Asymmetrisch, beide Schlüssel gehören Ben
Zwei Schlüssel, zwei Farben und jetzt lies die beiden unteren Zeilen genau: Beide nennen Ben. Das ist kein Schreibfehler, sondern die ganze Aussage. Es ist ein Schlüsselpaar, und es gehört dem ; Anna besitzt in dieser Richtung gar keinen eigenen Schlüssel. Genau hier entsteht der häufigste Denkfehler der Oberstufe: Weil Anna verschlüsselt, ordnet man ihr den öffentlichen Schlüssel zu. Im Bild ist das nicht möglich. 🔴 Und damit lösen sich beide Probleme des Bildes davor auf einmal. Wer Ben schreiben will, holt sich seinen öffentlichen Schlüssel, der frei verfügbar ist. Es muss also nie ein geheimer Schlüssel übertragen werden. Und statt Schlüsseln braucht jeder nur ein Paar, also Paare für alle: bei 1000 Personen 1000 statt 499 500.
Wie das möglich ist: Einwegfunktionen
Der Kern ist eine mathematische Eigenschaft. Gesucht ist eine Rechnung, die in eine Richtung leicht und in die andere praktisch unmöglich ist.
Das bekannteste Beispiel ist das Faktorisierungsproblem:
Zwei Primzahlen zu multiplizieren, geht sofort. Aus dem Produkt die Faktoren zurückzugewinnen, ist bei kleinen Zahlen mühsam und bei Zahlen mit mehreren hundert Stellen nach heutigem Wissen praktisch aussichtslos.
Eine Einwegfunktion mit Falltür ist eine solche Funktion, die sich mit einer Zusatzinformation doch leicht umkehren lässt. Diese Zusatzinformation ist der private Schlüssel.
Das Verfahren RSA beruht darauf: Der öffentliche Schlüssel enthält das Produkt zweier großer Primzahlen, der private die Primzahlen selbst.
🔴 Beachte, was das für die Sicherheit heißt. Sie ist nicht bewiesen, sondern beruht auf der Annahme, dass niemand ein schnelles Faktorisierungsverfahren kennt. Ob eines existiert, ist offen; es ist dieselbe Frage wie bei und . Sollte eines gefunden werden, wären die betroffenen Verfahren gebrochen. Deshalb wird die Schlüssellänge über die Jahre immer wieder erhöht, und deshalb wird an Verfahren geforscht, die auf anderen Annahmen beruhen.
Der Nachteil: Geschwindigkeit
Asymmetrische Verfahren rechnen mit sehr großen Zahlen und sind deshalb um Größenordnungen langsamer als symmetrische. Eine große damit vollständig zu verschlüsseln, wäre unpraktikabel.
Daraus ergibt sich die übliche Lösung.
Hybride Verfahren
Hybrid heißt: beides kombinieren, jedes für das, was es gut kann.
1. Der Absender erzeugt einen zufälligen Sitzungsschlüssel für ein schnelles symmetrisches Verfahren. 2. Er verschlüsselt die eigentlichen damit, schnell. 3. Er verschlüsselt nur den Sitzungsschlüssel mit dem öffentlichen Schlüssel des , langsam, aber es geht nur um wenige . 4. Er schickt beides zusammen. 5. Der Empfänger entschlüsselt mit seinem privaten Schlüssel den Sitzungsschlüssel und damit die Daten.
Das asymmetrische Verfahren löst also allein das Schlüsselverteilungsproblem, das symmetrische erledigt die eigentliche Arbeit. Genau so arbeitet HTTPS bei jedem Aufruf einer Webseite.
Hybrid, jedes Verfahren für das, was es kann
An jedem Übergang hängen zwei Schlüssel, und das ist der Kern: Es reisen zwei Dinge. Die eigentlichen werden mit einem zufälligen Sitzungsschlüssel symmetrisch verschlüsselt, schnell, auch bei 10 MB. Nur dieser Sitzungsschlüssel, wenige groß, wird zusätzlich asymmetrisch mit Bens öffentlichem Schlüssel verschlüsselt; beides zusammen geht auf die Leitung. Ben dreht die Reihenfolge um: erst mit seinem privaten Schlüssel den Sitzungsschlüssel, damit dann die Daten. 🔴 Warum dieser Umweg? Weil asymmetrische Verfahren mit sehr großen Zahlen rechnen und um Größenordnungen langsamer sind. Eine große damit vollständig zu verschlüsseln wäre unpraktikabel, für ein paar Bytes fällt der Unterschied nicht ins Gewicht. Das asymmetrische Verfahren löst hier also allein das Schlüsselverteilungsproblem, die eigentliche Arbeit erledigt das symmetrische. Genau so arbeitet HTTPS bei jedem Aufruf einer Webseite.
Digitale Signatur
Nun die andere Richtung. Was passiert, wenn man mit dem privaten Schlüssel verschlüsselt?
Dann kann jeder es mit dem öffentlichen entschlüsseln. Als Geheimhaltung ist das wertlos, aber es beweist etwas anderes: Nur der Besitzer des privaten Schlüssels konnte es erzeugt haben.
Das ist die digitale Signatur. Sie leistet zwei Dinge, die die Verschlüsselung nicht leistet:
Echtheit, die stammt wirklich vom angegebenen Absender. Unverfälschtheit. Sie wurde unterwegs nicht verändert.
Praktisch signiert man nicht die ganze Nachricht, sondern ihren Streuwert (Hashwert). Eine Streuwertfunktion bildet beliebig lange auf eine kurze Prüfzahl fester Länge ab und hat zwei entscheidende Eigenschaften:
- Schon eine winzige Änderung der Daten ergibt einen völlig anderen Streuwert.
- Aus dem Streuwert lassen sich die Daten nicht zurückgewinnen.
Der Ablauf:
Signieren: Streuwert der Nachricht berechnen, ihn mit dem privaten Schlüssel verschlüsseln, das Ergebnis anhängen. Prüfen: Streuwert der empfangenen Nachricht selbst berechnen; die Signatur mit dem öffentlichen Schlüssel entschlüsseln; beide vergleichen. Stimmen sie überein, ist die Nachricht echt und unverändert.
🔴 Halte die Rollen auseinander:
| Ziel | verschlüsselt mit | entschlüsselt mit |
|---|---|---|
| öffentlichem Schlüssel des | privatem des Empfängers | |
| Echtheit (Signatur) | privatem Schlüssel des Absenders | öffentlichem des Absenders |
Signatur, beide Schlüssel gehören Anna
Vergleiche dieses Bild Zeile für Zeile mit dem asymmetrischen weiter oben; zwei Dinge sind vertauscht. Erstens nennen beide Schlüsselzeilen jetzt Anna, also die Absenderin, signiert wird mit ihrem privaten Schlüssel, geprüft mit ihrem öffentlichen. Zweitens steht auf der Leitung der . Eine Signatur verbirgt nichts; sie beweist nur. 🔴 Genau das räumt den häufigsten Irrtum aus: Signieren ist nicht Verschlüsseln. Was mit dem privaten Schlüssel verschlüsselt wurde, kann jeder mit dem öffentlichen lesen, als Geheimhaltung wertlos, als Nachweis aber schlagend, denn nur der Besitzer des privaten Schlüssels konnte es erzeugen. Damit leistet sie zwei Dinge, die die Verschlüsselung nicht leistet: Echtheit (die stammt wirklich von Anna) und Unverfälschtheit (sie wurde unterwegs nicht verändert). Praktisch signiert man nicht die ganze Nachricht, sondern ihren Streuwert: Der ist kurz, ändert sich schon bei winziger Änderung völlig und lässt sich nicht zurückrechnen. Ben bildet den Streuwert selbst und vergleicht, stimmen beide überein, ist alles echt.
Die verbleibende Lücke: Zertifikate
Ein Problem bleibt. Woher weißt du, dass ein veröffentlichter Schlüssel wirklich dem gehört, für den er ausgegeben wird?
Ein Angreifer könnte einen eigenen Schlüssel unter fremdem Namen veröffentlichen und damit alles mitlesen. Das Verfahren wäre mathematisch einwandfrei und trotzdem wertlos, weil man mit dem Falschen redet.
Gelöst wird das über Zertifikate: Eine vertrauenswürdige Stelle bestätigt mit ihrer eigenen Signatur, dass ein bestimmter öffentlicher Schlüssel zu einem bestimmten Namen gehört. Der Browser kennt die Schlüssel dieser Stellen von vornherein und kann die Bestätigung prüfen.
Damit verlagert sich das Problem, statt zu verschwinden: Man muss nun diesen Stellen vertrauen. Genau darauf beruht das Schloss-Symbol in der Adresszeile, und genau deshalb ist eine Warnung vor einem ungültigen Zertifikat ernst zu nehmen.
Das Schlüsselverteilungsproblem in Zahlen
Wie viele Schlüssel braucht man bei einem symmetrischen Verfahren für 10, 100 und 1000 Teilnehmer? Wie viele bei einem asymmetrischen?
- 1
Symmetrisch: Jedes Paar braucht einen eigenen Schlüssel. Die Zahl der Paare aus Personen ist .
- 2
- 3
Beachte das Wachstum: Zehnmal so viele Teilnehmer bedeuten etwa hundertmal so viele Schlüssel, denn der Ausdruck wächst quadratisch.
- 4
Asymmetrisch: Jeder braucht genau ein Paar, also 10, 100 beziehungsweise 1000 Paare. Das Wachstum ist linear.
- 5
Der eigentliche Unterschied liegt aber nicht in der Anzahl. Bei 499 500 symmetrischen Schlüsseln müsste jeder einzelne zuvor über einen sicheren Kanal ausgetauscht worden sein, für jedes Paar getrennt und bevor die erste fließt.
- 6
Asymmetrisch entfällt das vollständig. Der öffentliche Schlüssel darf über jeden unsicheren Kanal gehen; ein Mitleser gewinnt dadurch nichts. Der private wird nie übertragen. Genau das macht Kommunikation mit Unbekannten überhaupt erst möglich.
Symmetrisch 45, 4 950 und 499 500 Schlüssel, jeder sicher auszutauschen. Asymmetrisch 10, 100 und 1000 Paare, ohne jeden geheimen Austausch.
Verschlüsseln und signieren auseinanderhalten
Anna schickt Ben eine , die vertraulich sein und nachweislich von ihr stammen soll. Welche Schlüssel benutzt sie in welcher Rolle?
- 1
Beteiligte Schlüssel: Anna hat ein Paar (, ), Ben ebenfalls (, ). Öffentlich bekannt sind und .
- 2
Für die : Lesen soll nur Ben. Also verschlüsselt Anna mit Bens öffentlichem Schlüssel , denn nur Ben besitzt das Gegenstück .
- 3
Für die Echtheit: Ben soll sicher sein, dass die Nachricht von Anna kommt. Also berechnet Anna den Streuwert der Nachricht und verschlüsselt ihn mit ihrem privaten Schlüssel . Das ist die Signatur.
- 4
Was Anna sendet: die mit verschlüsselte Nachricht und die mit erzeugte Signatur.
- 5
Was Ben tut: Er entschlüsselt die Nachricht mit . Dann berechnet er selbst den Streuwert des Ergebnisses, entschlüsselt die Signatur mit Annas öffentlichem Schlüssel und vergleicht beide Werte.
- 6
Stimmen sie überein, weiß Ben zweierlei: Die Nachricht stammt von Anna, denn nur sie besitzt , und sie ist unverändert, denn sonst wäre der Streuwert ein anderer.
- 7
Die Merkregel: Zum Verschlüsseln nimmt man den öffentlichen Schlüssel des , zum Signieren den privaten des Absenders. Beides sind verschiedene Zwecke und verschiedene Schlüsselpaare.
Vertraulichkeit über , Echtheit über . Ben prüft mit und .
Typischer Fehler
„Beim asymmetrischen Verfahren verschlüssele ich mit meinem eigenen öffentlichen Schlüssel."
Dann könnte nur du die wieder lesen, denn nur du besitzt den passenden privaten Schlüssel. Der stünde vor einem , mit dem er nichts anfangen kann.
Die Regel lautet: Verschlüsseln immer mit dem öffentlichen Schlüssel des Empfängers.
Der Grund liegt in der Rollenverteilung. Der öffentliche Schlüssel verschließt, der private öffnet. Es soll aber genau der Empfänger öffnen können, also muss sein Schloss verwendet werden.
Ein Bild, das trägt: Der öffentliche Schlüssel ist ein offenes Vorhängeschloss, das jeder mitnehmen darf. Der private ist der einzige Schlüssel dazu. Willst du Ben etwas Verschlossenes schicken, nimmst du Bens Schloss. Nimmst du dein eigenes, kann nur du es wieder öffnen.
Die Umkehrung ist übrigens nicht sinnlos, sondern hat einen ganz anderen Zweck. Verschlüsselst du mit deinem privaten Schlüssel, kann jeder es mit deinem öffentlichen lesen. Geheim ist daran nichts, aber es beweist, dass es von dir stammt. Das ist die Signatur.
Kurz:
Öffentlicher Schlüssel des Empfängers → . Privater Schlüssel des Absenders → Echtheit.
Übung 1
leichta) Was unterscheidet symmetrische von asymmetrischen Verfahren? b) Wie viele Schlüssel braucht ein symmetrisches Verfahren bei 6 Teilnehmern? c) Mit welchem Schlüssel verschlüsselt man eine an Ben?
Tipp anzeigen
Zu b): Zähle die Paare.
Lösung anzeigen
a) Symmetrisch: derselbe Schlüssel zum Ver- und Entschlüsseln. Schnell, aber er muss vorher sicher ausgetauscht werden. Asymmetrisch: ein Schlüsselpaar; was mit dem öffentlichen verschlüsselt wurde, lässt sich nur mit dem privaten entschlüsseln. Langsamer, dafür muss nie ein Geheimnis übertragen werden.
b) Schlüssel.
c) Mit Bens öffentlichem Schlüssel. Nur Ben besitzt den passenden privaten und kann die Nachricht damit lesen.
Detaillierte Schritterklärung anzeigen
Hier wird jeder Schritt einzeln erklärt, vor allem, warum er gemacht wird.
✦ Empfohlen: Standard – Die normale Erklärungstiefe passt zum Einstieg.
- 1
a) Ein Schlüssel oder ein Schlüsselpaar
Symmetrisch: derselbe Schlüssel zum Ver- und Entschlüsseln, schnell, aber er muss vorher sicher ausgetauscht werden. Asymmetrisch: ein Schlüsselpaar; was mit dem öffentlichen verschlüsselt wurde, lässt sich nur mit dem privaten entschlüsseln, langsamer, dafür muss nie ein Geheimnis übertragen werden.
- 2
b) Die Schlüsselzahl bei 6 Teilnehmern
Jedes Paar braucht einen eigenen Schlüssel. Die Zahl der Paare aus 6 Personen ist , also 15 Schlüssel.
Zwischenergebnis
15 Schlüssel.
- 3
c) Mit welchem Schlüssel man an Ben verschlüsselt
Mit Bens öffentlichem Schlüssel. Nur Ben besitzt den passenden privaten und kann die Nachricht damit lesen.
Übung 2
mittela) Erkläre das Schlüsselverteilungsproblem und wie asymmetrische Verfahren es lösen. b) Was ist eine Einwegfunktion mit Falltür? Gib ein Beispiel. c) Warum verschlüsselt HTTPS nicht alles asymmetrisch? d) Beschreibe, wie eine digitale Signatur erzeugt und geprüft wird.
Tipp anzeigen
Zu c): Was ist der praktische Nachteil asymmetrischer Verfahren?
Lösung anzeigen
a) Problem: Symmetrische Verfahren brauchen auf beiden Seiten denselben Schlüssel. Über den unsicheren Kanal darf er nicht gehen, denn wer mitliest, hätte ihn; ein persönliches Treffen scheidet bei einem entfernten aus. Zusätzlich wächst die Zahl der nötigen Schlüssel mit , also quadratisch.
Lösung: Beim asymmetrischen Verfahren wird der öffentliche Schlüssel veröffentlicht; ein Mitleser gewinnt dadurch nichts, weil er zum Entschlüsseln nicht taugt. Der private Schlüssel verlässt den Besitzer nie. Es muss also überhaupt kein Geheimnis übertragen werden, und jeder braucht nur ein Paar statt eines Schlüssels je Partner.
b) Eine Einwegfunktion ist in eine Richtung leicht und in die andere praktisch unmöglich zu berechnen. Eine Falltür ist eine Zusatzinformation, mit der die Umkehrung doch leicht wird.
Beispiel: Zwei große Primzahlen zu multiplizieren, geht sofort. Das Produkt wieder in seine Faktoren zu zerlegen, ist bei mehreren hundert Stellen nach heutigem Wissen aussichtslos. Die Falltür sind die beiden Primzahlen selbst; sie bilden den privaten Schlüssel.
c) Weil asymmetrische Verfahren mit sehr großen Zahlen rechnen und deshalb um Größenordnungen langsamer sind. Eine ganze Webseite oder gar eine so zu verschlüsseln, wäre unpraktikabel.
Deshalb arbeitet HTTPS hybrid: Ein zufälliger Sitzungsschlüssel für ein schnelles symmetrisches Verfahren wird erzeugt, die eigentlichen damit verschlüsselt, und nur dieser kurze Sitzungsschlüssel wird asymmetrisch übertragen. Das asymmetrische Verfahren löst also allein das Verteilungsproblem.
d) Erzeugen: Der Absender berechnet den Streuwert der und verschlüsselt ihn mit seinem privaten Schlüssel. Das Ergebnis ist die Signatur und wird angehängt.
Prüfen: Der berechnet den Streuwert der empfangenen Nachricht selbst, entschlüsselt die Signatur mit dem öffentlichen Schlüssel des Absenders und vergleicht beide Werte. Stimmen sie überein, stammt die Nachricht vom angegebenen Absender und wurde nicht verändert.
Detaillierte Schritterklärung anzeigen
Hier wird jeder Schritt einzeln erklärt, vor allem, warum er gemacht wird.
✦ Empfohlen: Standard – Die normale Erklärungstiefe passt zum Einstieg.
- 1
Teil a): Zwei Teilprobleme trennen
Das Schlüsselverteilungsproblem hat zwei Seiten: den Transport des Geheimnisses und die Menge der Schlüssel. Beide gehören in die Antwort.
\frac{n(n-1)}{2}
Zwischenergebnis
Transportproblem und quadratisches Wachstum.
Das Transportproblem wiegt schwerer. Auch bei nur zwei Teilnehmern bleibt die Frage, wie der Schlüssel sicher hinkommt.
- 2
Teil b): Die zwei Richtungen benennen
Man nennt die leichte Richtung, die schwere Richtung und die Zusatzinformation, mit der die schwere leicht wird.
p \cdot q = N \text{ leicht}; \quad N \to p, q \text{ schwer}
Zwischenergebnis
Falltür = die Primzahlen selbst.
- 3
Teil c): Den Nachteil zum Verfahren führen
Man nennt zuerst den Nachteil (Langsamkeit) und leitet daraus die hybride Lösung ab, statt sie nur zu behaupten.
Zwischenergebnis
Daten symmetrisch, Sitzungsschlüssel asymmetrisch.
- 4
Teil d): Beide Richtungen sauber zuordnen
Signiert wird mit dem privaten Schlüssel des Absenders, geprüft mit seinem öffentlichen. Signiert wird dabei der Streuwert, nicht die ganze Nachricht.
Zwischenergebnis
Streuwerte vergleichen → Echtheit und Unverfälschtheit.
Warum der Streuwert? Er ist kurz und hat feste Länge, also ist die langsame asymmetrische Rechnung unabhängig von der Nachrichtengröße. Und weil jede Änderung einen völlig anderen Streuwert ergibt, erkennt der Vergleich auch die kleinste Verfälschung.
Übung 3
schwera) Worauf beruht die Sicherheit von RSA, und warum ist sie nicht bewiesen? b) Anna will Ben eine vertrauliche und signierte schicken. Gib alle vier verwendeten Schlüssel mit ihrer Rolle an. c) Warum reichen Schlüsselpaare allein nicht aus? Welches Problem lösen Zertifikate, und welches bleibt? d) Ein Anbieter wirbt damit, sein Verschlüsselungsverfahren sei geheim und deshalb besonders sicher. Beurteile das.
Tipp anzeigen
Zu d): Erinnere dich an das .
Lösung anzeigen
a) Sie beruht auf der Annahme, dass sich große Zahlen nicht schnell in ihre Primfaktoren zerlegen lassen. Der öffentliche Schlüssel enthält das Produkt zweier großer Primzahlen, der private die Primzahlen selbst; wer faktorisieren könnte, hätte den privaten Schlüssel.
Nicht bewiesen ist dabei, dass es kein schnelles Faktorisierungsverfahren gibt. Es ist bisher keines bekannt, aber niemand hat gezeigt, dass keines existieren kann. Das ist dieselbe offene Frage wie bei und : Prüfen ist leicht, Finden nach heutigem Stand schwer, aber ob das so bleiben muss, ist unbekannt.
Praktische Folgen: Die Schlüssellängen werden über die Jahre erhöht, weil Rechner schneller und Verfahren besser werden. Und es wird an Verfahren geforscht, die auf anderen mathematischen Annahmen beruhen, damit ein Durchbruch nicht alles zugleich betrifft.
b) Vier Schlüssel in vier Rollen:
| Schlüssel | Wer benutzt ihn | Wofür |
|---|---|---|
| (öffentlich, Ben) | Anna | Nachricht verschlüsseln |
| (privat, Anna) | Anna | Streuwert signieren |
| (privat, Ben) | Ben | Nachricht entschlüsseln |
| (öffentlich, Anna) | Ben | Signatur prüfen |
Die Merkregel dahinter: läuft über das Schlüsselpaar des , Echtheit über das des Absenders.
c) Das offene Problem: Ein öffentlicher Schlüssel trägt keinen Nachweis, wem er gehört. Ein Angreifer kann ein eigenes Paar erzeugen und den öffentlichen Teil unter fremdem Namen veröffentlichen. Wer ihn benutzt, verschlüsselt für den Angreifer, und dieser kann mitlesen, neu verschlüsseln und weiterleiten, ohne dass jemand etwas bemerkt. Die Mathematik ist dabei einwandfrei; falsch ist nur, mit wem man spricht.
Was Zertifikate lösen: Eine vertrauenswürdige Stelle bestätigt mit ihrer eigenen Signatur, dass ein bestimmter öffentlicher Schlüssel zu einem bestimmten Namen gehört. Browser und Betriebssysteme kennen die öffentlichen Schlüssel dieser Stellen von vornherein und können die Bestätigung prüfen.
Was bleibt: Das Vertrauen ist nur verlagert, nicht beseitigt. Man muss nun den Zertifizierungsstellen vertrauen. Wird eine kompromittiert oder stellt sie ein Zertifikat fahrlässig aus, greift der Schutz nicht. Deshalb sind Zertifikatswarnungen im Browser ernst zu nehmen.
d) Die Werbung widerspricht dem Kerckhoffs-Prinzip: Die Sicherheit eines Verfahrens darf allein vom Schlüssel abhängen, nie von der Geheimhaltung des Verfahrens.
Gründe:
Ein geheimes Verfahren kann von niemandem geprüft werden. Schwachstellen bleiben unentdeckt, bis sie jemand ausnutzt. Anerkannte Verfahren wie AES und RSA sind dagegen seit Jahrzehnten öffentlich und wurden von unzähligen Fachleuten erfolglos angegriffen; genau das begründet das Vertrauen in sie.
Geheimhaltung lässt sich zudem nicht dauerhaft aufrechterhalten. Verfahren werden durch Analyse der Software rekonstruiert, und ist das geschehen, ist die gesamte Sicherheit dahin. Ein Schlüssel dagegen lässt sich austauschen, ein Verfahren nicht ohne Weiteres.
Beurteilung: Die Geheimhaltung des Verfahrens ist kein Sicherheitsmerkmal, sondern ein Warnzeichen. Sie deutet darauf hin, dass das Verfahren einer öffentlichen Prüfung nicht standhalten würde.
Detaillierte Schritterklärung anzeigen
Hier wird jeder Schritt einzeln erklärt, vor allem, warum er gemacht wird.
✦ Empfohlen: Standard – Die normale Erklärungstiefe passt zum Einstieg.
- 1
a) Worauf RSA beruht und warum das nicht bewiesen ist
Die Sicherheit beruht auf der Annahme, dass sich große Zahlen nicht schnell in ihre Primfaktoren zerlegen lassen. Der öffentliche Schlüssel enthält das Produkt zweier großer Primzahlen, der private die Primzahlen selbst; wer faktorisieren könnte, hätte den privaten Schlüssel. Nicht bewiesen ist, dass es kein schnelles Faktorisierungsverfahren gibt.
- 2
b) Vier Schlüssel in vier Rollen
Anna benutzt (Bens öffentlichen), um die Nachricht zu verschlüsseln, und (ihren eigenen privaten), um den Streuwert zu signieren. Ben benutzt (seinen privaten) zum Entschlüsseln und (Annas öffentlichen) zum Prüfen der Signatur.
- 3
c) Das offene Problem: Wem gehört ein öffentlicher Schlüssel?
Ein öffentlicher Schlüssel trägt keinen Nachweis, wem er gehört. Ein Angreifer kann ein eigenes Paar erzeugen und den öffentlichen Teil unter fremdem Namen veröffentlichen. Wer ihn benutzt, verschlüsselt für den Angreifer, und dieser kann mitlesen, neu verschlüsseln und weiterleiten, ohne dass jemand etwas bemerkt.
- 4
c) Was Zertifikate lösen, und was bleibt
Was sie lösen: Eine vertrauenswürdige Stelle bestätigt mit ihrer eigenen Signatur, dass ein bestimmter öffentlicher Schlüssel zu einem bestimmten Namen gehört. Browser und Betriebssysteme kennen die öffentlichen Schlüssel dieser Stellen von vornherein. Was bleibt: Das Vertrauen ist nur verlagert, nicht beseitigt. Man muss nun den Zertifizierungsstellen vertrauen.
- 5
d) Ein geheim gehaltenes Verfahren beurteilen
Die Werbung widerspricht dem Kerckhoffs-Prinzip: Die Sicherheit darf allein vom Schlüssel abhängen, nie von der Geheimhaltung des Verfahrens. Gründe: Ein geheimes Verfahren kann von niemandem geprüft werden, Schwachstellen bleiben unentdeckt; und Geheimhaltung lässt sich nicht dauerhaft aufrechterhalten, ist das Verfahren rekonstruiert, ist die gesamte Sicherheit dahin, während ein Schlüssel sich austauschen ließe.
Zusammenfassung
Symmetrische Verfahren sind schnell, setzen aber voraus, dass beide Seiten denselben Schlüssel besitzen, und genau dessen sicherer Austausch ist bei unbekannten Gegenstellen unmöglich; hinzu kommt, dass die Zahl der nötigen Schlüssel mit quadratisch wächst. Asymmetrische Verfahren lösen das mit einem Schlüsselpaar, dessen öffentlicher Teil frei verbreitet werden darf, während der private den Besitzer nie verlässt; möglich wird das durch Einwegfunktionen mit Falltür wie das Faktorisierungsproblem, deren Sicherheit allerdings nur auf einer Annahme beruht und nicht bewiesen ist. Da sie langsam rechnen, arbeitet man hybrid: Die werden symmetrisch verschlüsselt und nur der kurze Sitzungsschlüssel asymmetrisch übertragen, so wie es HTTPS tut. Verschlüsselt man umgekehrt mit dem privaten Schlüssel, entsteht keine Geheimhaltung, sondern eine digitale Signatur, die über den Vergleich von Streuwerten Echtheit und Unverfälschtheit belegt. Offen bleibt dabei die Zuordnung eines Schlüssels zu einer Person; Zertifikate schließen diese Lücke, verlagern das Vertrauen aber auf die ausstellenden Stellen.


