51
Seite 1 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk Kryptografie

Kryptografie - einstein.informatik.uni-oldenburg.deeinstein.informatik.uni-oldenburg.de/lehre/semester/rechnernetze/04ss/sr/skripte/... · Seite 4 Sicherheit in Rechnernetzen Prof

Embed Size (px)

Citation preview

Seite 1 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Seite 2 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Klassen von Unsicherheit in Informatik'richtig' rechnenDaten vor der Zerstörung bewahrenVor unberechtigtem Zugriff schützen

Daten

Systeme

Datenverbergen,

verschließen oder

Verschlüsseln� Kryptologie

Seite 3 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

KryptologieSteganografieKryptografie

Techniken bekannt seit AntikeIn Informatik

Passwortschutz zur AuthentifizierungAuthentifizieren

die Echtheit bezeugenbeglaubigen

AuthentisierenGlaubwürdigRechtsgültig machen

Verschlüsseln von Dateien

Seite 4 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Grundbegriffeverschlüsseln, chiffrieren (encipher)

lesbare Daten in unlesbare transformieren

Chiffre (cipher) Verfahren zum Ver- Endschlüsseln

Schlüssels (key) Parameter bei Verschlüsselung

Klartext (plaintext, cleartext)Lesbare Daten

Chiffretext (ciphertext, cryptotext)verschlüsselte Daten

Seite 5 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

GrundbegriffeVerschlüsselung, Chiffrierung

Umwandlung: Klartext � Chiffretext

verschlüsseln, chiffrieren (encipher)

Entschlüsselung, DechiffrierungUmwandlung: Chiffretext � Klartext

Entschlüsseln, dechiffrieren (decipher)

Brechung einer ChiffreEntziffern einer Chiffre

Kryptoanalyst oder Angreifer Eine Person, die eine Chiffre zu brechen versucht

Seite 6 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Grundbegriffepassiver Angriff

Lesen übertragener oder gespeicherter Daten

aktiver AngriffErsetzung einer Nachricht durch andere

Beide Formen des Kryptoangriffs durch kryptographisches Verfahren unterbindenChiffretext entschlüsseln

moderne Rechenanlagen

nur Chiffrierverfahren verwenden, die einer Analyse längere Zeit standhalten.

Seite 7 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Kryptographisches System (Kryptosystem) H, C und K höchstens abzählbar sind.

1.Klartextraum H2.Chiffreraum C3.Schlüsselraum K4.Chiffriertransformationen5.Dechiffriertransformationen

(De-) Chiffriertransformation Ek (Dk) definiert mitSchlüssel k (De-) Chiffrieralgorithmus E (D)

E k : H � C mit k �KDk :C � H mit k �K

Seite 8 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Eigenschaften kryptographischer SystemeBeurteilung eines Kryptosystems

wichtigste Forderung: Sicherheit (security)

differenziert in Unterbegriffe Geheimhaltung (secrecy)Authentizität (authentication), Integrität (integrity) und Anerkennung (non repudiation).

Sicherheit durch geheimen Schlüssel erreichbarChiffre nur brechbar, wenn im Besitz des Schlüssels Anzahl der Schlüssel sehr groß (mögl. unbeschränkt)

Seite 9 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Eigenschaften kryptographischer Systeme

brauchbare Chiffrierverfahrenohne Kenntnis des Schlüssels dechiffrierbar

rechentechnisch zu viel Zeit

Effizienz des Ver-/Entschlüsselnseffiziente Algorithmen

für jeden Schlüssel aus gegebenen Schlüsselraum

mit möglichst geringem Aufwand

kryptographisches System leicht zu benutzenBenutzer nicht mit Komplexität des Verfahrens belasten

Seite 10 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Ausschreibung des NBS 1973/74

Hohe Sicherheit

Vollständige Spezifikation, leichte Verständlichkeit

Sicherheit darf nicht auf Algorithmus beruhen

Generelle Verfügbarkeit

In verschiedenen Bereichen anwendbar

Wirtschaftlichkeit und Schnelligkeit

Validierbarkeit

Exportierbarkeit

Seite 11 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Einsatzziele und EinsatzgebieteGeheimhaltung

Angreifer kann Daten nicht entschlüsselnAuthentizität

nicht unentdeckt falsche Identität vortäuschbarMasquerade

Datenintegritätnicht unentdeckt falschen Chiffretext einsetzennumerische Daten

Anerkennung einer NachrichtAbsender kann tatsächlich gesendete Nachricht nicht als Fälschung ausgebenelektronische Unterschrift (digital signature)

Seite 12 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

KryptografieEinsatzziele und Einsatzgebiete

Offene Umgebung Teilnehmer

nur übertragene Daten des Kommunikationspartners keine Sicherheit über dessen Identität Vertraulichkeit und Unverfälschtheit der Datenübermittelte Angaben

Auftragserteilunggesicherte Speicherung von Daten Geheimhaltung und Integrität der Daten garantierenZugriffssicherung

Zugriff auf Informationssysteme schützenZugangssicherung für Betreten gesicherter BereicheAuthentisierung

Geldkarten Anderen Zahlungssysteme

Seite 13 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografiemehrere kryptografische Ziele gleichzeitig erreichen

bilaterale Kommunikation, zugleich Geheimhaltung, Authentizität Datenintegrität

sicheres Verschlüsselungsverfahren gegebennur jeweiliger Empfänger kann Daten dechiffrieren Garantiert auch

Authentizität Datenintegrität

da nur der Absender Daten sinnvolle verschlüsseln nur Empfänger kann Daten entschlüsselnnicht sinnvoll absichtlich veränderbar

Redundanz in Daten nötigNummerierung der Nachrichten Angabe eines Zeitstempels verhindert auch Wiederholung gleicher Daten (replay)

Seite 14 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Daten nur authentisiert verteilenGeheimhaltung und Datenauthentizität trennen

ke und kd nicht auseinander berechenbarmit ke Daten verschlüsselnmit "öffentlichen" Schlüsse kd dechriffrierbar

verschlüsselte Daten nicht sinnvoll absichtlich verfälschbarwenn nur Absender Daten sinnvoll verschlüsseln kann

Erreichte ZieleAuthentizität elektronische Unterschrift DatenintegritätGeheimhaltung vermieden

Seite 15 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Angriffstechniken

drei Situationen für Kryptoanalytiker

1. Chiffretext [Eke(H)] (Chiffretext-Angriff)Klartext nur aus Chiffretext bestimmbar

2. Klartexte eingeben [H,Eke(H)]Veränderung durch Kryptosystem beobachtbar - z.B. bei Datenbank

3. zusammengehörige Klartext- und Chiffretextteile kennt Chiffrierverfahren [H,Eke(H), E()] Klartextangriff

Seite 16 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

AngriffstechnikenKryptokomplexität

für Entschlüsselung benötigte Rechenzeit benötigter Speicherbedarf

Kryptoanalyse weist (Un-)Sicherheit eines Chiffrierverfahrens nachzwei Stufen der Sicherheit eines Chiffrierverfahrens

Nach Shannonberechnungssicheres Chiffrierverfahren

Berechnung des Klartextes nicht mit real vorhandenen Zeit- bzw. Rechenkapazität durchgeführt werden kann.

uneingeschränkte Sicherheit e. Chiffrierverfahrens Aus vorliegender Information lässt sich Klartext nicht eindeutig bestimmen

Seite 17 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Uneingeschränkt sichere kryptografische SystemeVernam-ChiffrierverfahrensSchlüssel länger als erreichen Nachricht(bitweise) Xor-Operation mit Daten verknüpft

k i�d i � ci . ci�k i=k i�d i�k i=d i .

Seite 18 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Absolute Sicherheitunbekannter Schlüsselstrom Zu jedem Chiffretext passt jeder Klartext gleicher Länge� Klartext nicht eindeutig ermittelbarLänge feststellbar

Nur Nachrichten (mit Redundanz) gleicher Länge Jedes mal neuen Schlüsselstrom verwenden.

M �K =C 1

N �K =C 2

C 1�C 2=M �K �N �K =M �NEin Klartext bekannt (z.B. M ) M �N �M =N .N �C 2=N �N �K =K

Seite 19 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Absolute Sicherheitsehr lange Schlüsselströme unpraktischAlternativen von Vernam (ca. 1917)

Kombination von Schlüsselströmen verschiedener LängeWerte ebenfalls per Xor verknüpft

Seite 20 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Absolute SicherheitSchlüsselströme durch "Pseudo-Zufallszahlen"-Generatoren erzeugen.aus Werten des Schlüsselstroms nicht Parameter des Zufallszahlengenerators ableitbarin standardisierten VerschlüsselungsprotokollenZufallszahlen durch kryptographische Verfahren � Output-Feed-Back mit dem DES-Verfahren.

Seite 21 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Grundlegende Technikenzwei Arten des ChiffrierensTranspositionschiffrierung

Zeichen eines Klartexts permutieren (vertauschen)

Substitutionschiffrierungeinzelne Zeichen durch andere Zeichen ersetzen

ein oder mehrerer Alphabetemono- bzw. polyalphabetische Substitutionschiffren

Alphabete mit gleichen oder verschiedenen Zeichen

Einfache Verfahren nicht sicherKombination und Variationen

Seite 22 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Grundlegende TechnikenBeispiel für Transpositionschiffre

Chiffrieren 'TRANSPOSITION' mit "Jägerzauns"

T S I N R N P S T O A O I

Zeilen der Matrix von links nach rechts lesen

'TSINRNPSTOAOI'

Dechiffrierung

durch Einfügen der Zeilen in Jägerzaun

Auslesen im Zickzack

Seite 23 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Grundlegende TechnikenBeispiel für Substitutionschiffre

Caesar Chiffre

Verschiebe jedes Zeichen im Alphabetes um k mod 26

k=3

SUBSTITUTION --> VXEVWLWXWLRQ

Dechiffrierung

Verschieben um -k mod 26 (26-k mod 26), 23 mod 26

AnalyseErraten des Schlüssels

es gibt nur 25 nicht triviale Schlüssel

Seite 24 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

TranspositionschiffreKlartext: DIEEINFACHETRANSPOSITIONVarianten

Auch Zeilen vertauschenAuch Diagonal auslesenPasswortComputer14358726

Analyse durch HäufigkeitsanalyseBekannte Zeichenfolgen

DIE, CH, X=Füllzeichen

Schlüssel 4 2 5 1 3

Matrix E I I D A

C F H N A

A T N E R

S P I S O

N I T O X

Seite 25 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Substitutionschiffren mit einfacher Substitution

Monoalphabetische Substitution mit Schlüsselwort

Schlüsselwort: SUBSTITUTION

Klartext: VORLESUNG

H: ABCDEFGHIJKLMNOPQRSTUVWXYZ

C: SUBTIONACDEFGHJKLMPQRVWXYZ

Chiffretext: VJMFIPRHN

Seite 26 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Substitutionschiffren mit einfacher Substitution

Monoalphabetische Substitution mit Schlüsselwortund Umkehrung der restlichen Zeiten

Schlüsselwort: SUBSTITUTION

Klartext: VORLESUNG

H: ABCDEFGHIJKLMNOPQRSTUVWXYZ

C: SUBTIONACDEFGZYXWVRQPMLKJH

Chiffretext: MYVFIRPZN

Seite 27 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Substitutionschiffren mit einfacher Substitution

Monoalphabetische Substitution mit Schlüsselwortund Periode, z.B. 2

Schlüsselwort: SUBSTITUTION

Klartext: VORLESUNG

H: ABCDEFGHIJKLMNOPQRSTUVWXYZ

C: SUBTIONACDEFGHRJVKWLXMYPZQ

Chiffretext: MYVFIRPZN

Seite 28 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Substitutionschiffren mit einfacher SubstitutionHäufigkeitsanalyse

relative Häufigkeit der Buchstaben einer natürlichen Sprachen ermitteln

mit Häufigkeiten der Buchstaben im Chiffretext vergleichen

Buchstabenkombinationen(z.B. CH, EIN im deutschen, THE im englischen) finden.

weiteres Erraten und Ausprobieren Chiffren relativ einfach zu brechen

Folgende Varianten verschleiern Häufigkeitsverteilung

Seite 29 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

HäufigkeitsanalyseBeispiel: E im Deutschen häufigster Buchstabe.

CrypTool"Dieses ist ein kurzer Text, der entschlüsselt werden soll."

Schlüssel: H"Lqmama qab mqv sczhmz Bmfb, lmz mvbakptüaamtb emzlmv awtt."

Seite 30 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Häufigkeitsanalyse der deutschen Sprache

Seite 31 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Häufigkeitsanalyse der Caesar-Chiffre

Seite 32 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Korrelation der beiden Verteilungen

Seite 33 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Polyalphabetische Substitutionschiffren

Häufigkeitsverteilung einzelner Buchstaben verbergen

Buchstaben mi des Klartextes H ersetzen durchBuchstaben cij, j=0..n-1verschiedene Alphabeten C0, C1,...,Cn-1

Cj(mi): i-ter Buchstabe mi mit Cj kodiert

Seite 34 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Polyalphabetische Substitutionschiffren

Periodische polyalphabetische Substitutionschiffre

Alphabete in fester Reihenfolge verwenden

nach letztem Alphabet wieder erstes Alphabet benutzen

j = i mod n

Klartext m = m0 m1 m2 … mi mi+1 … chiffriert durchE(m)=C0(m0) C1(m1) C2(m2)…Ci(mi mod n) Ci+1(mi+1 mod m)

keine einfache Häufigkeitsanalyse mehr möglich

Seite 35 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Polyalphabetische Substitutionschiffrenkompliziertere Verfahren anwenden

Kenntnis der Anzahl der verwendeten Alphabeteverschiedene Techniken entwickelt 1863 von Preußischem Offizier Friedrich W. Kasiski Koinzidenz-MethodeAutokorrelationskoeffizient: KSind alle Zeichen unabhängig: K=0Zeichen für eine Sprachen: K1>0, typisch für einzelne SpracheZeichen für zwei Alphabete: K1>K2>0,Aus K lässt sich Periode abschätzen.Bei bekannter Periode P der Alphabete Entschlüsselung wie bei einfachen Substitutionschiffren jeweils mit n-ten Chiffretextzeichen Häufigkeitsanalyse

Seite 36 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Homophone SubstitutionHäufigkeitsanalyse verhindernhäufig vorkommende Buchstaben

'E', 'N' usw.durch mehr als ein Zeichen kodieren.

Beispielzweistellige Zahlen als Chiffre-ZeichenE � {1,44,53,85,99}N � {2,14,33,45}...Y � {7}

Auch Homophone Substitution brechbarRedundanz!

Seite 37 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Dummy-NachrichtenChiffre gebrochen, wenn sinnvoller Klartext gefunden � Semantik der NachrichtKlartext und 'Dummy-Nachricht'

Klartextalphabet {a1, a2, …, an}Dummy-Nachricht {b1, b2, …, bn}

b1

... bn

a

1

..

.

..

Permutati

on

der

Zahlen

von 1 bis

Seite 38 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Dummy-NachrichtenNachricht 'TRUEFFEL', Dummy-Nachricht 'SAALTUER'Angreifer kann sich nicht sicher sein, den 'richtigen' Text entschlüsselt zu haben.

A E F L R S T U

A 08 02 05 01 06 07 03 04

E 12 16 9 13 15 11 10 14

F 30 25 32 31 29 26 28 27

L 57 63 60 64 59 58 62 61

R 17 24 20 18 21 23 19 22

S 49 55 56 50 52 51 53 54

T 33 40 36 35 34 37 38 30

U 45 41 43 48 44 46 47 42

Klartext: T R U E F F E L

Dummy: S A A L T U E R

Chiffre: 53 06 04 63 36 43 16 18

Seite 39 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Jeffersonzylinder

Seite 40 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Wheatstonescheibe

Seite 41 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Enigma

Seite 42 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Data Encryption Standard (DES)Ausschreibung NBS 1973/74: Kriterien1. Hohe Sicherheit2. Vollständige Spezifikation, leichte Verständlichkeit3. Die Sicherheit darf nicht auf dem Algorithmus beruhen4. Generelle Verfügbarkeit5. In verschiedenen Bereichen anwendbar6. Wirtschaftlichkeit und Schnelligkeit7. Validierbarkeit8. Exportierbarkeit

Verfahren von IBM (Lucifer) gewählt

Seite 43 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Data Encryption Standard (DES)

Seite 44 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Data Encryption Standard (DES)Register L Register R

P = IP(B) (Initiale Permutation)

L0

= P|links

L1 = R

0

L2 = R

1

L3 = R

2

L4 = R

3

Ro = P|rechts

R1 = L

0 ⊗ f(R

0,k

1)

R2 = L

1 ⊗ f(R

1,k

2)

R3 = L

2 ⊗ f(R

2,k

3)

R4 = L

3 ⊗ f(R

3,k

4)

C = IP-1(R4 L

4)

P' = IP(C) = R4 L

4

L'0 = R

4

L'1 = R'

0 = L

4 = R

3

L'2 = R'

1 = L

3 = R

2

L'3 = R'

2 = L

2 = R

1

L'4 = R'

3 = L

1 = R

0

R'0 = L

4

R'1 = L'

0 ⊗ f(R'

0,k

4) = R

4 ⊗ f(L

4,k

4) = L

3

R'2 = L'

1 ⊗ f(R'

1,k

3) = R

3 ⊗ f(L

3,k

3) = L

2

R'3 = L'

2 ⊗ f(R'

2,k

2) = R

2 ⊗ f(L

2,k

2) = L

1

R'4 = L'

3 ⊗ f(R'

3,k

1) = R

1 ⊗ f(L

1,k

1) = L

0

B = IP-1(L0 R

0)

Seite 45 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Sicherheit des Data Encryption Standard (DES)Verknüpfung jedes einzelnen Bits des Klartextes mit allen Bits des Schlüssels

mit allen anderen Bits des Klartextes

Länge des Schlüssels auf 56 BitsUnsicherheit: 256 � 72 Billiarden Schlüssel

Abschätzungen (Diffie, Hellman, 1980)1 Millionen LSI-Chips

50 Millionen US $

zwei Tage durchschnittlicher Suchzeit

Schlüssellänge auf 112 Bits verdoppeln

differentielle und lineare Kryptoanalyse

Seite 46 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

IDEA (International Data Encryption Algorithm)

Seite 47 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Varianten der BlockchiffrenBlockchiffre (block cipher)

Datenblöcke fester LängeAnfügen von "Leerdaten" an zu kurze DatensätzeFragmentieren von zu langen DatenblöckenStandards

Stromchiffre (stream cipher)kleinste darstellbare Dateneinheit

ByteZeichenWort

sukzessiven Verschlüsselung der einzelnen Daten, Abhängigkeit im Datenstromkeine Leerdaten

Standards ISO 1987 in IS 8372: Information Processing, Modes of Operation for a 64-bit Block Cipher Algorithm

Seite 48 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Electronic Code Book ECB

Seite 49 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Cipher Block Chaining CBC

Seite 50 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Cipher Feedback CFB

Seite 51 Sicherheit in Rechnernetzen Prof. Dr. W. Kowalk

Kryptografie

Output Feedback OFB