• 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 18. Oktober 2007

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 18. Oktober 2007

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 18. Oktober 2007

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 18. Oktober 2007

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 18. Oktober 2007

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 18. Oktober 2007

(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)>0istc0Chiffretext f ¨ur jedesm0. Daher gibt es ein k0K 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)∈K mitE(k(m0,c0),m0) = c0.

11 18. Oktober 2007

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 Element vonK von der Formk(m1,c0)f ¨ur einm1M, denn

m7→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 Wahrscheinlichkeitsraum k ¨onnen wirM×Knehmen.

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

9 18. Oktober 2007

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?

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

15 18. Oktober 2007

Bemerkungen

2. Wieviel Chiffretext ist durchschnittlich erforderlich, damit es keine Nebenschl ¨ussel mehr geben kann?

Dann kann ein Angreifer den Schl ¨ussel bestimmen.

F ¨ur Details siehe Buch von D. Stinson.

16 18. Oktober 2007

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(k = k(m0,c0)) Pr(m = m0)/Pr(c = c0)

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

= Pr(m = m0).

13 18. Oktober 2007

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 18. Oktober 2007

(5)

Konsequenzen

F ¨ur ein perfekt sicheres Verschl ¨usselungsystem gilt

notwendigerweise#K#C, so daß f ¨urK ={0,1}rundC ={0,1}sdie Schl ¨ussell ¨angermindestens gleich der Chiffretextl ¨angessein muß.

Man kann also keine perfekte (informationstheoretische) Sicherheit erreichen, wenn man viel Klartext mit einem kleinen Schl ¨ussel verschl ¨usseln will bzw. wenn man ein praktikables Verschl ¨usselungs- system haben 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.

17 18. Oktober 2007

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

”frisiertem“ W ¨urfel.

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

Referenzen

ÄHNLICHE DOKUMENTE

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

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

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

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

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

Erst wenn man sich auf diese Art klar macht, dass aus unserem täglichen Leben die Umgestaltung nicht mehr wegzudenken ist, welche wir dem Erfindergeist Teslus verdanken, wird man

Da sie Angst haben, dass ihre Nachrichten mitgelesen werden, kreieren sie dazu einen geheimen Schl ¨ussel mithilfe des Diffie-Hellman Schl ¨usselaustausches.. Sei G = (Z/77, +)