Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Gotthilf Geisert Geändert vor über 9 Jahren
1
IT-Sicherheit Kapitel 2 - Symmetrische Kryptographie
Prof. Dr. Michael Braun Wintersemester 2010/2011
2
Einführung
3
Historie Die klassische Kryptographie diente der Geheimhaltung von Nachrichten und wurde hauptsächlich von Militärs, Geheimdiensten und Diplomaten genutzt. Die moderne Kryptographie (etwa seit 1975) beschäftigt sich mit erheblich weitergehenden Kommunikations- und Sicherheitsproblemen.
4
Beispiele aus der Geschichte
5
Ziel Ziel der klassischen Kryptographie war es zunächst die Vertraulichkeit zu gewährleisten.
6
Klassische Verfahren Skytala Caesar Chiffre Polybios Vigenere 1 2 3 4
5 A B C D E F G H I,J K L M N O P Q R S T U V W X Y Z
7
Rotor-Chiffriermaschinen
Edward Hugh Hebern ( ) erfand 1917 die erste Rotor-Chiffriermaschine, die Electric Code Machine. Zeichnung aus der Original-Patentschrift
8
Weitere Maschinen Die britische TypeX, eingesetzt im 2. Weltkrieg
Die amerikanische SIGABA eingesetzt im 2. Weltkrieg Die deutsche ENIGMA eingesetzt im 2. Weltkrieg Die sowjetische Fialka, auch in der DDR am 1968 eingesetzt Die schweizerische NEMA, eingesetzt ab 1946
9
Symmetrische Verschlüsselung
10
Das Prinzip nach Kerckhoff
Die Sicherheit einer Verschlüsselung soll nicht auf der Geheimhaltung des Verschlüsselungsalgorithmus basieren, sondern auf der Geheimhaltung eines Eingabeparameters, dem sogenannten Schlüssel. „No Security by Obscurity“
11
Kommunikationsmodell
vertraulicher + authentischer Kanal k k offener Kanal Nachricht enc dec Nachricht
12
Blockchiffren
13
Blockchiffren Der Klartext wird in Blöcke kurzer Länge aufgeteilt und jeder Block wird mittels einer komplizierten Funktion mit einem Schlüssel fester Länge verknüpft. Schlüssel enc Klartextblock Geheimtextblock
14
SPN Klartextblock Ein Substitutions- Permutations-Netzwerk (= SPN) ist eine alternierende Kombination von Substitution und Permutation über mehrere Runden. k1 k2 kr-1 kr S1 S2 S3 S4 Permutation S1 S2 S3 S4 Permutation Idee geht auf Claude Shannon aus dem Jahr 1949 zurück. . S1 S2 S3 S4 Permutation Geheimtextblock
15
Diffusion und Konfusion
Wichtige Eigenschaften für eine sichere Chiffre sind: Diffusion: Verteilen der im Klartext enthaltenen Information über den Geheimtext (durch Permutation) Konfusion: Verschleierung des Zusammenhangs zwischen Klartext- und Geheimtextzeichen (durch Substitution)
16
Feistel Chiffre Horst Feistel entwickelte das Prinzip der Feistel-Chiffre in den 1970ern bei IBM im Projekt „Luzifer“ Li-1 Ri-1 F ist die Rundenfunktion, bestehend aus Permutationen und Substitutionen F ki m Runden Li Ri
17
Data Encryption Standard
DES Schlüssel (56 Bit) Klartextblock (64 Bit) Geheimtextblock
18
Struktur des DES Li-1 Ri-1 expand ki S1 S2 S7 S8 perm Li Ri 32 Bit
19
Sicherheit des DES Die große Schwäche des DES ist die kurze Schlüssellänge von 56 Bit. Eine vollständige Schlüsselsuche ist mittels spezieller Hardware zeitnah möglich (z.B. Deep Crack, 22 Stunden im Jahr 1999). Der DES ist für den praktischen Einsatz nicht mehr empfehlenswert. Mittels 3DES (Triple-DES) kann man Sicherheit auf 112 Bit erhöhen, hat aber hohe Performanzverluste, da man den DES dreimal ausführen muss bei jedem Block.
20
Advanced Encryption Standard
Ziele: sicherer und effizienter als Triple-DES AES Schlüssel (128, 192 oder 256 Bit) Klartextblock (128 Bit) Geheimtextblock
21
* in der letzten Runde kein Mix Column
Struktur des AES Klartext Key Addition Substitute Bytes Shift Rows Mix Column* Key Addition + S + nächste Runde Geheimtext * in der letzten Runde kein Mix Column
22
Weitere Blockchiffren
MARS unbalancierte Feistel-Chiffre mit 32 Runden sehr langsam in Hardware; für billige Chipkarten nicht geeignet; bedingt schnell in Software (abhängig von CPU) RC6 Feistel-Chiffre mit 20 Runden; datenabhängige Rotation in den Runden etwas langsam in Hardware; für billige Chipkarten nicht geeignet; bedingt schnell in Software (abhängig von CPU) Twofish Feistel-Chiffre mit 16 Runden; schlüsselabhängige S-Boxen schnell in Hardware; schnell in Software Serpent iterierte Chiffre mit 32 Runden schnell in Hardware; langsam in Software; besonders konservativ im Design
23
Verwendung von Blockchiffren
Blockchiffren können nur Nachrichten verarbeiten, deren Länge der Blocklänge entspricht. Daher werden Nachrichten in einzelne Blöcke aufgeteilt und zu Geheimtextblöcke verarbeitet: Electronic Codebook (ECB) Cipher Block Chaining (CBC) Counter (CTR) Cipher Feedback (CFB) Output Feedback (OFB)
24
Electronic Codebook (ECB)
m1 m2 m3 mr . . . enc(k,-) enc(k,-) enc(k,-) enc(k,-) c1 c2 c3 cr
25
Cipher Block Chaining (CBC)
m1 m2 m3 mr IV . . . enc(k,-) enc(k,-) enc(k,-) enc(k,-) c1 c2 c3 cr
26
Counter (CTR) . . . IV+1 IV+2 IV+3 IV+r m1 m2 m3 mr c1 c2 c3 cr
enc(k,-) enc(k,-) enc(k,-) enc(k,-) . . . m1 m2 m3 mr c1 c2 c3 cr
27
Output Feedback (OFB) . . . IV m1 m2 m3 mr c1 c2 c3 cr enc(k,-)
28
Cipher Feedback (CFB) . . . IV m1 m2 mr c1 c2 cr enc(k,-) enc(k,-)
29
Stromchiffren
30
One-Time-Pad Schlüsselstrom Klartextstrom Geheimtextstrom
Bei dem One-Time-Pad wird der Klartext mit einem genauso langen Schlüssel XOR-verknüpft. Das One-Time-Pad ist die einzige beweisbar sichere Chiffre.
31
Schlüsselstrom-erzeugung
Stromchiffren Nachbildung des One-Time-Pads: Aus einem kurzen Schlüssel wird ein pseudozufälliger Schlüssel gewählt. Schlüsselstrom-erzeugung Schlüssel pseudozufälliger Schlüsselstrom Klartextstrom Geheimtextstrom
32
Shrinking-Generator y/n Ausgabe Takt A
33
Summations-Generator
Ausgabe Takt A Takt B
34
RC4 Schlüssel- byte RC4 weist statistische Schwächen auf.
35
A5/1 Majoritätsfunktion Takt A Takt B Takt C
36
eSTREAM Im Rahmen des Network of Excellence ECRYPT der EU gab es das Projekt eSTREAM ( ), wo in einer öffentlichen Ausschreibung starke Stromchiffren gesucht wurden. Es wurde dabei nach zwei verschiedenen Profilen gesucht: Software- und Hardwareanwendungen.
37
eSTREAM (Forts.) Softwareanwendung: HC-128 Rabbit Salsa20/12 SOSEMANUK
Hardwareanwendung: F-FCSR-H v2 Grain v1 Mickey v2 Trivium
38
Schlüsselstromerzeugung
Output Feedback (OFB) Schlüsselstromerzeugung IV enc(k,-) enc(k,-) enc(k,-) enc(k,-) m1 m2 m3 . . . mr c1 c2 c3 cr
39
Schlüsselstromerzeugung
Counter (CTR) Schlüsselstromerzeugung IV+1 IV+2 IV+3 IV+r enc(k,-) enc(k,-) enc(k,-) enc(k,-) . . . m1 m2 m3 mr c1 c2 c3 cr
40
Hashfunktionen
41
Hashfunktion Eine Hashfunktion ist eine effizient berechenbare Abbildung h: {0, 1}* -> {0, 1}n. Ziel ist die Konstruktion von kollisionsfreien Hashfunktionen. Anwendung: Integritätsschutz, Message Authentication Codes, Digitale Signatur.
42
Konstruktion einer Hashfunktion
mittels iterierter Kompressionsfunktion m1 f IV m2 m3 mr ... hash value
43
Beispiele für Hashfunktionen
MD4: 128 Bit; Kollision in 220 MD5: 128 Bit; Kollision in 230, Wang, 2005 SHA0: 160 Bit, Kollision in 239, Wang, 2005 SHA1: 160 Bit, Kollision in 263, Wang, 2005 SHA2: 224, 256, 384, 512 Bit, noch sicher RIPEMD128: 128 Bit, Kollision in 264 RIPEMD160: 160 Bit, noch sicher Derzeit Suche nach SHA3 bis Ende 2012
44
Message Authentication Codes
45
Message Authentication Code
Ein Message Authentication Code liefert einen digitalen Fingerabdruck in Abhängigkeit eines Schlüssels zum Schutze der Nachrichtenauthentizität. A B t := mac(k, m) m, t t‘ := mac(k, m) IF t = t‘ ACCEPT ELSE REJECT secret k
46
Beispiele für MACs HMAC: Hashfunktionen basiert
XOR-MAC: Blockchiffren basiert CBC-MAC: Blockchiffren basiert
47
HMAC ipad, opad: konstante Werte k: geheimer Schlüssel
hmac(k, m) := h(k XOR opad || h(k XOR ipad || m))
48
XOR-MAC x0 := 0 || IV xi := 1 || <i-1> || mi, für alle 1 ≤ i ≤ r
<i-1>: binäre Darstellung der Zahl i-1 k: geheimer Schlüssel mac(k, m) := enc(k, x0) XOR ... XOR enc(k, xr)
49
CBC-MAC m1 m2 m3 mr IV . . . enc(k,-) enc(k,-) enc(k,-) enc(k,-) mac
50
Sichere Kanäle Vertrauliche und authentische Kanäle nennt man sichere Kanäle: Zuerst Verschlüsseln des Klartextes und danach MAC über den Geheimtext (z.B. bei IPsec). Zuerst MAC über den Klartext und danach Verschlüsseln des Klartextes (z.B. bei SSH). Zuerst MAC über den Klartext und danach Verschlüsseln des Klartextes und des MACs (z.B. bei SSL). Den einzig beweisbar sicheren Kanal bietet die erste Variante (Krawczyk, 2001).
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.