Public-Key-Verfahren und Beurteilung
Lena aus Köln bestellt im Internet neue Kopfhörer und gibt ihre Zahlungsdaten ein. Auf dem Weg zum Online-Shop laufen die Daten über viele fremde Rechner. Jeder von ihnen könnte mitlesen. Trotzdem klappt das Bezahlen jeden Tag millionenfach sicher. Wie ist das möglich, ohne dass Lena und der Shop vorher ein geheimes Passwort verabredet haben? Am Ende der Seite kannst du es erklären.
Caesar-Verschlüsselung
Beim Verschlüsseln wird ein lesbarer Text (der Klartext) mit einem Schlüssel in einen unlesbaren Geheimtext umgewandelt. Beim Entschlüsseln geht es mit dem passenden Schlüssel zurück.
Das älteste bekannte Verfahren ist die Caesar-Verschlüsselung. Der Schlüssel ist eine Zahl: Jeder Buchstabe wird im Alphabet um diese Zahl von Stellen nach rechts verschoben. Nach dem Z geht es wieder bei A weiter.
Zum Entschlüsseln verschiebst du genauso weit nach links.
Gleiche Buchstaben im Klartext ergeben bei Caesar immer gleiche Buchstaben im Geheimtext. Das macht das Verfahren schwach.
Verschlüssele das Wort „HALLO“ mit der Caesar-Verschlüsselung mit dem Schlüssel 3 (Verschiebung um 3 Buchstaben im Alphabet nach rechts). Entschlüssele anschließend…
Verschlüssele das Wort „HALLO“ mit der Caesar-Verschlüsselung mit dem Schlüssel 3 (Verschiebung um 3 Buchstaben im Alphabet nach rechts). Entschlüssele anschließend „KDXV“ mit demselben Schlüssel.
Eine Caesar-verschlüsselte Nachricht lautet „WKHVHQ“. Du weißt nur, dass sie auf Deutsch ist. a) Beschreibe ein Verfahren, wie man ohne Kenntnis des Schlüssels den…
Eine Caesar-verschlüsselte Nachricht lautet „WKHVHQ“. Du weißt nur, dass sie auf Deutsch ist.
- a) Beschreibe ein Verfahren, wie man ohne Kenntnis des Schlüssels den Klartext herausfinden kann.
- b) Wie viele verschiedene Schlüssel müssen höchstens probiert werden (26 Buchstaben)?
- c) Entschlüssele die Nachricht, wenn der Schlüssel 3 ist.
Substitution und Häufigkeitsanalyse
Wie wird die Verschlüsselung sicherer? Statt alle Buchstaben gleich weit zu verschieben, ordnest du jedem Buchstaben beliebig einen anderen zu (monoalphabetische Substitution). Der Schlüssel ist dann die ganze Zuordnungstabelle.
Wie viele Möglichkeiten gibt es? Für A hast du 26 Wahlmöglichkeiten, für B noch 25 und so weiter. Das sind $26! = 26 \cdot 25 \cdot \ldots \cdot 1 \approx 4 \cdot 10^{26}$ Schlüssel. Alle durchzuprobieren ist unmöglich.
Trotzdem lässt sich die Substitution knacken, mit der Häufigkeitsanalyse. In jeder Sprache kommen Buchstaben unterschiedlich oft vor. Im Deutschen ist das E mit etwa 17 % der häufigste Buchstabe, danach folgen N, I, S und R. Der Angreifer zählt die Buchstaben im Geheimtext. Der häufigste Geheimbuchstabe steht dann sehr wahrscheinlich für E. Aus der Häufigkeit von Buchstaben und typischen Wörtern („der“, „und“) rät er Stück für Stück den Rest.
Vergleiche die Caesar-Verschlüsselung, die monoalphabetische Substitution (beliebige Zuordnung der Buchstaben) und ein modernes Public-Key-Verfahren. a) Gib für Caesar…
Vergleiche die Caesar-Verschlüsselung, die monoalphabetische Substitution (beliebige Zuordnung der Buchstaben) und ein modernes Public-Key-Verfahren.
- a) Gib für Caesar und für die Substitution die Anzahl möglicher Schlüssel an (für 26 Buchstaben, Substitution als Produkt $26!$, nur Größenordnung nennen).
- b) Erkläre, warum die Substitution trotzdem durch Häufigkeitsanalyse angreifbar ist.
- c) Beurteile die drei Verfahren hinsichtlich Sicherheit und Aufwand.
Symmetrisch und asymmetrisch
Bei Caesar und Substitution benutzen Sender und Empfänger denselben Schlüssel. Solche Verfahren heißen symmetrisch. Das führt zu zwei Problemen.
-
Schlüsselaustausch: Der geheime Schlüssel muss zuerst sicher zum Empfänger kommen. Über den unsicheren Kanal geht das nicht, denn dort könnte ihn jemand mitlesen.
-
Schlüsselanzahl: Jedes Paar von Personen braucht einen eigenen Schlüssel. Bei $n$ Personen sind das $\dfrac{n \cdot (n-1)}{2}$ Schlüssel.
Die Lösung beider Probleme sind asymmetrische Verfahren mit zwei verschiedenen Schlüsseln. Sie kommen im nächsten Abschnitt.
Erkläre den Unterschied zwischen symmetrischer und asymmetrischer Verschlüsselung. Gehe dabei darauf ein, wie viele Schlüssel benötigt werden und welcher Schlüssel…
Erkläre den Unterschied zwischen symmetrischer und asymmetrischer Verschlüsselung. Gehe dabei darauf ein, wie viele Schlüssel benötigt werden und welcher Schlüssel geheim bleibt.
In einer Klasse mit 25 Schülern soll jeder mit jedem anderen vertraulich kommunizieren können. a) Wie viele verschiedene Schlüssel werden bei symmetrischer…
In einer Klasse mit 25 Schülern soll jeder mit jedem anderen vertraulich kommunizieren können.
- a) Wie viele verschiedene Schlüssel werden bei symmetrischer Verschlüsselung benötigt (ein eigener Schlüssel pro Paar)?
- b) Wie viele Schlüsselpaare braucht man bei asymmetrischer Verschlüsselung, wenn jeder ein eigenes Schlüsselpaar besitzt?
- c) Erkläre, welches Problem bei der symmetrischen Variante zusätzlich auftritt, wenn man den Schlüssel austauschen muss.
Das Public-Key-Prinzip
Stell dir einen Briefkasten vor. Jeder kann einen Brief einwerfen, aber nur du hast den Schlüssel zum Öffnen. Genauso arbeitet ein Public-Key-Verfahren. Jede Person besitzt ein Schlüsselpaar:
-
den öffentlichen Schlüssel (public key): Er darf jeder kennen und wird frei veröffentlicht.
-
den privaten Schlüssel (private key): Er bleibt geheim und verlässt nie den eigenen Rechner.
Warum geht das? Die Verfahren (z. B. RSA) beruhen auf Rechnungen, die in eine Richtung leicht und in die Gegenrichtung extrem aufwendig sind. Zwei große Primzahlen zu multiplizieren ist leicht. Aus dem Produkt die beiden Primzahlen zu finden, dauert bei sehr großen Zahlen selbst für Supercomputer viel zu lange.
Vertrauliche Nachricht: Ben verschlüsselt mit Lenas öffentlichem Schlüssel. Nur Lena kann mit ihrem privaten Schlüssel entschlüsseln. Ein Schlüsselaustausch ist nicht nötig.
Digitale Signatur: Man kann die Rollen auch umdrehen. Lena verschlüsselt (oder „unterschreibt“) mit ihrem privaten Schlüssel. Jeder kann mit ihrem öffentlichen Schlüssel prüfen, dass die Nachricht wirklich von Lena stammt und nicht verändert wurde. Vertraulich ist das aber nicht, denn jeder kennt den öffentlichen Schlüssel. Die Signatur sichert Echtheit und Integrität.
Bei einem Public-Key-Verfahren besitzt Lena einen öffentlichen und einen privaten Schlüssel. Ben möchte ihr eine vertrauliche Nachricht schicken. a) Mit welchem…
Bei einem Public-Key-Verfahren besitzt Lena einen öffentlichen und einen privaten Schlüssel. Ben möchte ihr eine vertrauliche Nachricht schicken.
- a) Mit welchem Schlüssel verschlüsselt Ben die Nachricht?
- b) Mit welchem Schlüssel entschlüsselt Lena sie?
- c) Welchen Schlüssel darf Lena veröffentlichen?
Ein Schüler behauptet: „Wenn ich meine Nachricht mit meinem privaten Schlüssel verschlüssele, kann sie nur ich lesen.“ a) Beurteile diese Aussage. b) Wozu kann es…
Ein Schüler behauptet: „Wenn ich meine Nachricht mit meinem privaten Schlüssel verschlüssele, kann sie nur ich lesen.“
- a) Beurteile diese Aussage.
- b) Wozu kann es trotzdem dienen, mit dem privaten Schlüssel zu verschlüsseln (digitale Signatur)?
- c) Wer kann das Ergebnis überprüfen und womit?
Hybridverfahren, Zertifikate und Beurteilung
Asymmetrische Verfahren lösen das Schlüsselproblem, sind aber langsam, weil sie mit riesigen Zahlen rechnen. Symmetrische Verfahren sind dagegen sehr schnell. Beim Hybridverfahren (z. B. bei HTTPS im Browser) nutzt man deshalb beides:
-
Mit einem asymmetrischen Verfahren wird ein Sitzungsschlüssel sicher ausgetauscht.
-
Mit diesem Schlüssel wird die eigentliche Kommunikation symmetrisch verschlüsselt.
So hat Lena ihre Zahlungsdaten geschützt: Der Shop und ihr Browser haben ohne vorherige Verabredung einen gemeinsamen Schlüssel erzeugt. Damit ist der Gang des Anfangsbeispiels geklärt. Der Angreifer kennt zwar den öffentlichen Schlüssel, aber nicht den privaten.
Restproblem: Gehört der öffentliche Schlüssel wirklich dem Shop oder der Bank? Bei einem Man-in-the-Middle-Angriff schiebt ein Angreifer seinen eigenen öffentlichen Schlüssel unter. Das Opfer verschlüsselt dann für den Angreifer. Dieser liest mit und leitet die Nachricht mit dem echten Schlüssel weiter, ohne dass jemand es merkt.
Gegenmittel: Ein Zertifikat bestätigt, dass ein öffentlicher Schlüssel zu einer bestimmten Person oder Firma gehört. Eine Zertifizierungsstelle, der dein Browser vertraut, hat es digital signiert. Gefälschte Schlüssel fallen auf, weil die Signatur nicht passt.
Ein Online-Shop nutzt für die Übertragung deiner Zahlungsdaten ein hybrides Verfahren: Zuerst wird mit einem asymmetrischen Verfahren ein gemeinsamer Sitzungsschlüssel…
Ein Online-Shop nutzt für die Übertragung deiner Zahlungsdaten ein hybrides Verfahren: Zuerst wird mit einem asymmetrischen Verfahren ein gemeinsamer Sitzungsschlüssel ausgetauscht, danach wird symmetrisch verschlüsselt.
- a) Erkläre, warum man nicht die gesamte Kommunikation asymmetrisch verschlüsselt.
- b) Erkläre, welches Problem der symmetrischen Verschlüsselung durch den ersten Schritt gelöst wird.
- c) Beurteile die Sicherheit, wenn ein Angreifer den öffentlichen Schlüssel kennt, aber nicht den privaten.
Maximilian erhält eine E-Mail, angeblich von seiner Bank, mit dem öffentlichen Schlüssel der Bank, um Daten verschlüsselt zu senden. Ein Angreifer könnte seinen eigenen…
Maximilian erhält eine E-Mail, angeblich von seiner Bank, mit dem öffentlichen Schlüssel der Bank, um Daten verschlüsselt zu senden. Ein Angreifer könnte seinen eigenen öffentlichen Schlüssel untergeschoben haben (Man-in-the-Middle).
- a) Beschreibe, wie der Angreifer dabei Nachrichten mitlesen könnte.
- b) Erkläre, wie Zertifikate und Zertifizierungsstellen dieses Problem verringern.
- c) Beurteile, ob Verschlüsselung allein die Schutzziele Vertraulichkeit, Integrität und Verfügbarkeit sicherstellt.
Auf einen Blick
-
Caesar: Verschiebung um eine feste Zahl, höchstens 26 Schlüssel, durch Ausprobieren leicht zu knacken.
-
Substitution: beliebige Zuordnung, $26! \approx 4 \cdot 10^{26}$ Schlüssel, aber durch Häufigkeitsanalyse angreifbar.
-
Symmetrisch: ein gemeinsamer geheimer Schlüssel. Er muss sicher ausgetauscht werden, und bei $n$ Personen braucht man $\frac{n(n-1)}{2}$ Schlüssel.
-
Asymmetrisch (Public Key): Schlüsselpaar aus öffentlichem und privatem Schlüssel. Man verschlüsselt mit dem öffentlichen Schlüssel des Empfängers, und der Empfänger entschlüsselt mit seinem privaten. Mit dem privaten Schlüssel „unterschreibt“ man (digitale Signatur).
-
Hybridverfahren: asymmetrisch den Sitzungsschlüssel austauschen, dann schnell symmetrisch verschlüsseln. Zertifikate schützen vor untergeschobenen Schlüsseln.
-
Verschlüsselung sichert vor allem die Vertraulichkeit. Integrität und Verfügbarkeit brauchen weitere Maßnahmen.