Asymmetrische Verschlüsselung
Stell dir vor, du kaufst tausend gleiche Vorhängeschlösser, machst sie alle auf und verteilst sie an jeden, den du kennst. Den einzigen Schlüssel, der dazu passt, behältst du. Will dir jemand etwas Geheimes schicken, dann legt er es in eine Schachtel, klickt eines deiner Schlösser darauf und schickt es ab. Ab diesem Moment bekommt er es selbst auch nicht mehr auf — nur du. So ein Schloss gibt es nicht aus Metall. Aus Mathematik schon, und es ist etwas anderes als das, was du im letzten Kapitel gemacht hast: Dort haben zwei Menschen zusammen einen Schlüssel vereinbart, hier schickt dir jemand direkt etwas Geheimes, ohne dass ihr je etwas vereinbart habt.
Wörter, die du gleich brauchst
- Schlüsselpaar
- Zwei Schlüssel, die mathematisch zusammengehören und zusammen gemacht werden. Was der eine schließt, öffnet nur der andere.
- Öffentlicher Schlüssel
- So ein offenes Vorhängeschloss. Davon verteilst du so viele du willst, und du darfst ihn ruhig auf dein Profil stellen. Wer dir etwas Geheimes schickt, legt es in eine Schachtel und klickt dein Schloss darauf.
- Privater Schlüssel
- Der einzige Schlüssel, der auf all diese Schlösser passt. Der bleibt bei dir, immer, und ohne diesen Schlüssel geht keine einzige Schachtel mehr auf — auch nicht für den, der sie selbst zugeklickt hat.
- Asymmetrisch
- Zwei verschiedene Schlüssel für Schließen und Öffnen. Das Gegenteil von symmetrisch, wo es derselbe Schlüssel ist.
- RSA
- Das erste System, das das konnte, aus dem Jahr 1977, benannt nach den drei Erfindern Rivest, Shamir und Adleman. Es arbeitet mit Primzahlen, die Hunderte Stellen lang sind.
Nicht zu verwechseln mit dem letzten Kapitel
Beide lösen dieselbe Unannehmlichkeit — mit jemandem geheim tun, dem du vorher keinen Schlüssel geben konntest — aber sie machen es auf unterschiedliche Weise, und dieser Unterschied wird ständig durcheinander gebracht. Auch von Leuten, die es besser wissen müssten.
| Schlüssel vereinbaren (Kapitel 5) | Asymmetrisch verschlüsseln (hier) | |
|---|---|---|
| Was passiert | ihr landet zusammen bei einem Geheimnis | jemand verschlüsselt etwas für dich |
| Wer macht mit | beide, gleichzeitig | nur der Absender; du musst nicht da sein |
| Was du bekommst | einen gemeinsamen Schlüssel, mit dem du dann AES machst | einen Geheimtext, sofort |
| Das Schlüsselpaar | gehört zu diesem einen Austausch | gehört dir, und bleibt deins |
Wie es die Rollen umdreht
| Symmetrisch (Kapitel 4) | Asymmetrisch (dieses Kapitel) | |
|---|---|---|
| Schlüssel | einer, und den musst du teilen | zwei, und einen darf jeder sehen |
| Vorher vereinbaren | ja, über einen sicheren Kanal | nichts |
| Geschwindigkeit | blitzschnell | langsam |
| Wie groß darf die Nachricht sein? | unbegrenzt | sehr klein — kleiner als der Schlüssel |
Zwei Anwendungen, und es ist nicht dieselbe Rechenoperation
Ein Schlüsselpaar wird auf zwei Arten benutzt, und es lohnt sich, die auseinanderzuhalten — sie werden ständig verwechselt, auch in Lehrbüchern.
| Verschlüsseln | Signieren | |
|---|---|---|
| Wer fängt an | jeder, der dir etwas schicken will | nur du |
| Mit welchem Schlüssel | deinem öffentlichen | deinem privaten |
| Wer kann die andere Richtung | nur du, mit deinem privaten | jeder, mit deinem öffentlichen |
| Das heißt | entschlüsseln | verifizieren, nicht entschlüsseln |
| Wofür | Geheimhaltung | beweisen, dass du es warst |
Die Regel, die du oft hörst — „was du mit dem einen Schlüssel verschlüsselst, kannst du nur mit dem anderen entschlüsseln“ — stimmt nicht. Sie gilt für nacktes RSA und sonst nirgends. Bei den Systemen auf elliptischen Kurven existiert „mit dem privaten Schlüssel verschlüsseln“ nicht einmal: Eine Signatur ist ein Paar Zahlen, aus dem sich die Nachricht nicht mehr herausholen lässt. Verifizieren ist kein Entschlüsseln, es ist eine Gleichung, die aufgeht oder nicht.
Die Regel, die überall gilt, ist diese: Der private Schlüssel macht etwas, das nur sein Besitzer machen kann; der öffentliche Schlüssel lässt jeden das ausrichten oder überprüfen. Ums Signieren geht es in Kapitel 7.1.
Zwei Familien, und eine Handvoll Namen
Es gibt verschiedene Arten, ein Schlüsselpaar zu machen. Zwei davon tragen fast alles, was du heute benutzt, und die bekommen danach jeweils ein eigenes Stück.
| Familie | Ruht auf | Schlüssel vereinbaren | Signieren | Verschlüsseln |
|---|---|---|---|---|
| RSA | Primzahlen zerlegen | — | RSA-PSS | RSA-OAEP |
| Elliptische Kurven | auf einer Kurve zurückzählen | ECDH | ECDSA, EdDSA | selten |
| Primzahlen mod p | den diskreten Logarithmus | DH (Kapitel 5) | DSA — ausgemustert | — |
| Gitter | den kürzesten Vektor suchen | ML-KEM | ML-DSA | — |
Zwei Dinge fallen an dieser Tabelle auf. Es gibt keine einzige Familie, die alles kann — jede Spalte verlangt ihren eigenen Algorithmus. Und DSA steht da als ausgemustert: Die amerikanische Normungsbehörde NIST nahm es 2023 aus der Norm für neue Signaturen und ließ es nur noch stehen, damit man alte weiter prüfen kann. Die unterste Zeile ist die neueste und handelt vom Quantencomputer; dazu später mehr.