Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Sicherer Kanal: von Alice zu Bob

Ähnliche Präsentationen


Präsentation zum Thema: "Sicherer Kanal: von Alice zu Bob"—  Präsentation transkript:

1 Sicherer Kanal: von Alice zu Bob
Symmetrische versus asymmetrische Verfahren

2 Mittwoch: Gruppenaufgabe
Ziel: Bearbeitung einer größeren Aufgabe in Gruppe Anforderungen an Thema: Theoretischer und praktischer Teil Vortrag Minuten zum Semesterende in VL-Termin Vorstellung Konzept / Technik Bewertung der praktischen Umsetzung (gerne) Demo Take-home-message Dr. Wolf Müller

3 Mittwoch: Gruppenaufgabe
3-5 Mitglieder Enge Kommunikation, Zusammenarbeit (ideal) in einem Übungstermin {Mo,Mi} Ablauf: Themenvorstellung/-vergabe Mittwoch in VL Termin. Eigene Themenvorschläge sind willkommen. Vorbereitung in den Übungen: Vorstellung Konzept Diskussion, Beratung in Übungen 3 Min Appetizer (ähnlich Gong-Show) Dr. Wolf Müller

4 Mittwoch: Was bis dann überlegen?
Mit wem möchte ich Gruppe bilden? Welches (gerne eigene) Thema finden wir spannend? Welches Thema nehmen wir? Welche Fragen sind noch offen? Themen/Ideenliste als Draft: (noch in Arbeit, bitte erst nach VL ansehen) https://www2.informatik.hu-berlin.de/sar/Itsec/uebung_ssl/themen_grp_draft.pdf Dr. Wolf Müller

5 Symmetrische (secret key) Verfahren
Ver- und Entschlüsselungsschlüssel sind gleich oder leicht voneinander ableitbar. Bijektion f in unser Definition ist die Identität oder ein einfacher Zusammenhang zwischen KE und KD Kommunikationspartner müssen geheimen Schlüssel symmetrisch verwenden. Sicherheit symmetrischer Verfahren hängt folglich von der Stärke des kryptografischen Verfahrens und von der sicheren Aufbewahrung und Verwaltung der geheimen Schlüssel ab. Dr. Wolf Müller

6 Symmetrische Verfahren: Kommunikationsprotokoll
Kommunikationspartner Alice und Bob vereinbaren gemeinsamen, geheimen Schlüssel KE = KD = KA,B Um Klartext M von Alice zu Bob zu schicken, verschlüsselt Alice den Text M mittels KA,B also C=E(M, KA,B) und sendet C an Bob. Bob entschlüsselt C mittels KA,B, also M=D(C, KA,B)=D(C=E(M, KA,B), KA,B) Problem: Verständigung über Schlüssel vor Beginn nötig! Dr. Wolf Müller

7 Asymmetrische Verfahren
Jeder Kommunikationspartner bekommt Schlüsselpaar aus geheimen (private key) und öffentlich bekannten (public key) Schlüssel. Private Schlüssel müssen ebenfalls sicher verwaltet, jedoch nicht ausgetauscht werden. Dr. Wolf Müller

8 Asymmetrische Verfahren: Kommunikationsprotokoll
Kommunikationspartner Alice und Bob erzeugen ihre eigenen Schlüsselpaare (KE,A, KD,A) und (KE,B, KD,B), wobei die Schlüssel KD,A und KD,B die jeweiligen privaten Schlüssel sind. Die Schlüssel KE,A und KE,B werden öffentlich bekannt gegeben. (Z.B. in öffentlicher Datenbank, oder öffentlich zugänglichem Schlüsselserver, PGP). Will Alice einen Klartext M, der für Bob bestimmt ist, verschlüsseln, so verwendet sie Bobs öffentlichen Schlüssel, also: C=E(M, KE,B) und sendet C an Bob. Bob entschlüsselt C mit seinem privaten Schlüssel, also E(C, KD,B)=M. Dr. Wolf Müller

9 Asymmetrische Verfahren: RSA
RSA: Ronald Rivest, Adi Shamir, Leonard Adleman Ronald Rivest Leonard Adleman Adi Shamir In 1997 it was disclosed that the public key cryptography ideas, the Diffi-Hellman and RSA cryptosystems, where actually invented in the late 1960s and early 1970s by researchers working at the British intelligence agency GCHQ [Nielsen2000, page 11] Dr. Wolf Müller

10 Anforderungen Auguste Kerckhoff:
Sicherheit eines kryptographischen Algorithmus soll nur auf der Geheimhaltung des Schlüssels beruhen und nicht auf der Geheimhaltung des Algorithmus selbst. Schlüssel darf auch mit Kenntnis der Ver- / Entschlüsselungsalgorithmen nicht (oder nur schwer) berechenbar sein. Schlüsselraum EK sollte sehr groß sein, damit er nicht mit vertretbarem Aufwand durchsucht werden kann Caesar-Chiffre: Schlüsselraumgröße=26 zu klein DES 56-Bit EK mit 256= 7*1016 Schlüsseln 1995 geknackt Heute mindestens Schlüssellängen von 128 Bit nötig, besser länger. Dr. Wolf Müller

11 Anforderungen: Schlüsselraum
Caesar-Chiffre: Schlüsselraumgröße=26 zu klein DES 56-Bit EK mit 256 =  7*1016 Wettbewerbe DES mit Brute-Force: DES-I 1997 Ende nach 96 Tagen DES-IIa Ende nach 41 Tagen DES-IIb 1998 Ende nach 56 Stunden DES-III 1999 nach 22 Stunden Seither gelten 56 Bits nicht mehr als sicher. Heute mindestens Schlüssellängen von 128 Bit nötig, besser länger. Dr. Wolf Müller

12 Schlüsselraum Bin Key Length # of keys time 106/s per key
16 bits 216 = 65536 33 ms 33 μs 32 bits 232 = 4.3*109 36 min 2 ms 56 bits 256 = 7.2*1016 1142 years 10 hours 64 bits 264 = 1.8*1019 years 107 days 128 bits 2128 = 3.4*1038 5.4*1024 years 5.4*1018 years 256 bits 2256 = 1.2*1077 3.5*1063 years 3.5*1057 years 512 bits 2512 = 1.3*10154 2.1*10142 years 2.1*10136 years 1024 bits 21024 = 1.7*10308 2.7*10296 years 2.7*10290 years Textual keys 5 chars 365 = 6.1*107 30 s 30 μs 10 chars 3610 = 3.7*1015 58 years 30 min 15 chars 3615 = 2.2*1023 3.5*109 years 3500 years 20 chars 3620 = 1.3*1031 2.1*1017 years 2.1*1011 years Dr. Wolf Müller

13 Kryptoregulierung Staatliche Regulierung des Einsatzes von kryptografischer Technologie Umstrittenes Thema Treibende Kraft USA Wunsch Exportkontrollen und Inlandsmarkt (DES 40 Bit) Schlüsselhinterlegung (key escrow) Hauptargument: Verbrechensbekämpfung Andererseits Steganografie möglich Verschlüsselung ist Voraussetzung von E-Commerce, E-Business Basis für digitale Signaturen Anforderung: Besitzer ist der einzige der Zugriff auf privaten Schlüssel hat Problem bei Hinterlegung Keystore ist lohnendes Angriffsziel Deutschland: verfassungsrechtliche Bedenken gegen Kryptoregulierung Entfaltungsfreiheit, Vertraulichkeit der Kommunikation, informelle Selbstbestimmung Dr. Wolf Müller

14 Informationstheorie Stochastischer Kanal: Kanal mit zufälligen, nicht systematischen Störungen, die nicht prinzipiell beschrieben werden und nicht durch empfängerseitige Maßnahmen behoben werden können. Wahrscheinlichkeitsrechnung kann Aussagen über Charakteristik des Kanals machen. A priori Verteilung der Quelle: Mit welcher Wahrscheinlichkeit hat Quelle ein Signal geschickt. Z.B. Deutsch, häufige Buchstaben / Buchstabenkombinationen Dr. Wolf Müller

15 Maximum-Likelihood Methode
Nachrichtenquelle Q, Nachrichten M1, … , Mn werden mit Wahrscheinlichkeit pi gesendet: C1, … , Cn Nachrichten, die empfangen werden. Bedingte Wahrscheinlichkeit pij = P(Cj|Mi), dass wenn gesendet Mi wurde empfangen Cj wird. Maximum-Likelihood Methode: Schätzung der Originalnachricht mit Hilfe von pi und pij . Maximum-Likelihood Funktion: P(Mi|Cj)=P(Cj|Mi) P(Mi) gesucht, Nachricht i=m, die mit größter Wahrscheinlichkeit : i: P(Mm|Cj) ≥ P(Mi|Cj), gesendet wurde. Dr. Wolf Müller

16 Kryptografischer Kanal
= Kanal zur Übertragung von Kryptotexten Ähnlichkeit mit stochastischem Kanal: Angreifer  Empfänger eines stochastischen Kanals Angreifer versucht aus übermittelten Daten und Kenntnissen über Nachrichtenquelle ursprüngliche Nachricht zu ermitteln  Kryptoanalyse Störungen des krytografischen Kanals nicht zufällig sondern absichtlich (Sender verschlüsselt) Angreifer braucht möglichst viele Informationen, um Analyseaufwand zu reduzieren Entropie / Redundanz einer Quelle. Dr. Wolf Müller

17 Entropie Informationsgehalt von Nachrichten:
I(M)=log2(1/pi) = -log2(pi) (gemessen in Bits/Zeichen) Informationsgehalt geringer, wenn Nachricht häufig auftritt. Entropie H einer Nachrichtenquelle:= mittlerer Informationsgehalt dieser Quelle Maß für Unbestimmtheit der Quelle Entropie misst Informationsgehalt, der im Durchschnitt bei Beobachtung der Quelle erhalten wird. Dr. Wolf Müller

18 Entropie (2) Wünschenswert: Angreifer bekommt möglichst wenig Informationen über die Quelle! Maximale Entropie wenn alle Nachrichten gleichverteilt gesendet werden: pi=1/n  Hmax=log(n) Bedingte Entropie: Mittelwert über MiM alle Klartextnachrichten unter der Bedingung, dass ein CiC aus der Menge aller Chiffretexte empfangen wurde. Wie unbestimmt ist eine Quelle nach Beobachtung einer Nachricht noch? Dr. Wolf Müller

19 Entropie / Redundanz Je weiter Entropie einer Quelle unter der max. Entropie liegt, desto leichter (für Angreifer) wahrscheinlichsten Klartext auszuwählen. Redundanz: Differenz zwischen maximaler und tatsächlicher Entropie D=Hmax-H Beispiel: Quelle mit lat. Buchstaben + Leerzeichen Hmax=log(27) ~ 4.75 Sinnvolle deutsche Texte  Entropie ~ 1.6 Redundanz von Deutsch etwa 3, also etwa 66% Dr. Wolf Müller

20 Sicherheit von Kryptosystemen (KS)
Absolute Sicherheit 1948: C. E. Shannon. A mathematical theory of communication. Annahme: Angreifer kennt a priori Verteilung der Quelle (z.B. Deutsch) Angreifer versucht mit a postori Verteilung (Wahrscheinlichkeit, dass Ci empfangen, wenn Mi gesendet) relevante Information herzuleiten. Absolute Sicherheit (Shannon): Ein Kryptosystem ist absolut sicher, wenn die a priori Verteilung für jede Nachricht gleich ihrer a postori Verteilung ist, d.h. wenn: P(M) = P (M | C) Dr. Wolf Müller

21 Sicherheit KS: Absolute Sicherheit
Definition  Angreifer kann keine Information aus Abhören des Kanals gewinnen. Maximum Likelihood Funktion maximieren  Nachricht mit größter a priori Wahrscheinlichkeit (da a priori & a postori Verteilung gleich sind) Ersetzt man P(M|C) P(M) so ist bedingte Entropie gleich der maximalen Entropie  Angreifer kann allein durch Beobachten der Quelle eines absolut sicheren KS keine Information über verwendeten Schlüssel gewinnen. Dr. Wolf Müller

22 Eigenschaften absolut sicherer KS
P(M) = P (M | C)  für ein M und alle C: P (C | M) = P (C) > 0 Zu jedem beobachteten C muss es einen Schlüssel geben: M=D(C, K). Zuordnung MC eindeutig für gegeben Schlüssel K Mindestens so viele Schlüssel K wie Chiffretexte C Mindestens so viele Chiffretexte C wie Klartexte M (Injektivität) Mindestens so viele Schlüssel K wie Klartexte M In Praxis nur One-time-pad und Quantenkryptographie absolut sicheres KS! (Vorausgesetzt guter Zufallszahlengenerator) Dr. Wolf Müller

23 Praktische Sicherheit
Sicherheit gegeben durch Aufwand den der Angreifer für Kryptoanalyse hat. Analyse einer einfachen Verschiebung im lat. Alphabet mit 26! Permutationen: Durchschnittlich 26!/2 > 2* 1026 Entschlüsselungsoperationen nötig, bei vollständiger Suche. Aber: Zusatzinformationen, Sprache mit typischer Wahrscheinlichkeitsverteilung, somit kann Schlüsselraum um Menge von Möglichkeiten reduziert werden. Bei Halbierung des Schlüsselraums pro Analyseschritt : Suchaufwand n  log n Schlüsselraum darf in als praktisch sicher geltenden KS nicht leicht partionierbar sein Dr. Wolf Müller

24 Praktische Sicherheit
Partionierung: Schlüsselraum darf in als praktisch sicher geltenden KS nicht leicht partionierbar sein. Diffusion: Chiffretext sollte von möglichst vielen Klartextzeichen, sowie vom gesamten Schlüssel abhängen. Konfusion: Zusammenhang zwischen Klartext, Schlüssel und Chiffretext so komplex wie möglich. Konfusion und Diffusion sind essenziell für praktische Sicherheit von KS! Dr. Wolf Müller

25 ►Praktische Sicherheit
Ein kryptografisches Verfahren wird praktisch sicher genannt, wenn der Aufwand zur Durchführung der Kryptoanalyse die Möglichkeit jedes denkbaren Analysten übersteigt und die erforderlichen Kosten den erwarteten Gewinn bei weitem übertreffen. Damit ist praktische Sicherheit gebunden an: Angreifermodell Zeitpunkt Dr. Wolf Müller

26 Crypttool http://www.cryptool.org
Dr. Wolf Müller

27 Komplexitätstheorie Effiziente und nichteffiziente Algorithmen
Rechenaufwand von Algorithmen als Funktion der Länge der Eingabedaten In Kryptographie häufig Worst-Case Abschätzungen Edmund Landau ( ) Symbol O-Notation Dr. Wolf Müller

28 ►Landau Symbol O ► Gegeben zwei Funktionen f und g.
f(n) = O ((g(n)) für n  1 , n2N . wenn es eine Konstante c > 0 und ein n02N gibt, so dass: 8 n > n0 : | f(n) |· c | g(n) | . f wächst bis auf konstanten Faktor c nicht schneller als g. Die Konstante hat bei sehr großen n nur geringen Einfluss. n=10 n=20 n=30 n=50 n=100 n 10 20 30 50 100 n2 400 900 2500 10000 n3 1000 8000 27000 2n 1024 109 1015 1030 Dr. Wolf Müller

29 Effiziente Algorithmen
Effizienter Algorithmus: Laufzeit durch Polynom in der Eingabegröße beschränkt. Klasse P der mit polynomiellem Aufwand lösbaren Probleme. Funktion f wächst polynomiell: 9 k: f=O (nk). Zu P gehören Algorithmen mit: Konstanter (Einfügen / Löschen von Hashtabelleneinträgen) Logarithmischer Linearer Quadratischer (Doppelt verschachtelte Schleifen, Dijkstra) Laufzeit. Dr. Wolf Müller

30 Algorithmen (Klasse NP)
Klasse NP: Klasse der nicht effizient lösbaren Probleme. Algorithmus f ist 2 NP, wenn korrekt geratene Lösung durch nicht-deterministische Turingmaschine in polynomieller Zeit als korrekt erkannt wird und die Maschine bei falschen Lösungen unter Umständen exponentiellen Rechenaufwand hat. NP-hart: Algorithmus f heißt NP-hart, wenn sich jedes Verfahren der Klasse NP in polynomieller Zeit auf f reduzieren lässt. NP-vollständig: f heißt NP-vollständig, wenn f NP-hart und f 2 NP. (travelling salesman) Bis heute unklar, ob P  NP. Für Kryptographie NP notwendig, aber nicht hinreichend, da nur „worst case“ betrachtet wird. Dr. Wolf Müller

31 Symmetrische Verfahren
Symmetrische Verfahren: gemeinsame, geheime Schlüssel große praktische Bedeutung Ver- und Entschlüsselungsverfahren (Permutation, Substitution) basieren auf sehr einfachen Operationen Shifts XOR  Effizient in Hard- und Software implementierbar. Dr. Wolf Müller

32 Permutation Permutation von A (endliche Menge) ist bijektive Abbildung: f : A  A . Bitpermutation: A={0,1}n sei Menge aller Binärworte der Länge n. Sei ¼ Permutation der Menge {1, … ,n}: f : {0,1}n  {0,1}n , mit b1, … ,bn  b¼(1), … , b¼(n) . Bei einer Permutation=Transposition wird Anordnung der Klartextzeichen vertauscht. Permutationen häufig durch Tabellen realisiert. Z.B. in DES Dr. Wolf Müller

33 Substitution Gegeben 2 Alphabete A1, A2. Substitution: Abbildung:
Substitutionschiffre ersetzt systematisch Klartextzeichen durch Chiffretextzeichen. Durch Kombination von Permutation und Substitution erhält man Produktchiffre. (Z.B. DES-Algorithmus) Dr. Wolf Müller

34 Block und Stromchiffren
Zu verschlüsselnde Klartexte besitzen unterschiedliche Längen. Verschlüsselungsverfahren erwarten in der Regel feste Länge. Klartext wird in Einheiten (Blöcke oder Zeichen) fester Länge. aufgeteilt. Blockchiffre: Verwendung, wenn Klartext vor Beginn der Verschlüsselung vollständig vorliegt. ( , File, Filesystem) Stromchiffre: Verwendung bei Anwendungen, wo es nicht praktikabel ist, zu warten, bis genug Zeichen für einen Block vorhanden sind (stromorientiert). (Verschlüsselung von Tastatureingaben, Sprachübertragung, wenn Latenz wichtig ist, ssh) Dr. Wolf Müller

35 Stromchiffre Sequentielle (lineare) Chiffren, die Folge von kleinen Klartexteinheiten mit einer variierenden Funktion verschlüsseln. Kleine Einheiten werden meist Zeichen genannt. Gängige Zeichengröße sind 1 Bit oder 1 Byte. Größte Sicherheit (absolut sicher), wenn Schlüsselzeichen zufällig gewählt sind und der Schlüssel die gleiche Länge wie der Klartext besitzt. One-time-Pad (Praxis ungeeignet) Quantenkryptografie Nahe liegend: Mechanismen, die One-time-pad approximieren. Verwendung von Pseudozufallsgeneratoren: Pseudozufallsfolge wird durch deterministischen Prozess unter Verwendung eines Initialisierungswerts generiert. Muss Eigenschaften einer echt zufälligen Folge aufweisen. Zufallsgeneratoren sollen Folgen so generieren, dass es keinen polynomiellen Algorithmus gibt, der ohne Kenntnis des Initialwertes aus einem Abschnitt der Folge das nächste Zeichen mit einer Trefferwahrscheinlichkeit größer als 0.5 vorhersagen kann. Dr. Wolf Müller

36 Stromchiffre (2) Sicherer Austausch Initialwert Initialwert Schlüssel- zeichen Klartext Chiffretext Schlüssel- zeichen Chiffretext Klartext Pseudozufalls- zahlengenerator Pseudozufalls- zahlengenerator unsicherer Kanal Sender Empfänger Kommunikationspartner müssen gleichen Pseudozufallsgenerator und gleichen Initialwert haben. Über Eigenschaften des Zufallsgenerators ist gesichert, dass Angreifer aus Beobachtung der Chiffretexte nicht darauf schließen kann, welches Zeichen als nächstes generiert wird. Aufwand zum Schlüsseltausch gering (nur den relativ kurzen Initialwert). Im Gegensatz zu Blockchiffren Verwendung sehr einfacher Verknüpfungen zum Ver- und Entschlüsseln, bei Binärfolgen Ver- und Entschlüsselung mit XOR, also Addition modulo 2. Für kryptografische Sicherheit ist der Generator ausschlaggebend. RC4 (WEP), A5-Algorithmus (GSM) Dr. Wolf Müller

37 Stromchiffre: Probleme
Verwendung von Stromchiffren nicht einfach in der Praxis oft Probleme! Da bei Stromchiffren Klartexte mit XOR mit dem Schlüsselstrom verknüpft werden (C=M XOR Key), muss sichergestellt werden, dass für jede Nachricht ein neuer Schlüsselstrom Key generiert und verwendet wird. Sonst kann Angreifer auch ohne Kenntnis des Schlüssels Key Klartexte erhalten! C1 = M1 XOR Key und C2= M2 XOR Key Es gilt aber auch: C1 XOR C2 =M1 XOR Key XOR M2 XOR Key = M1 XOR M2 Angreifer kann aus Abhören der Chiffretexte C1 und C2 das XOR der zugehörigen Klartexte gewinnen. Falls er Teile der Klartexte (oder eigene Texte verschlüsseln lässt) kennt, kann er andere erschließen. Known-Plaintext-Angriffe Dr. Wolf Müller

38 Stromchiffre: Vigenère Chiffre
Vigenère Chiffre über lateinischem Alphabet Schlüssel ist Zeichenfolge, Schlüsselwort oder Schlüsselphrase Verschlüsselung: Addition modulo 26 Schlüsselfolge kürzer als Klartext, periodische Wiederholung Kurze Periode ist leicht angreibar. Dr. Wolf Müller

39 Blockchiffren Klartext M
Verarbeitung von Eingabeblöcken fester Länge, wobei jeder Block mit der gleichen Funktion verschlüsselt wird. Typische Blockgröße 64-Bit Klartext M der Länge m wird in r Blöcke der Länge n zerlegt. Letzter Block hat Länge 1≤k≤n, wird mit Füllmuster aufgefüllt (Padding) Damit bei Entschlüsselung das Ende des originalen Klartextes im aufgefüllten Block erkennbar, muss Länge des Füllbereichs oder Länge des Klartextbereichs mit in diesen Block codiert werden. Ver- / Entschlüsselung separat für jeden Block mit gleichem Schlüssel K bzw. K‘, mit f(K)= K‘. M1 M2 M3 Mr Schlüssel K K Schlüssel K Verschlüsselung Verschlüsselung Verschlüsselung C1 C2 Cr Schlüssel K‘ K‘ Schlüssel K‘ Verschlüsselung Verschlüsselung Verschlüsselung M1 M2 Mr Klartext M Dr. Wolf Müller

40 Block Operation Modes: ECB
Electronic Codebook (ECB) Ci=E(Mi,K), Mi=D(Ci,K) Sender: Encryption Empfänger: Decryption E K M1 C1 E K M2 C2 D K C1 M1 D K C2 M2 Time Dr. Wolf Müller

41 Demo #!/bin/bash CHIPHER=$1 BMP="xxx.bmp" ENC="enc-"$CHIPHER".bmp" rm -f $ENC tmp.enc #Längen LL=`ls -l $BMP | awk '{print $5}'` #Length HH=54 #Header BB=$(($LL-$HH)) #Body #Encryption openssl enc -$CHIPHER -e -in $BMP -out tmp.enc -k 0815 #BMP (Header + Encrypted Body without Padding) head -c $HH $BMP > $ENC tail -c $BB tmp.enc >> $ENC echo "$ENC written!" Dr. Wolf Müller

42 Ergebnisse: xxx.bmp des-cbc des-ecb aes-128-ecb aes-256-ecb
Dr. Wolf Müller

43 Block Operation Modes: ECB
Eigenschaften ECB Jeder Block ist unabhängig von anderen Blöcken. Verschlüsselung von gleichem Plaintext wird zu gleichem Ciffretext verschlüsselt. Fehlerfortpflanzung: Wenn ein Fehler in einem Chiffreblock vorkommt, ist nur der entsprechende Plaintextblock betroffen. Synchronisation: Wenn der Empfänger die Blockgrenzen nicht synchronisieren kann, ist eine Entschlüsselung unmöglich. Blöcke können unbemerkt dupliziert, hinzugefügt, vertauscht oder entfernt werden! Dr. Wolf Müller

44 Block Operation Modes: CBC
Cipher Block Chaining (CBC) Ci=E(MiCi-1,K), Mi=D(Ci,K)Ci-1, C0=IV Initialisierungsvektor Sender: Encryption Empfänger: Decryption M1 M2 C1 C2 IV=C0 D D k k E E k k IV C1 C2 M1 M2 Dr. Wolf Müller

45 Block Operation Modes: CBC
Eigenschaften von CBC Initialisierungsvektor IV muss angegeben werden. IV muss nicht geheim sein. Chiffreblock hängt ab von IV und allen Plaintextblöcken vor ihm. Identische Plaintextblöcke werden in verschiedene Chiffetextblöcke verschlüsselt. Reihenfolge der Blöcke ist signifikant. Wird sie verändert, ändert sich die Chiffrierung. Identische Plaintext-Sequenzen werden zu identischen Chiffre-Sequenzen verschlüsselt, es sollten also unterschiedliche Initialisierungsvektoren verwendet werden. Fehlerfortpflanzung: Wenn ein Fehler in einem Chiffreblock auftritt, kann dieser und der nächste Plaintextblock nicht entschlüsselt werden. Synchronisation: Wenn Synchronisation bei diesem Chiffreblock wiedergewonnen wird, können dieser und der nächste Plaintextblock entschlüsselt werden. Dr. Wolf Müller

46 Block Operation Modes: CFB
Cipher Feedback (CFB) Ci=E(Ci-1,K)Mi, Mi=D(Ci-1,K)Ci, C0=IV Sender: Encryption Empfänger: Decryption Ci-1 Ci-1 D k E k Ci Mi Mi Ci Gleiche Eigenschaften, wie CBC. Nachrichten kürzerer als Blockgröße sind möglich. Dr. Wolf Müller

47 Block operation modes: OFB
Output Feedback (OFB) zi=E(zi-1,K), Ci=ziMi, Mi=ziCi, z0=IV Sender: Encryption Empfänger: Decryption zi-1 Mi zi-1 Ci E k E k Ci Mi Nachrichten kürzerer als Blockgröße sind möglich. Dr. Wolf Müller

48 Block operation modes: OFB
OFB Eigenschaften Zustandssequenz zi ist unabhängig vom Plaintext. Entspricht Verschlüsselung mit Pseudozufallszahlengenerator mit nichtlinearem Feedback. Fehlerfortpflanzung: keine. Synchronisation: Wenn Grenzsynchronisation verloren ist, muss das ganze System neu synchronisiert werden. Dr. Wolf Müller

49 Blockchiffre Algorithmen:
DES 3DES AES Dr. Wolf Müller

50 DES: Historie Data Encryption Standard (kurz: DES) DES Geschichte:
Entwickelt durch IBM 1974 publiziert 1977 Anerkennung von DES als Standard durch ‘National Bureau of Standards’, heute NIST 1981 Anerkennung von DES als Standard durch ‘American National Standards Institute’ (ANSI X3.92) Dr. Wolf Müller

51 DES Symmetrischer Algorithmus
Blockchiffre: Message blocks von 64 Bits. Verschlüsselung in Chiffreblocks von 64 Bits. Schlüssel von 64 Bits. Signifikante Schlüssellänge 56 Bits, mit 8 Paritätsbits |K|=256 64 bits Mi 64 bits Mi DES Key K 64(56) bits DES-1 Encryption Decryption 64 bits Ci 64 bits Ci Dr. Wolf Müller

52 DES: Blockchiffre Seine Entstehungsgeschichte gab wegen der Beteiligung der NSA am Design des Algorithmus immer wieder Anlass zu Spekulationen über seine Sicherheit. Verschlüsselungstechniken: Bitpermutationen (Transpositionen) Substitutionen bitweise Addition modulo 2 Schlüssellänge für heutigen Stand der Technik unzureichend, durch AES abgelöst. Jedoch noch in viele kommerzielle Produkte integriert. Dr. Wolf Müller

53 Blockchiffre: Triple DES (3DES)
DES Algorithmus ist kryptografisch stark, Wunsch, Schlüssellänge zu erhöhen. Lösung: Mehrfachverschlüsselung des Klartexts mit verschiedenen Schlüsseln DES-Verschlüsselungen bilden keine Gruppe, Verwendung verschiedener Schlüssel kann auf Vergrößerung des Schlüsselraumes führen. Aber: Zweifach Verschlüsselung liefert nicht Schlüsselraum von Mit Meet-in-the-middle Angriff werden nur 257 Ciffrier- und Dechiffriervorgänge gebraucht, um Schlüssel zu Brechen. Fortschritte durch Triple-DES (3 Schlüssel K1, K2, K3): Verschlüsselung: DES (DES-1(DES (X,K1), K2), K3) Entschlüsselung: DES-1(DES (DES-1 (X,K3), K2), K1) Effektive Schlüssellänge anstelle von 168 Bit nur 108 Bit, Schlüsselraum 2108, länger, aber auf lange Sicht nicht ausreichend! 3fache Verschlüsselung recht ineffizient Dr. Wolf Müller

54 AES-Wettbewerb Januar 1997: Wettbewerb für neue Verschlüsselungstechnik durch Nationales Institut für Standards und Technologie der USA (NIST) ausgerufen AES soll ein Federal Information Processing Standard (FIPS) werden Evaluierung von Sicherheit und Effizienz nicht durch nicht selbst, sondern offen. Anforderungen: symmetrischer Blockchiffre Blockgröße:128 Bit Schlüssellängen: 128, 192 und 256 Bit Resistenz gegen alle Methoden der Kryptoanalyse sehr effizient in Software und Hardware (auch auf 8 Bit-Prozessoren (Chipcards)) einfach zu implementierbar

55 AES: The Winner is? Rijndael
Oktober 2002 : Rijndael Autoren: Joan Daemen, Vincent Rijmen (Belgien) Algorithmus hat sehr gute Performance in Hardware und Software Algorithmus ist sehr einfach Rijndael verschlüsselt mit 8 und 32 Bit Operationen 8 Bit = 1 Byte und Bit = 4 Byte = 1 Wort Blockgröße nicht zwingend 128 Bit (AES), sondern jedes Vielfache von 32 zwischen 128 und 256 Bit möglich. * 1970 * 1965 In puncto Sicherheit gab es auch einige Kandidaten, welche Rijndael gleichwertig waren

56 Rijndael GF(2) |8 Byte b7…b0 als Koeffizienten eines Polynoms darstellbar: b(x) = b7x7 + b6x6+ … + b2x2 + b1x + b0 Beispiel:  x6 + x4 + x + 1 b(x) repräsentiert Elemente des endlichen Körpers GF(2)|8 Alle möglichen Bytes sind genau die Elemente von GF(2)|8 Endlicher Körper <F, Å, Ä >: <F, Å> und <F\{0}, Ä> sind abelsche Gruppen Å und Ä sind distributiv Å ist Addition der Komponenten modulo 2, auf Byte-Ebene entspricht Å der Operation XOR Ä ist Multiplikation von Bytes modulo m(x)= x8 + x4 + x3 + x + 1 (irreduzibles Polynom, 8ten Grades) Multiplikation von Worten: wie mit Bytes, mit irreduziblem Polynom m(x) = x4 +1

57 AES Verschlüsselungs-Runde
Datablock di-1: 128 bits/16 Bytes AES Key: 128/192/256 Bit Transformationen basierend auf Byte-Operationen - Substitution - Permutation - Intermix Rundenschlüssel abgeleitet vom AES Key 10/12/14 mal, abhängig von Schlüsselgröße Data block di: 128 bits/16 bytes Keine Transformationsbox in Anfangsrunde Kein Intermix in letzter Runde Dr. Wolf Müller

58 AES Verschlüsselungs-Runde (2)
Transformationen: Substitution Jedes Byte durch sein multiplikativ-inversen Wert ersetzt. Bytes werden verwendet, um Polynome von einem Grad kleiner 8 darzustellen, wegen der Reduktion auf irreduzible Polynome modulo 8 Bytes werden als Elemente eines endlichen Körpers interpretiert. Addition und Multiplikation sind definiert, unterscheiden sich aber von der von normalen Zahlen. Permutation Positionstausch der Bytes Intermix Matrix Multiplikation der Bytes in dem „internen Zustand“ Dr. Wolf Müller

59 AES Verschlüsselungs-Runde (3)
Schlüsselableitung: Mit Schlüssellänge 128 Bit, jede Runde erfordert 128 Bit. Schlüssel wird in 4 Worte zu je Byte aufgeteilt. wi=wi-1 XOR wi-4 Wenn i mod 4=0, wird Schlüsseltransformation (KT) angewendet. KT beinhaltet Byte- Verschiebungen, Substitutionen und die Addition einer „Runden- konstanten“, Quadrierung im Raum der irreduziblen Polynome in GF(28). KT w0 w1 w2 w3 w4 w5 w6 w7 AES Key =Schlüssel für Runde 0 Schlüssel für Runde 1 Dr. Wolf Müller

60 Rijndael: Kryptoanalyse & Verwendung
resistent gegen lineare und differentielle Kryptoanalyse saturation attack chosen-plaintext + Ausnutzung der byte-orientierten Struktur  nur für rundenreduzierte (7 Runden) Version möglich implementation attacks timing attack power analysis Verwendung: Wireless LAN WPA2 SSH, IPsec Skype, 7-Zip,PGP Implementation attacks: man muss den Verschlüsselungsvorgang des verschlüsselnden Rechners analysieren Timing attack: von Ausführungszeit können Rückschlüsse auf Schlüssel gezogen werden Power analysis: Ressourcenverbrauch während der Verschlüsselung wird analysiert

61 Demo in Crypttool Dr. Wolf Müller


Herunterladen ppt "Sicherer Kanal: von Alice zu Bob"

Ähnliche Präsentationen


Google-Anzeigen