Authentifikation Flashcards

1
Q

Schutzziel von Hashfunktionen / MACs

A

Authentizität und Integrität

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

Hashfunktionen - Idee

A
  • Berechne Prüfsumme einer Nachricht
  • Übertrage (kurze) Prüfsumme über sicheren Kanal
  • Übertrage (lange) Nachricht über unsicheren Kanal
  • Empfänger prüft, ob Prüfsumme zur Nachricht passt
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Hashfunktion

A

Verwandelt Input beliebiger Länge in ein Output fester Länge

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

Kryptographische Hashfunktion

A

Verwandelt Input beliebiger Länge in ein Output fester Länge. Unter Berücksichtigung von Sicherheitseigenschaften:

  • Einwegfunktion (one-wayness)
  • schwache Kollisionsresistens (2nd preimage resistance)
  • starke Kollisionsresistenz (collision resistance)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Ideale Hashfunktion - Definition

A

Eine Hashfunktion heißt sicher, wenn sie keine Eigenscharten besitzt, die man nicht auch von einer zufällig ausgewürfelten Funktion f:{0,1}^* -> {0,1}^n erwarten würde. -> IDEALE HASHFUNKTION

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

Hashfunktionen - Kollisionen - Allgemein

A

Die Definitonsmenge der Hashfunktion ist deutlich größer als ihr Wertebereich. Für jeden Wert aus dem Wertebereich gibt es im Grunde unendliche viele Inputwerte. Es muss also Kollisionen geben. Sicherheitsrelevant ist lediglich, dass es schwer sein soll, eine Kollision zu FINDEN. Auch gegen eine ideale Hashfunktion kann man Kollisionen suchen.

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

schwache Kollisionsresistens (2nd preimage resistance)

A

gegeben: Nachricht X

Es soll unmöglich sein, ein X’ zu finden mit H(X)=H(X’)

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

starke Kollisionsresistenz (collision resistance)

A

Es soll unmöglich sein, beliebige X und X’ zu finden mit H(X)=H(X’) und X!=X

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

Geburtstagsparadoxon

A

Bei s möglichen Werten: Man kann davon ausgehen, dass nach Wurzel(s) Versuchen eine Kollision auftritt.

Wenn eine Hashfunktion eine Outputlänge von 64 Bit hat, kann man nach Wurzel(2^64) = 2^32 Versuchen eine Kollision erwarten.

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

Hashfunktionen - Kollisionen - Ausnutzen

A

Wenn eine Hashfunktion keine starke Kollisionsresistenz aufweist, kann der Angreifer die Nachricht VOR dem Versenden austauschen (Angreifer muss Alice sein)

Wenn eine Hashfunktion nicht mal schwache Kollisionsresistenz aufweist, kann der Angreifer die Nachricht NACH dem Versenden ersetzen.

Kollisionen aus Zufallsstrings sind ebenfalls relevant, da in RSA-Zertifikaten oder programmierbaren Dokumenten Schaden angerichtet werden kann.

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

iterative Hashfunktionen

A

Die Kollision eines Zwischenergebnisses kann zur Kollision des Gesamtergebnisses ausgebaut werden. LENGHT EXTENSION ATTACK

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

Welche Hashfunktionen sind sicher?

A

SHA-2
SHA-3
WHIRLPOOL

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

Keccak (SHA-3)

A

Sponge Construction

  • ABSORPTION PHASE: Nachricht wird in inneren Zustand (1600 Bit) absorbiert
  • SQUEEZING PHASE: Erst ganz am Ende wird der Output herausgepresst

Der innere Zustand ist größer als der eigentliche Output. Kollision nach 2⁸⁰⁰ Versuchen

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

Was sind Message Authentication Codes

Welche gibts es?

A
  • MACs sind eine Hashfunktion mit Schlüssel (keyed hash)

CBC-MAC
HMAC

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

Unterschied Hash/MAC

A

Hash bietet Integrität
MAC bietet Integrität und Authentizität

MAC nutzt secret key, dh der Absender muss den key kennen. Da niemand sonst den key kennt, ist der Absender zweifelsfrei identifiziert. Außerdem kann d über unsichere Verbindung geschickt werden, da key geheim.

Hash nutzt keinen key (jeder kann hashen), daher muss d über sichere Verbindung kommuniziert werden.

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

Ist bei MACs ein sicherer Kanal nötig?

A

kein sicherer Kanal nötig

17
Q

Wann heißt ein MAC sicher?

A

Wenn er keine Eigenschaften besitzt, die man nicht auch bei einem idealen MAC erwarten würde

18
Q

Angriffe gegen idealen MAC

A

BruteForce
Rate Digest
Replay-Angriff

sicher gegen Kollisionsangriffe!

19
Q

The Game

A

1) Query Phase: Angreifer wählt Nachrichten und erhält die zugehörigen Digests
2) Attack Phase: Angreifer produziert (m,d) mit m1!=m2
3) Victory Condition: Angreifer gewinnt, wenn Bob (m,d) akzeptiert, dh wenn d=MAC(m) ist.

20
Q

CBC-MAC - Angriff

A

1) Erfrage Digests für zufällige Nachrichten m1,…mn, bis eine Kollision auftritt.
2) Erfrage Digest für (mi,a) und (mj,a) und erhalte Digest d.

3) Reiche ((mj,a)d) ein. Immer richtig, wenn
MAC(mi)=MAC(mj) dann ist auch MAC(mi,a)=MAC(mj,a).

21
Q

CBC-MAC - Probleme

A

Die Nachricht kann erweitert werden bzw. verschiedene Digests kombiniert werden.

Kann durch Padding verhindert werden, z.B CBC-MAC(m || length(m))

Allgemein: Der letzte Schritt muss anders sein als alle vorherigen

22
Q

HMAC

A

CBC-MAC wird aus Hashfunktion zusammengebaut.

keyed Hash verhindert Collision Attacks
Konstanten (a,b) verhindern Lenght Extension Attack

23
Q

Fazit

A

CBC-Mac am weitesten verbreitet

Immer den Algo mit angeben, zB
CBC-MAC-AES-128
HMAC-SHA1

BruteForce, Digest raten, Replay Attacks auch gegen idealen Hash möglich

Auch Kontextinformationen authentisieren, nicht nur Nachricht!

24
Q

CBC-MAC

m||k
(k||m)

A

(m||k): Collision Attack, kann offline nach Kollisionen durchsucht werden

(k||m): Length Extension Attack. Wenn Schlüssellänge und m bekannt sind, können beliebige Nachrichten an beliebige Schlüssel gehängt werden.