• Keine Ergebnisse gefunden

One-Time Pad

N/A
N/A
Protected

Academic year: 2022

Aktie "One-Time Pad"

Copied!
5
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Ideale Blockchiffren

Designziel / Konstruktion eines idealen Blockchiffre:

•F ¨ur jedeskKw ¨ahle fkS(An)gleichverteilt zuf ¨allig und definiereE(k,·) := fk.

E hat dann keine besondere (mathematische) Struktur, die durch einen Angreifer ausgenutzt werden kann.

Problem: Algorithmisch nicht praktikabel / machbar.

•Eine Beschreibung beliebiger Elemente ausS(An)ben ¨otigt mindestenslog2(#S(An))Bits f ¨ur jedes Element. Es gilt log2(#S(An))≥#An(log2(#An)−1/log(2)). Zu groß!

•Beliebige Elemente ausS(An)k ¨onnen daher im Prinzip nur durch die Angabe aller Urbild-Bild Paare beschrieben werden.

•Ebenfalls zu vielek!

3 24. Oktober 2006

Ideale Blockchiffren

Blockchiffren in der Praxis:

•Man beschr ¨ankt sich auf eine relativ gesehen kleine Teilmenge vonS(An), welche als Ver- und Entschl ¨usselungsfunktionen vorkommen (#Anviele).

•Diese Teilmenge muß durch den Schl ¨usselkalgorithmisch (effizient) definierbar sein, d.h. auskmuß sich effizient die FunktionE(k,·)bestimmen lassen, und die Berechnung von Bildwerten unterE(k,·)muß ebenfalls effizient m ¨oglich sein.

•Teilmenge erfordert also eine ganz spezielle Beschreibung, soll aber trotzdem m ¨oglichst

”zuf ¨allig ausS(An)gew ¨ahlt aussehen“.

Blockchiffren

Def: Eine Blockchiffre mit Blockl ¨angenist ein symmetrisches Verschl ¨usselungssystem mitM = C = AnundAendlich.

Prop: Die AlgorithmenE undD einer Blockchiffre definieren bijektive Funktionen.

Bew: WegenD(k,E(k,m)) = mwird keinen zwei Nachrichten der gleiche Chiffretext zugeordnet. WegenC = MundAendlich wird jeder Nachricht daher genau ein Chiffretext zugeordnet.

BezeichnetS(An)die Menge aller bijektiven Abbildungen

(Permutationen) vonAnin sich, so gilt alsoE(k,·),D(k,·)S(An).

Weiter erhalten wir AbbildungenKS(An),k7→E(k,·)bzw.

k7→D(k,·).

1 24. Oktober 2006

Blockchiffren

Beispiele:

•Die affin-linearen Chiffren (historisch).

•Substitutionchiffren (definiert durch koordinatenweise Anwendung eines Elements ausS(A)aufAn, historisch).

•DES (Data Encryption Standard, 1977, veraltet).

•AES (Advanced Encryption Standard, 2001, aktuell).

(2)

One-Time Pad

Entspricht der einmaligen Anwendung einer allgemeinen, zuf ¨allig gew ¨ahlten Permutation ausS({0,1}n). Liefert daher ein

”Fragment“

eines idealen Blockchiffre.

Vernam’s One-Time Pad (1917) ist wie folgt definiert:

M = C = K ={0,1}n.

c =E(k,m) := mk(bitweises XOR = bitweise Addition inZ/2Z).

m =D(k,c) := ck.

kwird zuf ¨allig gew ¨ahlt und nur einmal (!) verwendet.

Known-Plaintext Angriff liefertk = mc. Unsicher unter mehrfacher Verwendung vonk.

Aber: Unter einmaliger Anwendung vollkommen sicher!

7 24. Oktober 2006

One-Time Pad

Sicherheit durch Shannon bewiesen (1949).

Problem:

•Hoher Schl ¨usselverbrauch, daher ineffizient.

•Wie Schl ¨ussel erzeugen?

Wurde angeblich f ¨ur die Verbindung zwischen Washington und Moskau verwendet (und andere milit ¨arische/diplomatische Anwendungen).

Das One-time pad ist ein Spezialfall der Chiffre von Vign ´ere, wenn nur einmal verwendet.

8 24. Oktober 2006

Ideale Blockchiffren

Idealisierte Emulation einer zuf ¨allig gew ¨ahlten Funktion aus fS(An) durch ein Orakel:

•Algorithmen befragen das Orakel nach Funktionswerten f (m).

•Nach Eingabe vonmw ¨ahlt das Orakel einen zuf ¨alligen Wertc, speichert f (m) = cin einer Liste und liefertcals f (m)zur ¨uck.

•Falls f (m)ein zweites Mal erfragt wird, verwendet das Orakel den Wert aus der Liste.

Genauere Erl ¨auterung von

”zuf ¨allig ausS(An)gew ¨ahlt aussehen“:

Ein AngreiferAkommuniziert mit OrakelOim folgenden Spiel.

Ow ¨ahlt ein zuf ¨alliges Bitbund ein zuf ¨alligesk.

•Danach w ¨ahltAeine Reihe beliebigermiund erfragt die FunktionswerteE(k,mi)und f (mi)vonO.

5 24. Oktober 2006

Ideale Blockchiffren

Oliefert die die Antworten(E(k,mi),f (mi))fallsb = 0und ( f (mi),E(k,mi))fallsb = 1.

Agewinnt, wennAmit Wahrscheinlichkeit6= 1/2den Wert vonb herausfinden kann.

Wenn es keinen erfolgreichen Angreifer gibt, dann k ¨onnen die FunktionenE(k,·)f ¨ur zuf ¨allig gew ¨ahltesknicht von echt zuf ¨allig gew ¨ahlten Funktionen unterschieden werden.

Entsprechend k ¨onnen auch keine speziellen Eigenschaften in der Definition vonE durch Angreifer ausgenutzt werden.

Asoll hierbei nat ¨urlich wieder polynomielle Laufzeit in der Schl ¨ussell ¨ange vonkhaben.

6 24. Oktober 2006

(3)

Perfekte Sicherheit

Bew Prop: Nach dem Satz von Bayes gilt

Pr(m = m0|c = c0) Pr(c = c0) = Pr(c = c0|m = m0) Pr(m = m0).

WegenPr(m = m0|c = c0) = Pr(m = m0)>0nach Voraussetzung folgt durch K ¨urzenPr(c = c0|m = m0) = Pr(c = c0)f ¨ur jedesm0Mundc0C.

WegenPr(c = c0)>0istc0der Chiffretext f ¨ur jedesm0. Daher gibt es eink0K mitc0=E(k0,m0).

Bew Thm:

⇒. Die Existenz vonk0und die GleichungC ={E(k0,m0)|k0K}

folgen aus der Prop. Gibt esm0undk16= k2mitE(k1,m0) =E(k2,m0), so folgt damit#C<#K im Widerspruch zur Annahme. Also mußk1= k2 gelten, und die Eindeutigkeit vonk0ergibt sich.

F ¨urm0Mundc0Cseik(m0,c0)∈KmitE(k(m0,c0),m0) = c0.

11 24. Oktober 2006

Perfekte Sicherheit

Dann gilt

Pr(m = m0|c = c0) Pr(c = c0) = Pr(c = c0|m = m0) Pr(m = m0)

= Pr(c = c0undm = m0)

= Pr(k = k(m0,c0)undm = m0)

= Pr(k = k(m0,c0)) Pr(m = m0) unter Verwendung der Definitionen und der Annahme, daßmundk unabh ¨angig sind. AusPr(m = m0|c = c0) = Pr(m = m0)>0ergibt sich daraus durch K ¨urzen

Pr(k = k(m0,c0)) = Pr(c = c0).

Die rechte Seite ist unabh ¨angig vonm0. Auf der linken Seite ist jedes kKvon der Formk = k(m1,c0)f ¨ur einm1M, dennm7→k(m,c0)ist injektiv und wegen#M = #Kauch surjektiv. Folglich sind alle

Wahrscheinlichkeiten gleich und betragen1/#K = 1/#C.

Perfekte Sicherheit

Theorie durch Shannon (1949). Sicherheit in Anwesenheit von Angreifern mit unbeschr ¨ankter Rechenleistung.

Modell:

1. Betrachten Klartextemals Zufallsvariablen mit Werten inM.

(”HEUTE“ kommt h ¨aufiger vor als

”XZYQR“.)

2. Betrachten Schl ¨usselkals Zufallsvariablen mit Werten inK. (Die Schl ¨ussel werden irgendwie zuf ¨allig gew ¨ahlt.)

3. Annahme:mundksind unabh ¨angig.

4. Definieren Chiffretexte als Zufallsvariablec =E(k,m).

Als Ereignisraum k ¨onnen wirM×Knehmen.

K ¨onnenPr(c = c0)>0f ¨ur allec0Cannehmen (sonstCverkleinern), ebensoPr(m = m0)>0f ¨ur allem0M.

9 24. Oktober 2006

Perfekte Sicherheit

Def: Ein Verschl ¨usselungssystem heißt perfekt sicher, wenn Pr(m = m0|c = c0) = Pr(m = m0)f ¨ur allem0M,c0Cgilt.

Kenntnis vonc = c0ergibt also keine weiteren Hinweise ¨uber den Wert vonm.

Prop: F ¨ur ein perfekt sicheres Verschl ¨usselungssystem gilt#K#C.

Genauer gibt es f ¨ur jedesm0M,c0Ceink0Kmitc0=E(k0,m0).

Thm (Shannon): Ein Verschl ¨usselungssystem mit#K = #C = #Mist genau dann perfekt sicher, wennPr(k = k0) = 1/#Kf ¨ur allek0Kund wenn es f ¨ur jedesm0M,c0Cgenau eink0K gibt mit

c0=E(k0,m0).

Folg: Das One-Time Pad ist bei gv. Schl ¨usselwahl perfekt sicher.

(4)

Bemerkungen

In einem perfekt sicheren Verschl ¨usselungssystem erh ¨alt ein Angreifer aus dem Chiffretext keine Information ¨uber den Klartext oder den Schl ¨ussel.

F ¨ur nicht perfekt sichere Systeme hat Shannon die folgenden Fragen untersucht (mehrfache Verschl ¨usselung mit dem gleichen Schl ¨ussel):

1. Seic =E(k,m). IstD(k1,c)ein

”sinnvoller“ Klartext (z.B. deutsch) undk16= k, so heißtk1Nebenschl ¨ussel. Wieviel Nebenschl ¨ussel gibt es durchschnittlich, basierend auf der Redundanz der Klartexte?

15 24. Oktober 2006

Bemerkungen

Gibt es Nebenschl ¨ussel, so kann ein Angreifer den Klartext nicht eindeutig reproduzieren.

( F ¨ur Chiffretext der L ¨angen:sn#K/(#M)nr−1. (rRedundanz) ) 2. Wieviel Chiffretext ist durchschnittlich erforderlich, damit es keine Nebenschl ¨ussel mehr geben kann?

Dann kann ein Angreifer den Schl ¨ussel bestimmen.

(n0≈log2(#K)/(r log2(#M))Elemente ausC. ) F ¨ur Details siehe Buch von D. Stinson.

16 24. Oktober 2006

Perfekte Sicherheit

⇐. Sei wiederk(m0,c0)∈KmitE(k(m0,c0),m0) = c0. Dann gilt Pr(c = c0) =

m1∈M

Pr(m = m1undk = k(m1,c0))

=

m1∈M

Pr(m = m1) Pr(k = k(m1,c0))

=

m1∈M

Pr(m = m1)(1/#K)

= 1/#K

unter Verwendung der Definitionen und der Annahme. ¨Ahnlich wie in⇒ergibt sich damit

Pr(m = m0|c = c0) = Pr(c = c0|m = m0) Pr(m = m0)/Pr(c = c0)

= Pr(k = k(m0,c0)) Pr(m = m0)/Pr(c = c0)

= (1/#K) Pr(m = m0)/(1/#K)

= Pr(m = m0).

13 24. Oktober 2006

Perfekte Sicherheit

Bew Folg: Nach Definition des One-Time Pads gilt#M = #K = #Cund Pr(k = k0) = 1/#K. F ¨ur jedesmund jedescistk := cmein Schl ¨ussel mitc = km =E(k,m). Giltc =E(k1,m) =E(k2,m), so folgtk1m = k2m und daraus durch Addition vonmauchk1= k2. Daher gibt es zu jedem mund jedemcgenau einen Schl ¨usselkmitc =E(k,m). Die

Voraussetzungen des Thm (Shannon) sind also erf ¨ullt..

14 24. Oktober 2006

(5)

Entropie

Schl ¨usselkonzept zu Shannon’s Untersuchung ist die Entropie einer Zufallsvariablen.

Sind diexif ¨ur1≤indie Werte der ZVX, so wird definiert H(X ) =−∑Pr(X =xi)>0Pr(X = xi) log2(Pr(X = xi)).

−log2(Pr(X = xi))ist L ¨ange in Bits der Information, daßxieintritt.

AlsoH(X )erwartete (durchschnittliche) Information oder Unsicherheit.

0≤H(X )≤log2(n),

H(X ) = 0f ¨urn = 1,H(X ) = log2(n)f ¨urPr(X = xi) = 1/n.

...

Beispiel: W ¨urfeln mit fairem und

”frisierten“ W ¨urfel.

Exhaustive Search Aufwand≈2H(k)statt#K.

17 24. Oktober 2006

Bemerkungen

Man kann also keine perfekte (informationstheoretische) Sicherheit erreichen, wenn man viel Klartext mit einem kleinen Schl ¨ussel verschl ¨usseln will.

Man kann aber versuchen, komplexit ¨atstheoretische Sicherheit zu erreichen.

Die Philosophie hierbei ist, daßE(k,·)

”sich von einer zuf ¨alligen Funktion“ nicht in vertretbarer Laufzeit unterscheiden lassen sollte.

Referenzen

ÄHNLICHE DOKUMENTE

D.h.: Verschl¨ usseln einfach, Entschl¨ usseln extrem aufwendig, selbst wenn das Verfahren bekannt ist (!) (aber der Schl¨ ussel

Bilder Print Master http://vs-material.wegerer.at Marion Weyland 2007.. Beim Schaukeln kann man sich gegenseitig

Testen Sie mithilfe des Miller-Rabin-Tests, ob die Zahl 577 mit 75% Wahrscheinlichkeit eine Primzahl ist oder nicht.. 3. RC4

Bei der Berechnung des Sichtbarkeitsgraphen einer Menge sich nicht kreuzender Linien- segmente wird eine Routine ben¨otigt, die im folgenden genauer analysiert werden soll?.

• eine Nachricht mit vielen Schl ¨usseln verschl ¨usselt wird.. • korrellierte Nachrichten mit einem Schl ¨ussel verschl

Man kann also keine perfekte (informationstheoretische) Sicherheit erreichen, wenn man viel Klartext mit einem kleinen Schl ¨ussel verschl ¨usseln will bzw. wenn man ein

F ¨ur nicht perfekt sichere Systeme hat Shannon die folgenden Fragen untersucht (mehrfache Verschl ¨usselung mit dem gleichen Schl ¨ussel):?. 1. Wieviel Nebenschl ¨ussel gibt

• eine Nachricht mit vielen Schl ¨usseln verschl ¨usselt wird.. • korrellierte Nachrichten mit einem Schl ¨ussel verschl