2a. Kryptographische Basistechniken
2a.2 Symmetrische Verschlüsselung
Symmetrische Verschlüsselung - zwei gleiche Schlüssel
Das DES-Verfahren
[DES = Data Encryption Standard]
- Entwickelt bei IBM im Auftrag der NSA.
- Ziel: sicheres Verfahren für 10 - 15 Jahre im sensiblen,
aber nicht hochgeheimen Bereich.
- 1977 NBS-Standard in USA.
- Auf Hardware-Implementation optimiert.
- DES-Chips: 1 Mbit/sec bis 1 Gbit/sec.
- Entwurfskriterien blieben geheim.
- Algorithmus veröffentlicht.
Die Sicherheit des DES
- Kein realistischer Angriff bekannt, der schneller als die vollständige
Suche ist.
- Schlüsselraum ist vergleichsweise klein (256
Schlüssel) - vollständige Suche ist möglich.
- Aufwandsabschätzung:
- Michael WIENER 1993: machbare Maschine für $ 1 Million;
durchschnittliche Suchzeit 3.5 Stunden pro Schlüssel.
- 1999 ca. um Faktor 10 schneller.
- DES seit 1998 mehrfach gebrochen (DES Challenges von RSA).
- Schnellere Methoden (unter praktisch nicht realistischen Annahmen über
Kenntnisse des Angreifers):
- Differentielle Kryptoanalyse (BIHAM/ SHAMIR 1990),
- Lineare Kryptoanalyse (MATSUI 1993).
Theoretische Ergebnisse der Analysen:
DES war wahrscheinlich optimal gemacht -
- wahrscheinlich keine »Hintertür« eingebaut,
- keine weitere Schwäche erkennbar,
- Modifikationen im Algorithmus führen zur Schwächung,
- unabhängige Teilschlüssel bringen keine Verstärkung.
Der DES ist wegen seines zu kleinen Schlüsselraums heute
nicht mehr als sicher zu betrachten!
Alternativen zum DES
- Triple-DES: c = E3(D2(E1(m))) -
bzw. 2-key-3DES: c = E1(D2(E1(m))).
- Schlüssellänge 112 bzw. 168 Bit,
- keine Schwäche bekannt,
- mit gewöhnlichem DES kompatibel
(k1 = k2 = k3),
- etwas langsam.
- FEAL (Fast data Encipherment ALgorithm) -
Nippon Telegraph and Telephone Corporation 1987;
- anfällig gegen Differential-Kryptoanalyse.
- IDEA (International Data Encryption Algorithm) - Lai/Massey,
ETH Zürich, 1990
- bisher sicher, Schlüssellänge 128 Bit,
effizient in Hard- und Software.
- RC4 (Ron's Cipher) - Ronald Rivest, RSADS Inc., 1987,
- Schlüssellänge 1 - 2048 Bit.
Achtung: 40-Bit-Export-Version unsicher!
[Es gibt auch RC2, RC5, RC6.]
- AES-Auswahl 2000-2001 (»Advanced Encryption Standard«)
[AES-Homepage beim NIST]
- Ausgewählt: Rijndael (Joan Daemen und Vincent Rijmen,
Belgien).
- Schlüssellänge: 128 oder 256 Bits.
- Geschwindigkeit: wie DES (trotz wesentlich höherer Sicherheit).
Betriebsarten bei Blockverschlüsselung
Ein Blockverschlüsselungsverfahren ist eine Abbildung
f: M ---> C
mit M = F2l,
C = F2r
die also l-Bit-Blöcke auf r-Bit-Blöcke
abbildet; normalerweise nimmt man dabei r = l an.
[Auf die explizite Indizierung der Abbildung mit einem Schlüssel
k kann in diesem Zusammenhang verzichtet werden.]
Klartexte sind in der Regel länger als ein Block. Sie werden dann
in entsprechende Blöcke zerlegt und diese nach einem der folgenden
Verfahren der Reihe nach verschlüsselt. (Der letzte Block muss dabei evtl. auf die benötigte Länge aufgefüllt werden - `Padding'.)
- ECB = Electronic Code Book
- CBC = Cipher Block Chaining
- CFB = Cipher Feedback
- OFB = Output Feedback
Vorlesung Datenschutz und Datensicherheit,
Johannes-Gutenberg-Universität Mainz
Autor: Klaus Pommerening, 31. März 1999;
letzte Änderung: 8. Dezember 2001
E-Mail an
Pommerening@imsd.uni-mainz.de.