Verschlüsselung Flashcards

1
Q

Substitutionschiffre: Vorgehensweise

A
  • Teile den Klartext in handliche Einheiten
  • Ersetze jeden Buchstaben gemäß einer (bijektiven) Tabelle durch einen anderen Buchstaben oder ein Symbol. Jedes Klartextsysmbol hat genau ein Chiffretextsymbol und umgekehrt. Die Position des Zeichens bleibt unverändert.

Algo: Ersetzungsverfahren
Schlüssel: Tabelle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Substitutionschiffre: Probleme

A

Ausnutzung von Klartextstatistiken (Buchstabenhäufigkeit, Häufigkeit von Buchstabenkombinationen, Semantik)

-> Bei längeren Chiffretexten automatische und garantiert richtige Entschlüsselung möglich

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Transpositionschiffre: Vorgehensweise

A
  • Teile den Klartext in handliche Einheiten (z.B. Buchstaben)
  • Ändere Reihenfolge der Buchstaben (z.B. Skytale oder Tabelle). Die Zeichen bleiben unverändert, es ändert sich nur die Position.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Transpositionschiffre: Probleme

A

Transpositionschiffren sind leicht zu knacken (wenige mögliche Schlüssel). Für sich genommen unsicher.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Vernam-Chiffre: Vorgehensweise

A
  • m XOR k = c (bitweise)
    c XOR k = m (bitweise)
  • Verschlüsselung funktioniert genauso wie Entschlüsselung -> Involutionschiffre
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Vernam-Chiffre: Probleme

A

Die Vernam-Chiffre bietet perfekte Sicherheit, sie kann nicht gebrochen werden, wenn

  • der Schlüssel immer mindestens so lang ist wie die Nachricht (bzw. wie alle zu erwartenden Nachrichten)
  • Jedes Schlüsselbit darf nur einmal verwendet werden

-> Funktioniert in der Praxis nicht

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Vernamchiffre - Angriffe

A

1)
c1=0101 und c2=1100 sind unter gleichem Schlüssel entstanden. m1 ist 1011. Wie lautet m2?

m1 xor k = c1
k = c1 xor m1

c2 xor k = m2

2)
c1 und c2 sind unter gleichem Schlüssel entstanden. Über m ist nichts bekannt. Was kann der Angreifer über m1 und m2 lernen?

c1 xor c2 = m1 xor k xor m2 xor k
c1 xor c2 = m1 xor m2

Die Positionen, an denen sich die Chiffretexte unterscheiden sind die gleichen, an denen sich die Klartexte unterscheiden. Unter Kenntnis der verwendeten Sprache lassen sich beide Klartexte Stück für Stück rekonstruieren.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Idee von Blockchiffren

A

Bei Substitutionschiffren über großen Blöcken wird die Häufigkeitsanalyse hinfällig. Sicher, allerdings werden die Tabellen exorbitant groß. Daher wird eine Funktion anstatt einer Tabelle benötigt, die sich effizient berechnen lässt. -> Permutation

Blockchiffre Ek ist eine Permutation über {0,1}^b

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

DES: Vorgehensweise grob

A

geg: 56Bit Masterschlüssel
Blocklänge 64 Bit
Feistel-Konstruktion

  • Initial Permutation
  • 16 Runden f mit XOR R/L
  • Initial Permutation^-1
  • Rundenschlüssel besteht aus 48 Bits des Masterschlüssels (56Bit) -> key schedule
  • Entschlüsselung: Prozess rückwärts
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

DES: Vorgehensweise f

A
  • Expander erweitert 32 zu 48 Bit-Blöcken durch Wdh
  • Vernam: XOR mit ki
  • Substitution: S-Boxen - Lookup von 6 auf 4 Bit
    Transposition: Bitshuffle
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

3DES: Vorgehensweise

A
  • mehrfache Ausführung von DES
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

3DES: Probleme

A
  • Durch MITM-Angriff Sicherheitsniveau 112Bit ungleich Schlüssellänge 168 (3*56)Bit
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

MITM-Angriff

A

Das Sicherheitsniveau von DES und 3DES ist ungleich der Schlüssellänge:

Für 2DES: 2⁵⁷ anstatt 2¹¹²
Für 3DES: 2¹¹² anstatt 2¹⁶⁸

  • Probiere alle k1 aus und speichere Zwischenergebnis in Tabelle (entspricht Bruteforce auf 1. Hälfte der Chiffre)
  • Für k2: Teste, ob DES-¹ in der Tabelle ist. Falls ja: Kandidatenpaar durch Probeentschlüsselung testen. Wenn das klappt, ist der Schlüssel gefunden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

MITM - Aufwand 2DES

A

Aufwand: 2^56+2^56+2^48=2^57
(2^56 DES-Berechnungen und 2^56 Probeentschlüsselungen plus Zusatztests: 2^56 * 1/2^8)
Speicherbedarf: Tabelle mit 2^56 Einträgen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

MITM - Aufwand 3DES

A

Aufwand: 2^56 + 2^112 + 2^104 = 2^112
(2^56 DES-Berechnungen und 2^112 Probeentschlüsselungen plus Zusatztests: 2^112 * 1/2^8)
Speicherbedarf: Tabelle mit 2^56 Einträgen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

AES: Vorgehensweise

A

Idee: Verwendung von vielen kleinen Permutationen hintereinander. -> jede für sich schwach, aber zusammen: hart

  • 16 Byte = 128 Bit Blocklänge
  • 128,192,256 Bit Schlüssellänge
  • 10,12,14 Runden

1) Key Addition (-> entspr. Vernamchiffre, Schlüsselabhängigkeit herstellen)
2) Substitution (-> entspr. Substitutionschiffre, Linearität zerstören)
3) Shift Row (entspr. Transpositionschiffre, Durchmischen der Byteblöcke)
4 Mix Column (entspr. Transpositionschiffre, gegenseitiges Beeinflussen der Bits)

In der letzten Runde: kein Mix-Column, dafür zusätzliche KeyAddition mit k11

17
Q

Ideale Blockchiffre

A

Eine ideale Blockchiffre verhält sich bei Schlüssellänge 2^l wie 2^l zufällig bestimmte Permutationen.

18
Q

Sichere Blockchiffre: Definition

A

Eine Blockchiffre heißt sicher, wenn man sie nicht von einer idealen Blockchiffre unterscheiden kann, ohne den Schlüssel zu kennen. Ein Angriff gegen eine Blockchiffre liegt vor, wenn dieser nicht auch gegen eine ideale Blockchiffre eingesetzt werden kann. -> Bruteforce ist kein Bruch der Chiffre

19
Q

Sichere Blockchiffre: Voraussetzungen

A

Eine Blockchiffre ist nicht sicher, wenn

  • der Angreifer den Schlüssel herausfinden kann
  • der Angreifer einen verschlüsselten Text von Zufallstext unterscheiden kann
  • wenn der Angreifer den Klartext (oder nur ein Bit davon) heruasfinden kann
  • ähnliche Schlüssel zu ähnlichen Verschlüsselungen führen
20
Q

Blockchiffre: Wie groß muss der Schlüssel sein?

A
40Bit: katastrophal schwach
80Bit: niedriges Sicherheitsniveau
128Bit: normales Sicherheitsniveau
192Bit: hohes Sicherheitsniveau
256Bit: sehr hohes Sicherheitsniveau (inkl. QuantenC.)
21
Q

Blockchiffre - Modes of Operation

A

Electronik Codebook Mode - ECB
Cipher Block Chaining - CBC
Output Feedback Mode - OFB
Counter Mode - CTR

22
Q

Modes of Operation - Wozu?

A

Verschlüsselung von Nachrichten, die länger als b Bit sind mit einer b-Bit-Blockchiffre, OHNE dass

  • gleiche Klartextblöcke innerhalb der Nachricht zu gleichen Chiffretextblöcken führen
  • gleiche Nachrichten zu gleichen Chiffretexten führen
23
Q

ECB-Mode

A

Problem: Gleicher Chiffretext bedeutet gleicher Klartext (siehe Pinguin, auch zwischen mehreren Nachrichten)
Gleicher Effekt wie bei Substitutionschiffre

-> Benutze niemals ECB-Mode

24
Q

CBC-Mode

A

1) Initialisierungsvektor: Zusammen mit der Nachricht wird ein öffentlicher, einmaliger Bitvektor (IV) verschlüsselt, der jede Verschlüsselung anders aussehen lässt
2) Verkettung: Jeder Klartext wird durch den vorhergehenden Chiffretext modifiziert, damit gleiche Blöcke zu verschiendenen Chiffretexten führen

25
Q

OFB-Mode

A

Stromchiffre: Der Schlüsselstrom (IV,k) ist unabhängig von der Nachricht m.

Probleme:

  • m wirkt sich nicht auf die nächste Runde aus (ähnlich Vernam)
  • IV darf sich nicht wiederholen (ansonsten ist die Schlüsselstromsequenz identisch, siehe Pinguin und Vernam)
26
Q

OFB-Mode - Vor-/Nachteile

A
  • Falls zi = zj: Die Schlüsselstromsequenz wiederholt sich periodisch, siehe Pinguin
    => totaler Zusammenbruch der Sicherheit
    => ungeeignet für zB DVD, da die gesamte Chiffre durchlaufen werden muss wenn nur ein einzelner Block entschlüsselt werden soll

Aber: braucht keinen eigenen Entschlüsselungsalgorithmus und kein Padding

27
Q

CTR-Mode

A
  • Stromchiffre: Der Schlüsselstrom (IV,k) ist unabhängig von der Nachricht m.

Probleme:
- m wirkt sich nicht auf die nächste Runde aus (ähnlich Vernam)
- IV darf sich nicht wiederholen (ansonsten ist die Schlüsselstromsequenz identisch, siehe Pinguin und Vernam)
- Falls zi = zj: Die Schlüsselstromsequenz wiederholt sich periodisch, siehe Pinguin
=> totaler Zusammenbruch der Sicherheit

Vorteil: Ver- und Entschlüsselung beliebiger (!) Blöcke ohne Zeitverlust. Vgl. DVD

28
Q

Mode of Operation - Fazit

A
  • immer Mode of Operation benutzen
  • niemals ECB-Mode benutzen
  • sicherstellen, dass der IV nicht wiederholt wird
29
Q

Zusammenhang Blcokchiffre / Substitutionschiffre

A

Eine Substitutionschiffre ist eine Blockchiffre mit Blocklänge eins.

30
Q

IV

Varianten

A

1) Counter IV:
zB Nachrichtennummer. Unterscheidet sich nur in 1 Bit, Problem wenn sich die beiden Nachrichten um gleichen Bit unterscheiden. Außerdem Synchronisationsproblem

2) Zufälliger IV
muss immer mitgeschickt werden, Zufallszahlen nicht immer verfügbar

3) Abgeleiteter IV
Counter vor Verwendung durch Blockchiffre schicken
Vorteil beider Ansätze

31
Q

Stromchiffre

A

Jedes Zeichen des Klartextes wird einzeln verschlüsselt. Es wird ein Schlüsselstrom erzeugt, mit dem die Nachtichten m1, m2, mn verschlüsselt werden.

32
Q

Blockchiffre

A

Der Klartext wird in Blöcke einer festen Länge zerlegt und dann verschlüsselt.