Feistel Netzwerke
Bl ¨ocke in zwei gleiche H ¨alften auteilen:
•mi= (Li,Ri).
Verschl ¨usseln:
•Li= Ri−1
•Ri= Li−1⊕f (Ri−1,ki).
Entschl ¨usseln:
•Li−1= Ri⊕f (Li,ki).
•Ri−1= Li.
f muß nicht injektiv sein.
3 31. Oktober 2006
Substitutions-Permutationsnetzwerke
Block und Schl ¨ussel mit XOR verkn ¨upfen:
•mi= mi−1⊕ki.
Bl ¨ocke in mehrere Teilbl ¨ocke aufteilen:
•mi= (mi,j)j.
Auf die Teilbl ¨ocke eine Substitutionschiffre anwenden:
•(πS(mi,j))j.
Die Bits der zusammengefaßten Teilbl ¨ocke permutieren:
•mi+1=πP((πS(mi,j))j).
( Die PermutationπPwird in der letzten Runde aus Symmetriegr ¨unden nicht angewendet, daf ¨urmrundkr+1mit XOR verbunden. )
4 31. Oktober 2006
Blockchiffren
Designziele:
•Konfusion, Verschleiern des Zusammenhangs zwischen Klar- und Chiffretext.
•Diffusion, Verteilen der Information im Klartext ¨uber den Chiffretext.
•Lawineneffekt, jedes Bit im Chiffretext soll von jedem Bit des Klartexts und des Schl ¨ussels abh ¨angen.
•Noch mehr: Jedes Bit des Chiffretext soll sich mit
Wahrscheinlichkeit1/2 ¨andern, wenn irgendein Bit des Klartexts oder des Schl ¨ussels ge ¨andert wird.
⇒soll sich wie eine zuf ¨allige Funktion verhalten.
1 31. Oktober 2006
Blockchiffren Konstruktion
Der Eingabeblock wird durch mehrfache Anwendung einer
Rundenfunktion bearbeitet. F ¨ur jede Runde wird ein Rundenschl ¨ussel anhand eines Schl ¨usselschemas erzeugt.
Die Rundenfunktionen stellt im allgemeinen kein sicheres
Verschl ¨usselungsverfahren dar, erst die mehrfache Anwendung ergibt die Sicherheit.
Bei den Rundenfunktionen werden im wesentlichen Feistel- und Substitutions-Permutationsnetzwerke unterschieden.
Diei-te Runde:mi= g(mi−1,ki).
2 31. Oktober 2006
DES
Nach dem letzten Feistelschritt werdenL16undR16vertauscht.
Dem gesamten Feistel Netzwerk wird eine Permutation IP∈S({0,1}64)vorgeschaltet undIP−1nachgeschaltet.
Dies hat keine kryptographische Bedeutung.
Zusammenfassend also:
1.IPauf Block anwenden:(L0,R0)←IP(m).
2.16Runden Feistel-Netzwerk.
3.R17←L16undL17←R16.
4.IP−1auf Block anwenden:c←IP−1(L17,R17).
7 31. Oktober 2006
DES
Diekisind 48 Bit Schl ¨ussel und setzen sich aus einer Auswahl permutierter Bits auskzusammen:
1.kwird in zwei 28 Bit Bl ¨ocke aufgeteilt.
2. Diese werden in Anh ¨angigkeit der Rundenanzahl rotiert.
3. Aus den 56 Bit werden 48 gem ¨aß einer festen Regel ausgew ¨ahlt.
Schwache Schl ¨ussel:
•Linke und rechte H ¨alfte vonknur Einsen oder Nullen.
Keine weiteren schwachen Schl ¨ussel bekannt.
Es gibt noch 6 semi-schwache Schl ¨usselpaare(k,l)mitE(k,·) =E(l,·).
8 31. Oktober 2006
Data Encryption Standard - DES
•Entwickelt um 1977
•Ist de-facto der internationale Standard f ¨ur Bankensicherheit.
•Vermutlich der am meisten analysierte kryptographische Algorithmus.
•Kurze Geschichte:
– Ausschreibung f ¨ur ein Verfahren durch NBS (heute NIST).
– Vorg ¨anger Lucifer bei IBM entwickelt (Feistel, Coppersmith).
– Untersuchung durch NSA und Ver ¨anderung derS-Boxen.
– Geheimhaltung der Design-Kriterien bis in die 90er (Hintert ¨ur-Spekulationen).
– 1990 Entdeckung der differentiellen Kryptanalyse, war NSA schon damals bekannt ...
5 31. Oktober 2006
DES
Blockl ¨ange 64 Bit, Schl ¨ussell ¨ange 56 Bit.
Feistel Chiffre mit 16 Runden.
Die Feistel-Funktion f :{0,1}32× {0,1}48→ {0,1}32ist definiert wie folgt:
1.Ri−1wird auf 48 Bit erweitert und permutiert, so daß 16 Bit doppelt auftreten (Diffusion, Lawineneffekt).
2. XOR mit dem Rundenschl ¨usselkiund Aufteilung in 8 Bl ¨ockeBivon je 6 Bit.
3. Anwendung derS-BoxSi:{0,1}6→ {0,1}4aufBi,Ci= Si(Bi).
4. Anwendung der PermutationPaufC1. . .C8, Ergebnis ist f (Ri−1,ki).
6 31. Oktober 2006
Advanced Encryption Standard - AES
Reaktion auf den auslaufenden DES (langsamen Tripel-DES).
1997 Ausschreibung vom NIST f ¨ur Nachfolger von DES.
•Blockchiffre mit 128 Bit Blockl ¨ange, 128/192/256 Bit Schl ¨ussell ¨ange.
•Offene Dokumentation, Referenzimplementierungen.
•Bedingung: nicht patentiert, frei verwendbar.
•Offener, internationaler Prozess.
•1999: F ¨unf Kandidaten: MARS, RC6, Rijndael, Serpent, Twofish.
•2000/2001: Rijndael wird AES.
Alle f ¨unf Kandidaten wurden als sicher eingestuft.
Wird von US Beh ¨orden benutzt (f ¨ur
”sensitive“, nicht
”classified“
Daten). Weite Verbreitung (zu erwarten).
11 31. Oktober 2006
DES
Sicherheit von DES:
•Probleme im wesentlichen nur wegen zu kleiner Schl ¨ussell ¨ange.
•Stark gegen differentielle Kryptanalyse.
•Differentielle und lineare Kryptanalyse brauchen>240Klartexte, nicht praktikabel.
•Brute-Force (256Schritte) praktikabel.
Hardware:
•Deep Crack (1998): 250.000 Dollar, ein Schl ¨ussel in 50h.
•Man kann davon ausgehen, daß es heute (bei den
entsprechenden Organisationen) Hardware gibt, die das viel schneller schafft.
9 31. Oktober 2006
DES
Sicherheit von DES:
•Exportversionen von DES haben sogar nur 40 Bit Schl ¨ussel!
•Triple-DES (EDE) mit ca. 112 Bit effektiver Schl ¨ussell ¨ange.
Moore’s Law: Rechenleistung verdoppelt sich alle 18 Monate.
Also alle 15 Jahre 10 Bit Reduktion der Sicherheit im bezug auf die ben ¨otigte Zeit.
Heutzutage werden mindestens 128 Bit Schl ¨ussell ¨ange und Blockl ¨ange angestrebt.
10 31. Oktober 2006