03.08.2013 Aufrufe

Sicherheit in Rechnernetzen: - Professur Datenschutz und ...

Sicherheit in Rechnernetzen: - Professur Datenschutz und ...

Sicherheit in Rechnernetzen: - Professur Datenschutz und ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

104<br />

A. Pfitzmann: Datensicherheit <strong>und</strong> Kryptographie; TU Dresden, WS2000/2001, 15.10.2000, 15:52 Uhr<br />

103<br />

A. Pfitzmann: Datensicherheit <strong>und</strong> Kryptographie; TU Dresden, WS2000/2001, 15.10.2000, 15:52 Uhr<br />

3.8 Zum praktischen Betrieb kryptographischer<br />

Systeme<br />

Zum praktischen Betrieb kryptographischer Systeme ist es nützlich,<br />

• Begriffe wie Blockchiffre vs. Stromchiffre, synchron vs. selbstsynchronisierend,<br />

• Betriebsarten von Blockchiffren, d.h. die wichtigen Konstruktionen von selbstsynchronisierenden<br />

<strong>und</strong> synchronen Stromchiffren aus Blockchiffren, <strong>und</strong><br />

• wenigstens e<strong>in</strong>e effiziente Konstruktion von kollisionsresistenten Hashfunktionen aus Blockchiffren<br />

zu kennen. Dies wird jeweils <strong>in</strong> den folgenden Unterkapiteln behandelt.<br />

3.8.1 Blockchiffre, Stromchiffre<br />

Bei e<strong>in</strong>em gegebenen endlichen Alphabet ver-/entschlüsselt e<strong>in</strong>e<br />

• Blockchiffre nur Zeichenketten fester Länge, während e<strong>in</strong>e<br />

• Stromchiffre Zeichenketten variabler Länge bearbeiten kann.<br />

Sek<strong>und</strong>en zur Ermittlung e<strong>in</strong>es DES-Schlüssels etwa 10 10 . Für 105 US$ kann man also<br />

e<strong>in</strong>e Masch<strong>in</strong>e bauen, die <strong>in</strong> 35 St<strong>und</strong>en e<strong>in</strong>en Schlüssel ermittelt, für 106 US$ dauert es<br />

nur noch 3,5 St<strong>und</strong>en, usw. In der Vergangenheit verdoppelte sich die Rechenleistung bei<br />

gleichen Kosten etwa alle 18 Monate. Obiges Produkt ist also vermutlich auch zukünftig<br />

etwa alle 18 Monate zu halbieren <strong>und</strong> beträgt im Jahr 2000 dann etwa 109 . Im Juli 1998<br />

veröffentlichte Electronic Frontier Fo<strong>und</strong>ation (EFF), daß sie <strong>in</strong>nerhalb e<strong>in</strong>es Jahres mit<br />

e<strong>in</strong>em Gesamtaufwand von weniger als 250000 US$ e<strong>in</strong>e Spezialmasch<strong>in</strong>e zum Brechen<br />

von DES gebaut haben, die DES-Schlüssel <strong>in</strong> weniger als 3 Tagen ermittelt [EFF_98].<br />

Unter Verwendung dieser oberen Schranken liegt das tatsächlich erzielte Produkt von<br />

250000 • 3•24•60•60 = 6,48 • 10 10 leicht oberhalb der am Schreibtisch ermittelten<br />

Angaben für die 1995 verfügbare Technologie.<br />

• Die Entwurfskriterien für die speziellen Werte der Substitutionen <strong>und</strong> Permutationen (hier<br />

nicht beschrieben, bei Interesse im Standard nachzulesen) werden weiterh<strong>in</strong> geheimgehalten.<br />

In [Copp_92, Copp2_94] f<strong>in</strong>det sich allerd<strong>in</strong>gs die weitgehende Aufdeckung des Rätsels.<br />

Legt man das Alphabet {0, 1} zugr<strong>und</strong>e, s<strong>in</strong>d die Vernam-Chiffre (one-time pad), der s2-mod-n- Generator <strong>und</strong> GMR Stromchiffren, während RSA <strong>und</strong> DES dann Blockchiffren s<strong>in</strong>d. Legt man<br />

jedoch als Alphabet {0, 1, 2, 3, ..., 264-1} zugr<strong>und</strong>e <strong>und</strong> unterstellt, daß mehrere Zeichen jeweils<br />

unabhängig vone<strong>in</strong>ander verschlüsselt werden, dann ist DES nach obiger Def<strong>in</strong>ition e<strong>in</strong>e Stromchiffre.<br />

Die Unterscheidung Blockchiffre-Stromchiffre nach obiger Def<strong>in</strong>ition hängt also wesentlich<br />

vom unterstellten Alphabet ab <strong>und</strong> ist deshalb <strong>in</strong> sich nur relativ. Bei vielen Anwendungen ist das<br />

Alphabet aber vorgegeben (oder zum<strong>in</strong>dest kanonisch) <strong>und</strong> damit die Unterscheidung präzise.<br />

(Anmerkung: Manche Autoren def<strong>in</strong>ieren die Klasse der Stromchiffre restriktiver: Bei ihnen ist bei<br />

jeder Stromchiffre e<strong>in</strong> Schlüsselstrom entweder vorgegeben (one-time pad) oder wird generiert<br />

(pseudo one-time pad, z.B. s2-mod-n-Generator) <strong>und</strong> zum Klartext- bzw. Schlüsseltextstrom addiert<br />

bzw. subtrahiert. Mir ersche<strong>in</strong>t diese restriktivere Def<strong>in</strong>ition für das folgende jedoch unnötig.)<br />

Bei e<strong>in</strong>er Stromchiffre (im Deutschen auch als kont<strong>in</strong>uierliche Chiffre [Hors_85] oder Stromsystem<br />

[HeKW_85], im Englischen als stream cipher bezeichnet) werden Nachrichten als e<strong>in</strong>e Folge von<br />

Zeichen codiert, so daß e<strong>in</strong>zelne Zeichen des Alphabets verschlüsselt werden. Diese Zeichen werden<br />

jedoch nicht notwendigerweise unabhängig vone<strong>in</strong>ander verschlüsselt, sondern ihre Verschlüsselung<br />

kann auch entweder<br />

1. von ihrer Position <strong>in</strong>nerhalb der Nachrichten oder allgeme<strong>in</strong>er von allen vorhergehenden<br />

Klartext- <strong>und</strong>/oder Schlüsseltextzeichen abhängen oder<br />

2. nur von e<strong>in</strong>er beschränkten Anzahl direkt vorhergehender Schlüsseltextzeichen.<br />

Unter kryptographischen <strong>und</strong> Implementierungsgesichtspunkten bieten sich folgende Verallgeme<strong>in</strong>erungen<br />

an, die diesen zwei Kritikpunkten Rechnung tragen:<br />

1. Die je 48 Schlüsselbits der 16 Teilschlüssel werden direkt e<strong>in</strong>gegeben statt aus 56 Bit erzeugt.<br />

Der Schlüssel ist damit 16•48 = 768 Bit statt 56 Bit lang.<br />

2. Die Inhalte der Substitutionsboxen Sj (j = 1,..., 8) werden variabel. Dies verlängert den<br />

Schlüssel um maximal 8•2 6 •4 = 2048 Bits.<br />

3. Die Permutationen P <strong>und</strong> IP werden variabel. Dies verlängert den Schlüssel um maximal<br />

32•⎡ld 32⎤ + 64•⎡ld 64⎤ = 160 + 384 = 544 Bits.<br />

4. Die Expansionspermutation E wird variabel. Dies verlängert den Schlüssel um maximal 48•⎡ld<br />

32⎤ = 240 Bits.<br />

Zusammen ergibt dies maximal 3600 Bit. Bezüglich des Aufwandes der Speicherung ist dies bereits<br />

heute weniger als 56 Bit im Jahre 1977. Während wie bei DES bei der 1. Verallgeme<strong>in</strong>erung e<strong>in</strong>e zufällige<br />

Wahl des Schlüssels angebracht ist, gilt dies bei der 2., 3. <strong>und</strong> 4. Verallgeme<strong>in</strong>erung nicht<br />

unbed<strong>in</strong>gt [BiSh_93].<br />

Damit hier ke<strong>in</strong>e falschen Erwartungen an den <strong>Sicherheit</strong>sgew<strong>in</strong>n entstehen: Während der „normale“<br />

DES mittels e<strong>in</strong>es gewählten Klartext-Schlüsseltext-Angriffs, genannt differentielle Kryptoanalyse<br />

(differential cryptanalysis), mittels 247 Klartext-Schlüsseltext-Blöcken gebrochen werden<br />

kann, s<strong>in</strong>d hierfür bei der 1. Verallgeme<strong>in</strong>erung 261 Klartext-Schlüsseltext-Blöcke nötig [BiSh3_91,<br />

BiSh4_91, BiSh_93]. Dies ist zwar vom naiv erhofften Aufwand von 2768-1 weit entfernt, aber<br />

schon sehr nahe an der optimalen Schwierigkeit von 264-1: Jede permutierende Blockchiffre mit<br />

Blocklänge b kann mittels aktivem Angriff mit Aufwand 2b-1 gebrochen werden – der Angreifer läßt<br />

sich e<strong>in</strong>fach alle anderen Blöcke als den, der ihn <strong>in</strong>teressiert, ver- bzw. entschlüsseln.<br />

Im ersten Fall spricht man von synchronen Stromchiffren (synchronous stream ciphers), da Ver<strong>und</strong><br />

Entschlüsselung streng synchron erfolgen muß: bei Verlust oder H<strong>in</strong>zufügen e<strong>in</strong>es Schlüsseltextzeichens,<br />

d.h. bei Verlust der Synchronisation, kann nicht mehr ohne weiteres entschlüsselt werden,<br />

Ver- <strong>und</strong> Entschlüsseler müssen sich neu synchronisieren. Sofern Ver- <strong>und</strong> Entschlüsselung nicht nur<br />

von der Position <strong>in</strong>nerhalb der Nachrichten abhängt, sondern auch von allen vorhergehenden Klartext<br />

<strong>und</strong>/oder Schlüsseltextzeichen, müssen Ver- <strong>und</strong> Entschlüsseler sich auch bei Verfälschung e<strong>in</strong>es<br />

Schlüsseltextzeichens neu synchronisieren.<br />

Im zweiten Fall spricht man von selbstsynchronisierenden Stromchiffren (self-synchronous<br />

stream ciphers), da sich bei ihnen der Entschlüsseler auch bei Verlust oder H<strong>in</strong>zufügen beliebig vieler<br />

zusätzlicher Schlüsseltextzeichen spätestens nach Entschlüsselung der oben erwähnten beschränkten<br />

Anzahl Schlüsseltextzeichen wieder auf den Verschlüsseler synchronisiert hat.<br />

3.7.8 Verschlüsselungsleistung<br />

Mittels e<strong>in</strong>er Software-Implementierung werden auf dem Apple Mac<strong>in</strong>tosh Classic (MC68000, 8<br />

MHz) mit e<strong>in</strong>em gemäß 1., 2. <strong>und</strong> 3. verallgeme<strong>in</strong>erten DES über 100 kbit/s ver-/entschlüsselt, auf<br />

dem PowerBook 180 (MC 68030, 33 MHz) über 900 kbit/s [PfAß1_90, PfAß_93].<br />

Mittels e<strong>in</strong>er Hardware-Implementierung (Standardzellen-Entwurf, 7155 Gatteräquivalente, 2 μm<br />

Technologie) werden mit e<strong>in</strong>em gemäß 1. verallgeme<strong>in</strong>erten DES auf dem Chip 40 Mbit/s ver-/entschlüsselt.<br />

Da die E<strong>in</strong>-/Ausgabe aber nur byteweise <strong>und</strong> asynchron (2-Weg-Handshake) erfolgt,<br />

können nur 10 Mbit/s e<strong>in</strong>-/ausgegeben werden [KFBG_90].

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!