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

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

400<br />

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

399<br />

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

x) = S gilt. Um zu zeigen, daß auch alle x gleichwahrsche<strong>in</strong>lich s<strong>in</strong>d, brauchen wir wieder,<br />

daß wegen der gleichen Größe der Räume ver(k, x) = S nur für e<strong>in</strong> k gelten kann.<br />

richtig authentisiert ist (s<strong>in</strong>nvollerweise mit e<strong>in</strong>em <strong>in</strong>formationstheoretisch sicheren Authentikationscode).<br />

Für den b<strong>in</strong>ären Fall der Vernam-Chiffre suchen wir also 2x2-Funktionstafeln, <strong>in</strong> denen <strong>in</strong><br />

jeder Zeile <strong>und</strong> Spalte e<strong>in</strong>e 0 <strong>und</strong> e<strong>in</strong>e 1 steht. Es gibt genau zwei, die die Funktionen XOR<br />

<strong>und</strong> NOT XOR darstellen. (Daß es genau zwei s<strong>in</strong>d, sieht man z.B. so: Legt man für e<strong>in</strong>e<br />

Wertekomb<strong>in</strong>ation der beiden E<strong>in</strong>gabeparameter den Funktionswert fest, ist die Funktion klar,<br />

da durch Änderung e<strong>in</strong>es Parameterwertes sich das Funktionsergebnis jeweils ändern muß. Da<br />

man für den ersten Funktionswert zwei Möglichkeiten hat, gibt es also zwei Funktionen.)<br />

k akt<br />

1. uns<strong>in</strong>nige Nachricht:<br />

S – k<br />

akt<br />

2. uns<strong>in</strong>nige Nachricht:<br />

k nächste<br />

k<br />

3 .<br />

akt N nächste + kakt<br />

Empfänger<br />

Sender<br />

N nächste<br />

– k nächste<br />

N nächste + k akt<br />

2 .<br />

S<br />

S – k akt<br />

1 .<br />

x x x<br />

Angreifer<br />

0 1<br />

S =<br />

k(x)<br />

0 1<br />

S =<br />

k(x)<br />

0 1<br />

S =<br />

k(x)<br />

(S – k )<br />

akt<br />

k akt := S –<br />

0<br />

1<br />

0<br />

0 y y<br />

0 0 1<br />

k k k<br />

1 y y<br />

1 1 0<br />

N nächste + k akt – k akt<br />

N nächste :=<br />

1<br />

0<br />

1<br />

Für y = 1: NOT XOR<br />

Für y = 0: XOR<br />

y sei das Inverse zu y.<br />

g) Lieber jüngerer Fre<strong>und</strong>!<br />

Erstens kannst Du, wenn es Dir nicht <strong>in</strong>tuitiv klar ist, <strong>in</strong> historischen Quellen [Sha1_49] nachlesen,<br />

daß natürliche Sprache zu weit mehr als der Hälfte aus Red<strong>und</strong>anz besteht <strong>und</strong> deshalb<br />

ke<strong>in</strong> Ersatz für e<strong>in</strong>en re<strong>in</strong> zufällig gewählten Schlüssel, d.h. e<strong>in</strong>en maximaler Entropie, ist.<br />

Deshalb kann man, wenn natürliche Sprache auf diese Art <strong>und</strong> Weise verschlüsselt wird, den<br />

S<strong>in</strong>n längerer Schlüsseltexte verstehen, ohne Buch, Seite <strong>und</strong> Zeile bestimmen zu müssen. Ja<br />

man kann sogar den S<strong>in</strong>n der zur Verschlüsselung verwendeten Buchpassage verstehen <strong>und</strong><br />

sie ggf. so ermitteln. (E<strong>in</strong> genaues Verfahren zum vollständigen Brechen mittels e<strong>in</strong>es re<strong>in</strong>en<br />

Schlüsseltext-Angriffs ist <strong>in</strong> [Hors_85 Seite 107 f.] skizziert. Vollständiges Brechen mittels<br />

e<strong>in</strong>es Klartext-Schlüsseltext-Angriffs ist noch wesentlich e<strong>in</strong>facher.)<br />

Zweitens solltest Du, wenn Du es <strong>in</strong> letzter Zeit nicht getan hast, Dich über die momentane<br />

<strong>und</strong> <strong>in</strong> Zukunft zu erwartende Rechenleistung <strong>und</strong> Speicherkapazität von PCs <strong>in</strong>formieren.<br />

Dann wirst auch Du befürchten, daß man demnächst die gesamte Weltliteratur auf e<strong>in</strong>igen<br />

optischen Speicherplatten speichern <strong>und</strong> dann durch vollständige Suche <strong>in</strong> e<strong>in</strong>igen St<strong>und</strong>en<br />

jeden masch<strong>in</strong>ell erkennbare Red<strong>und</strong>anz enthaltenden Klartext, der nach De<strong>in</strong>em Verfahren<br />

verschlüsselt wurde, automatisch entschlüsseln kann. (Sehr defensive Plausibilitätsrechnung:<br />

Weltliteratur habe 108 Bände zu im Mittel 1 MByte. Also werden bei 1990 üblichen 5,25"optischen<br />

Platten mit je 600 MByte <strong>in</strong>sgesamt 108/600, also ungefähr 160 000 optische Platten<br />

benötigt. Deren Durchsuchen ab jeder Bitposition erfordert 108•220•8 ≈ 8•1014 Schritte, die je<br />

etwa 10-6 s dauern dürften. Also dauert das vollständige Durchsuchen längstens 8•108 s, also<br />

längstens 92593 Tage bei e<strong>in</strong>em Rechner heutiger Leistung. Beg<strong>in</strong>nt man mit den wahrsche<strong>in</strong>lichen<br />

Werken der Weltliteratur, endet die Suche im Mittel weit schneller.)<br />

Zum Schluß noch e<strong>in</strong> kle<strong>in</strong>er Trost: Du bist nicht der erste, dem solch e<strong>in</strong> Fehler unterläuft.<br />

Außerdem hattest Du Glück, durch Veröffentlichung De<strong>in</strong>es Verfahrens e<strong>in</strong>en Fre<strong>und</strong> zu<br />

f<strong>in</strong>den, der Dich auf De<strong>in</strong>en Fehler h<strong>in</strong>weist. Viele De<strong>in</strong>er Kollegen, die entweder nichts mehr<br />

dazulernen wollen oder deren Auftraggeber Urheberrechte sichern wollen, halten Ihre<br />

Verfahren geheim. Du kannst Dir denken, was dann oft passiert.<br />

h) Ne<strong>in</strong>, denn man kann sich e<strong>in</strong>en beliebigen anderen Klartext derselben Länge ausdenken <strong>und</strong><br />

dann den Schlüssel so ausrechnen, daß er zu jenem Klartext <strong>und</strong> dem vorhandenen Schlüsseltext<br />

paßt. Die Strafverfolgungsbehörde erhält also ke<strong>in</strong>e s<strong>in</strong>nvolle Information.<br />

E<strong>in</strong>e zusätzliche Anmerkung: Bei der Vernam-Chiffre müssen Schlüssel (oder zum<strong>in</strong>dest<br />

Schlüsselabschnitte) vom e<strong>in</strong>en Partner nur zum Ver- <strong>und</strong> vom andern nur zum Entschlüsseln<br />

verwendet werden. Ke<strong>in</strong>esfalls genügt es, daß zwei Partner e<strong>in</strong>en geme<strong>in</strong>samen Schlüssel<br />

haben <strong>und</strong> immer der, der dem anderen gerade e<strong>in</strong>e Nachricht senden will, verwendet hierfür<br />

als „Schlüssel“ den nächsten Schlüsselabschnitt. Sonst kann es passieren, daß beide Partner<br />

gleichzeitig e<strong>in</strong>e Nachricht senden, so daß e<strong>in</strong> Angreifer die Differenz ihrer Klartexte erfährt.<br />

f) Da es hier um Eigenschaften der Ver-/Entschlüsselungsfunktion an sich, d.h. unabhängig von<br />

e<strong>in</strong>zelnen Schlüsseln, geht, ist die <strong>in</strong> §3.1.1.1 e<strong>in</strong>geführte abgekürzte Schreibweise ungeschickt<br />

(<strong>in</strong> ihr kommt die Ver-/Entschlüsselungsfunktion an sich ja gerade nicht vor), so daß<br />

wir zur ebenfalls dort erläuterten ausführlicheren Notation übergehen. Zunächst sei die<br />

Def<strong>in</strong>ition (1) <strong>in</strong> der ausführlicheren Notation h<strong>in</strong>geschrieben:<br />

Def<strong>in</strong>ition für <strong>in</strong>formationstheoretische <strong>Sicherheit</strong> für den Fall, daß alle Schlüssel mit gleicher<br />

Wahrsche<strong>in</strong>lichkeit gewählt werden:<br />

∀S ∈ S ∃ const ∈ IN ∀x ∈ X: |{k ∈ K | ver(k,x) = S}| = const. (1)<br />

Wir zeigen: Zum<strong>in</strong>dest wenn, wie bei allen Vernam-Chiffren, Schlüsselraum = Klartextraum =<br />

Schlüsseltextraum ist143 , ist notwendig <strong>und</strong> h<strong>in</strong>reichend: Die Funktion ver muß bei Festhalten<br />

e<strong>in</strong>es der beiden E<strong>in</strong>gabeparameter <strong>und</strong> Variation des anderen den gesamten Wertebereich<br />

durchlaufen.<br />

1 (k festgehalten) Bei festem k muß jeder Schlüsseltext e<strong>in</strong>deutig entschlüsselt werden<br />

können, also nur bei e<strong>in</strong>em Klartext vorkommen (d.h. ver(k, •) <strong>in</strong>jektiv). Da es genausoviele<br />

Schlüsseltexte wie Klartexte gibt, ist äquivalent, daß jeder Schlüsseltext m<strong>in</strong>destens<br />

e<strong>in</strong>mal vorkommt (d.h. ver(k, •) surjektiv).<br />

2a (x festgehalten, Durchlaufen ist notwendig) Aus Def<strong>in</strong>ition (1) folgt, daß h<strong>in</strong>ter jedem<br />

überhaupt je vorkommenden Schlüsseltext S jeder Klartext stecken kann. Aus 1. folgt, daß<br />

jeder Wert S des Schlüsseltextraums überhaupt je vorkommt. Zusammen lautet dies formal<br />

geschrieben: ∀S ∀x ∃k: ver(k, x) = S. Dies ist äquivalent zu ∀x ∀S ∃k: ver(k, x) = S,<br />

d.h. daß bei festgehaltenem x alle S vorkommen müssen.<br />

2b (x festgehalten, Durchlaufen ist h<strong>in</strong>reichend) Kommen umgekehrt bei festgehaltenem x alle<br />

S vor, so folgt die <strong>Sicherheit</strong>: Ist S gegeben, so gibt es also zu jedem x e<strong>in</strong> k, so daß ver(k,<br />

143<br />

Klartextzeichen, Schlüsselzeichen <strong>und</strong> Schlüsseltextzeichen s<strong>in</strong>d Elemente der gleichen Gruppe, <strong>und</strong> zusätzlich s<strong>in</strong>d<br />

Klartext, Schlüssel <strong>und</strong> Schlüsseltext jeweils gleich lang.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!