2a. Kryptographische Basistechniken
Die Sicherheit kryptographischer Verfahren
Drei Stufen der Sicherheit von Chiffrierverfahren
- Perfekte Sicherheit (informationstheoretischer Ansatz) -
- Ein Geheimtext enthüllt keinerlei Information über Klartext
und Schlüssel.
- Verwirklicht im One-Time-Pad.
- XOR-Verschlüsselung mit perfekt zufälligem Bitstrom als
einmaligem (!) Schlüssel der Länge n = Länge der Nachricht.
- Design-Kriterien:
- Konfusion: möglichst komplexer, nicht-linearer
Zusammenhang zwischen Klartext, Schlüssel und Geheimtext.
- Diffusion: »Verschmieren der Klartextbits«: Änderung
eines Klartextbits ändert » 50% der
Geheimtextbits (Lawinen-Effekt, avalanche criterion).
- Beides soll die Entropie der Geheimtexte erhöhen.
- Mathematische Sicherheit (komplexitätstheoretischer Ansatz) -
- Der kryptoanalytische Ansatz führt auf ein »hartes« (z. B.
NP-vollständiges) Problem.
- Mathematische Beweisbarkeit prinzipiell gegeben, aber mit den
gegenwärtigen Methoden nicht durchführbar (man kann das Problem
formulieren, aber es ist nicht lösbar).
- Verwirklicht durch RSA und perfekte
Zufallsgeneratoren (reduzierbar auf Primfaktorisierung).
- Pragmatische Sicherheit (empirischer Ansatz) -
- Das Chiffrierverfahren kann
- durch die bekannten Angriffe
- mit den verfügbaren Ressourcen
- mit vertretbarem Aufwand
nicht gebrochen werden.
- Es ist keine Analyse-Methode bekannt, die
»wesentlich« schneller ist als die vollständige Suche.
- Der Schlüsselraum ist so groß, dass die vollständige
Suche alle beim Gegner vorhandenen, evtl. sogar alle Ressourcen
des Universums überfordert.
Aber Achtung: Die Größe des Schlüsselraums bzw. Schlüssellänge
ist als Sicherheitsmaß nur sehr bedingt aussagekräftig.
Beispiele für Suchräume
- 8-Byte-Passwörter:
- Suchraum der Größe 2568= 264 ~
18 × 1018 (theoretisch);
- werden aber nur druckbare Zeichen (ASCII 32 bis 126)
verwendet, hat der effektive Suchraum nur
938 ~ 5.5 × 1015 Elemente.
- Durch die Verwendung »merkbarer« Passwörter schrumpft er
drastisch weiter.
- Jede Vorschrift zur Passwortwahl reduziert den Suchraum.
- »Klassische« Zufallsgeneratoren (32-bit-Startwert):
- Der Suchraum hat die Größ;e 232 ~ 4 × 109.
- Solche »Zufallsgeneratoren« werden in den Bibliotheken der
gängigen Programmiersprachen verwendet (rand).
- DES-Schlüssel:
- Der Suchraum hat die Größe 256
(= die Größe des Schlüsselraums).
Größenordnungen
Sekunden/Jahr | |
3 x 107 |
CPU-Zyklen/Jahr auf 2-GHz-Rechner | |
6.4 x 1016 |
Alter des Universums in Jahren | |
1010 |
CPU-Zyklen seither (2 GHz) | |
6.4 x 1026 |
| | |
Atome in der Erde | |
1051 |
Elektronen im Universum | |
8.37 x 1077 |
| | |
ASCII-Ketten der Länge 8 (958) | |
6.6 x 1015 |
Binärketten der Länge 56 (256) | |
7.2 x 1016 |
Binärketten der Länge 80 | |
1.2 x 1024 |
Binärketten der Länge 128 | |
3.4 x 1038 |
Binärketten der Länge 256 | |
1.2 x 1077 |
| | |
75-stellige Primzahlen | |
5.2 x 1072 |
Vollständige Suche - physikalische Grenzen
[nach: Louis K. Scheffer in sci.crypt]
- Höchstens 1090 Elementarteilchen im Universum
(Schranke für Zahl der CPUs),
- mindestens 10-35 Sekunden, um ein Elementarteilchen mit
Lichtgeschwindigkeit zu durchqueren (Zeitschranke für eine Operation),
- höchstens 1018 Sekunden Lebensdauer des Universums
(~ 30 × 109 Jahre) (Schranke für verfügbare Zeit),
===> höchstens 10143 ~ 2475 Operationen möglich
in diesem Universum.
Engere Schätzung: Schon Rechner für 2256 Operationen
würden zu einem schwarzen Loch kollabieren.
===> 500-Bit-Schlüssel sind sicher vor vollständiger Suche ...
... until such time as computers are built from something other than
matter, and occupy something other than space. [Paul Ciszek]
(Sicher also auch vor »Quantencomputern«.)
Realistische Sicherheitsgrenze heute: ca. 90-Bit-Schlüssel
(alle Rechnerkapazität der Erde zusammengenommen).
Damit ist man vermutlich auch vor der NSA sicher.
Für die Leistung von Rechnern (PC, Supercomputer) außerhalb der NSA
siehe auch hier.
Praktische Schlüssellänge: 128 Bit.
- DES ist nicht mehr sicher [Schlüssellänge 56 Bit].
- AES hat breite Sicherheitsreserve und kann noch zulegen
[Schlüssellängen 128, 196 oder 256 Bit].
Vollständige Suche - der Stand der Technik
Bauanleitung für einen Chip mit damaliger Technologie (1993) -
- Produktionskosten ca $10,
- Leistung: 1 DES-Verschlüsselung pro 50-MHz-Takt
(16 Schaltkreise in Pipeline für 16 Runden),
- Vergleich mit bekanntem Klartext intern (ohne I/O).
Dieser Chip kann also für einen bekannten Klartext 50 Millionen Schlüssel
pro Sekunde prüfen.
Daraus wird gebaut eine DES-Entschlüsselungsmaschine:
- Baukosten $ 1 Million,
- einmalige Entwicklungskosten $ 500 000, Entwicklungszeit < 1 Jahr,
- durchschnittliche Suchzeit 3.5 Stunden.
2004 bei gleichen Kosten ca. Faktor 40 an Geschwindigkeitsgewinn.
(2 GHz statt 50 MHz.)
Billiglösung:
- 5760 Chips mit hierarchisch angeordneter Steuerungslogik, von PC gesteuert,
für $100 000, Suchzeit (1993) 35 Stunden, (2004) < 1 Stunde.
Die Methode greift grundsätzlich für jedes Verschlüsselungsverfahren,
die Suchzeit ist proportional zu
- Verschlüsselungszeit,
- 1/(Zahl der Chips),
- Größe des Schlüsselraums.
Kriterien für ein gutes Verschlüsselungsverfahren
- Gute Implementierbarkeit.
- Hinreichende Geschwindigkeit.
- Großer Schlüsselraum; »schwache Schlüssel« leicht zu vermeiden.
- Gute Diffusion der Klartext- und Schlüssel-Bits.
- Bestehen statistischer Tests; z. B.
OFB erzeugt gute Pseudozufallszahlen.
- Spezifische Kriterien je nach Art des Verfahrens.
- Resistenz gegen bekannte Attacken (bewiesen, oder auf anderes vermutlich
hartes Problem reduziert).
- Algorithmus öffentlich bekannt und jahrelang von der »kryptographischen
Öffentlichkeit« geprüft.
Vorlesung Datenschutz und Datensicherheit
Autor: Klaus Pommerening, 31. März 1999;
letzte Änderung: 15. Mai 2007
E-Mail an Pommerening »AT« imbei.uni-mainz.de.