digitale signaturen - ghr-und chamäleon-signaturen | björn kaidel · 2018-01-16 · trapcoll ch...

38
0 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen FAKULTÄT FÜR INFORMATIK, INSTITUT FÜR THEORETISCHE INFORMATIK Digitale Signaturen GHR-und Chamäleon-Signaturen | Björn Kaidel KIT – Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu

Upload: others

Post on 03-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

0 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

FAKULTÄT FÜR INFORMATIK, INSTITUT FÜR THEORETISCHE INFORMATIK

Digitale SignaturenGHR-und Chamäleon-Signaturen | Björn Kaidel

KIT – Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu

Socrative: Wiederholung

1 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

https://b.socrative.com/login/student/Room: SIGNATUREN

Eigenschaften von Chamäleon-Hashfkt.?Wie werden Chamäleon-Hashfkt. ausgewertet?Ist die Def. von Kollisionsresistenz von CH-Fkt. identisch zur üblichenDef.?Signaturen können weitergeben werden - ist das problematisch?

Evaluation

2 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Siehe Evaluations-PDF!

Socrative-Fragen vom letzten Mal

3 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

„Reicht die Zahlentheorie aus VL/Skript für die Prüfung?“Man sollte in der Lage sein, die besprochenen Verfahren (mit Beweis!) zuverstehen und erklären zu könnenDie dafür nötige Mathematik sollte man verstehen

„Werden CH-Fkt. in der Praxis angewandt?“

Inhalt

4 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Chamäleon-Signaturen (Kap. 3.4)

Chamäleon-Signaturen: Motivation (Kap. 3.1)(Wdh)

5 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Kunde

Händler

Händler 2

Angebot?

100$, σ1

100$, σ1

99$, σ2

Chamäleon-Signaturen: Ziel (Wdh)

6 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Frage: Können wir ein Signaturverfahren konstruieren, sodass . . .. . . K die Authentizität des Angebots von H1 verifizieren kann. . . K den Händler H2 nicht davon überzeugen kann, dass dasAngebot von H1 kam.

(Man spricht bei Verfahren mit solchen Eigenschaften vonAbstreitbarkeit)

Chamäleon-Hashfunktionen (Definition) (Kap.3.2) (Wdh)

7 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Def. (Chamäleon-Hashfunktion):Eine Chamäleon-Hashfunktion CH besteht aus zwei PPT-Algorithmen(GenCH,TrapCollCH):

GenCH(1k ) : gibt (ch, τ) aus, wobei:ch ist eine Funktion ch :M×R → NM NachrichtenraumR ZufallsraumN ZielraumM,R,N abhängig von konkreter CH!

τ eine Trapdoor („Falltür“) ist.

Chamäleon-Hashfunktionen (Definition - II)(Wdh)

8 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

TrapCollCH(τ,m, r ,m′) für (m, r ,m′) ∈ M×R×M berechnet r ′ ∈ R,sodass

ch(m, r ) = ch(m′, r ′)

Wer τ kennt, kann Kollisionen berechnenDaher der Name „Chamäleon“-HashfunktionAusgabe „wechselt“ ihr Urbild „wechselt ihre Farbe“

Chamäleon-Hashfunktion von DLog (Wdh)

9 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Kollisionsresistente CH-Fkt. von DLog:ch = (g,h = gx ), τ = xch(m, r ) = gmhr

Kollisionen berechnen durch Lösen nach r ∗:

m + x · r = m∗ + x · r ∗ mod p

⇒ r ′ =m−m∗

x+ r mod p

(Es gibt auch eine CH-Fkt. basierend auf dem RSA-Problem)

Chamäleon-Hashfunktion von DLog (Wdh)

9 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Kollisionsresistente CH-Fkt. von DLog:ch = (g,h = gx ), τ = xch(m, r ) = gmhr

Kollisionen berechnen durch Lösen nach r ∗:

m + x · r = m∗ + x · r ∗ mod p

⇒ r ′ =m−m∗

x+ r mod p

(Es gibt auch eine CH-Fkt. basierend auf dem RSA-Problem)

Chamäleon-Hashfunktion von DLog (Wdh)

9 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Kollisionsresistente CH-Fkt. von DLog:ch = (g,h = gx ), τ = xch(m, r ) = gmhr

Kollisionen berechnen durch Lösen nach r ∗:

m + x · r = m∗ + x · r ∗ mod p

⇒ r ′ =m−m∗

x+ r mod p

(Es gibt auch eine CH-Fkt. basierend auf dem RSA-Problem)

Kollisionsresistenz (Wdh)

10 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Def. 39 (Kollisionsresistenz für Chamäleon-Hashfkt.):Eine Chamäelon-Hashfunktion CH = (GenCH,TrapCollCH) istkollisionsresistent , falls für alle PPT A gilt, dass

Pr[

(ch, τ)← GenCH(1k )A(1k , ch) = (m, r ,m′, r ′)

: ch(m, r ) = ch(m′, r ′)∧(m, r ) 6= (m′, r ′)

]≤ negl(k)

für eine im Sicherheitsparameter k vernachlässigbare Funktion negl.

Chamäleon-Signaturen (Kap. 3.4)

11 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

CH = (GenCH,TrapCollCH) CH-Fkt., ch :M×R → NSignatur Σ′ = (Gen′, Sign′,Vfy′)

Konstruiere Chamäleon-Signatur Σ = (Gen, Sign,Vfy)

Gen(1k ) :(pk ′, sk ′)← Gen′(1k )

pk := pk ′, sk := sk ′

Chamäleon-Signaturen (Kap. 3.4)

11 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

CH = (GenCH,TrapCollCH) CH-Fkt., ch :M×R → NSignatur Σ′ = (Gen′, Sign′,Vfy′)

Konstruiere Chamäleon-Signatur Σ = (Gen, Sign,Vfy)

Gen(1k ) :(pk ′, sk ′)← Gen′(1k )

pk := pk ′, sk := sk ′

Chamäleon-Signaturen (Kap. 3.4)

12 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Sign(sk ,m, ch) : (ch ist CH-Fkt. des Empfängers)r ← R, ch(m, r ) =: yσ′ := Sign′(sk , y)σ := (σ′, r )

Vfy(pk ,m, σ, ch) :

Vfy′(pk , ch(m, r ), σ′)?= 1

Chamäleon-Signaturen (Kap. 3.4)

12 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Sign(sk ,m, ch) : (ch ist CH-Fkt. des Empfängers)r ← R, ch(m, r ) =: yσ′ := Sign′(sk , y)σ := (σ′, r )

Vfy(pk ,m, σ, ch) :

Vfy′(pk , ch(m, r ), σ′)?= 1

EUF-CMA für Chamäleon-Signaturen

13 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

CEUF-CMA A

(pk , sk)← Gen(1k )

(ch, τ)← GenCH(1k )

pk , ch

mi

σi ← Sign(sk ,mi , ch) σi

Anfragen nacheinanderq = q(k) Anfragenq Polynom

m∗ , σ∗

Vfy(pk ,m∗, σ∗, ch) = 1?∧

m∗ /∈ {m1, . . . ,mq}?

A gewinnt, falls Vfy(pk ,m∗, σ∗, ch) = 1 und m∗ /∈ {m1, ...,mq}

Frage: Ist dieses Sicherheitsmodell „stark genug“?

EUF-CMA für Chamäleon-Signaturen

13 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

CEUF-CMA A(pk , sk)← Gen(1k )

(ch, τ)← GenCH(1k )

pk , ch

mi

σi ← Sign(sk ,mi , ch) σi

Anfragen nacheinanderq = q(k) Anfragenq Polynom

m∗ , σ∗

Vfy(pk ,m∗, σ∗, ch) = 1?∧

m∗ /∈ {m1, . . . ,mq}?

A gewinnt, falls Vfy(pk ,m∗, σ∗, ch) = 1 und m∗ /∈ {m1, ...,mq}

Frage: Ist dieses Sicherheitsmodell „stark genug“?

EUF-CMA für Chamäleon-Signaturen

13 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

CEUF-CMA A(pk , sk)← Gen(1k )

(ch, τ)← GenCH(1k )

pk , ch

mi

σi ← Sign(sk ,mi , ch) σi

Anfragen nacheinanderq = q(k) Anfragenq Polynom

m∗ , σ∗

Vfy(pk ,m∗, σ∗, ch) = 1?∧

m∗ /∈ {m1, . . . ,mq}?

A gewinnt, falls Vfy(pk ,m∗, σ∗, ch) = 1 und m∗ /∈ {m1, ...,mq}

Frage: Ist dieses Sicherheitsmodell „stark genug“?

EUF-CMA für Chamäleon-Signaturen

13 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

CEUF-CMA A(pk , sk)← Gen(1k )

(ch, τ)← GenCH(1k )

pk , ch

mi

σi ← Sign(sk ,mi , ch) σi

Anfragen nacheinanderq = q(k) Anfragenq Polynom

m∗ , σ∗

Vfy(pk ,m∗, σ∗, ch) = 1?∧

m∗ /∈ {m1, . . . ,mq}?

A gewinnt, falls Vfy(pk ,m∗, σ∗, ch) = 1 und m∗ /∈ {m1, ...,mq}

Frage: Ist dieses Sicherheitsmodell „stark genug“?

EUF-CMA für Chamäleon-Signaturen

13 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

CEUF-CMA A(pk , sk)← Gen(1k )

(ch, τ)← GenCH(1k )

pk , ch

mi

σi ← Sign(sk ,mi , ch) σi

Anfragen nacheinanderq = q(k) Anfragenq Polynom

m∗ , σ∗

Vfy(pk ,m∗, σ∗, ch) = 1?∧

m∗ /∈ {m1, . . . ,mq}?

A gewinnt, falls Vfy(pk ,m∗, σ∗, ch) = 1 und m∗ /∈ {m1, ...,mq}

Frage: Ist dieses Sicherheitsmodell „stark genug“?

EUF-CMA für Chamäleon-Signaturen

13 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

CEUF-CMA A(pk , sk)← Gen(1k )

(ch, τ)← GenCH(1k )

pk , ch

mi

σi ← Sign(sk ,mi , ch) σi

Anfragen nacheinanderq = q(k) Anfragenq Polynom

m∗ , σ∗

Vfy(pk ,m∗, σ∗, ch) = 1?∧

m∗ /∈ {m1, . . . ,mq}?

A gewinnt, falls Vfy(pk ,m∗, σ∗, ch) = 1 und m∗ /∈ {m1, ...,mq}

Frage: Ist dieses Sicherheitsmodell „stark genug“?

CH-Sig: Sicherheitsmodell (Skript)

14 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Frage: Ist dieses Sicherheitsmodell „stark genug“?

Antwort: Nein!

Angreifer hat beim Signieren keine „Kontrolle“ über dieChamäleon-Hashfunktion.Dies kann ihm aber evtl. beim Fälschen helfen!Echter Angreifer könnten eigene CH-Fkt. erstellen & verwenden

CH-Sig: Sicherheitsmodell (Skript)

14 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Frage: Ist dieses Sicherheitsmodell „stark genug“?

Antwort: Nein!

Angreifer hat beim Signieren keine „Kontrolle“ über dieChamäleon-Hashfunktion.Dies kann ihm aber evtl. beim Fälschen helfen!Echter Angreifer könnten eigene CH-Fkt. erstellen & verwenden

Angriff bei DLog-CH-Fkt. (Skript)

15 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Angenommen, A könnte CH-Fkt. beim Signieren selbst wählen:Es wird die DLog-CH-Fkt. verwendet.A erhält ch = (g,h) vom Challenger.

A generiert chA = (ga,h), a 6= 1 selbst gewähltDies ist eine gültige CH-Fkt.!

A lässt m mit chA signieren und erhält Signatur σ = (σ′, r ).

Angriff bei DLog-CH-Fkt. (Skript)

15 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Angenommen, A könnte CH-Fkt. beim Signieren selbst wählen:Es wird die DLog-CH-Fkt. verwendet.A erhält ch = (g,h) vom Challenger.

A generiert chA = (ga,h), a 6= 1 selbst gewähltDies ist eine gültige CH-Fkt.!

A lässt m mit chA signieren und erhält Signatur σ = (σ′, r ).

Angriff bei DLog-CH-Fkt. (Skript)

16 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Dann gilt:

1 = Vfy(pk ,m, σ = (σ′, r ), chA)

= Vfy′(pk , chA(m, r ), σ′)

= Vfy′(pk , ch(a ·m, r ), σ′)

= Vfy(pk ,a ·m, σ, ch)

Da a 6= 1 gilt auch m 6= a ·m.Somit ist (a ·m, σ) eine gültige Fälschung bzgl. ch!

Anm.: Bei der RSA-CH-Fkt. ist ein ähnlicher Angriff möglich.

Angriff bei DLog-CH-Fkt. (Skript)

16 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Dann gilt:

1 = Vfy(pk ,m, σ = (σ′, r ), chA)

= Vfy′(pk , chA(m, r ), σ′)

= Vfy′(pk , ch(a ·m, r ), σ′)

= Vfy(pk ,a ·m, σ, ch)

Da a 6= 1 gilt auch m 6= a ·m.Somit ist (a ·m, σ) eine gültige Fälschung bzgl. ch!

Anm.: Bei der RSA-CH-Fkt. ist ein ähnlicher Angriff möglich.

EUF-CMA für Chamäleon-Signaturen 2 (Skript)

17 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

EUF-CMA Variante 1CEUF-CMA A

(pk , sk)← Gen(1k )

(ch, τ)← GenCH(1k )

pk , ch

mi

mi , chi

σi ← Sign(sk ,mi , ch)

σi ← Sign(sk ,mi , chi )

σi

Anfragen nacheinanderq = q(k) Anfragenq Polynom

m∗ , σ∗

Vfy(pk ,m∗, σ∗, ch) = 1?∧

m∗ /∈ {m1, . . . ,mq}?

A gewinnt, falls Vfy(pk ,m∗, σ∗, ch) = 1 und m∗ /∈ {m1, ...,mq}

EUF-CMA für Chamäleon-Signaturen 2 (Skript)

17 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

EUF-CMA Variante 2CEUF-CMA A

(pk , sk)← Gen(1k )

(ch, τ)← GenCH(1k )

pk , ch

mi

mi , chi

σi ← Sign(sk ,mi , ch)

σi ← Sign(sk ,mi , chi )σi

Anfragen nacheinanderq = q(k) Anfragenq Polynom

m∗ , σ∗

Vfy(pk ,m∗, σ∗, ch) = 1?∧

m∗ /∈ {m1, . . . ,mq}?

A gewinnt, falls Vfy(pk ,m∗, σ∗, ch) = 1 und m∗ /∈ {m1, ...,mq}

EUF-CMA

18 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Im Folgenden beschränken wir uns auf Variante 1!Variante 2 auch erreichbar, ist aber etwas schwieriger.

CH-Sig: Sicherheit

19 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

Theorem 45:Für jeden PPT-Angreifer A(pk , ch), der die EUF-CMA-Sicherheit von Σbricht in Zeit tA mit Erfolgswahrscheinlichkeit εA, existiert einPPT-Angreifer B, der in Zeit tB ≈ tA läuft und entweder

die Kollisionsresistenz von ch bricht mit Wkt.

εch ≥εA2

,

oder die EUF-naCMA-Sicherheit von Σ′ bricht mit Wkt.

ε′ ≥ εA2

.

Chamäleon-Signaturen: Beweis

20 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

EUF-CMA:Seien m1, . . . ,mq die Anfragen, σi = (σ′i , ri ) die Antworten und(m∗, σ∗ = (σ′∗, r ∗)) die Ausgabe von A.

Zwei Ereignisse:E0 : Es existiert i mit ch(mi , ri ) = ch(m∗, r ∗).E1 : Für alle i ∈ {1, . . . ,q} gilt ch(mi , ri ) 6= ch(m∗, r ∗).

A ruft E0 oder E1 hervor, also gilt

εA ≤ Pr[E0] + Pr[E1]⇒ Pr[E0] ≥ εA/2 oder Pr[E1] ≥ εA/2

Chamäleon-Signaturen: Beweis

20 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

EUF-CMA:Seien m1, . . . ,mq die Anfragen, σi = (σ′i , ri ) die Antworten und(m∗, σ∗ = (σ′∗, r ∗)) die Ausgabe von A.

Zwei Ereignisse:E0 : Es existiert i mit ch(mi , ri ) = ch(m∗, r ∗).E1 : Für alle i ∈ {1, . . . ,q} gilt ch(mi , ri ) 6= ch(m∗, r ∗).

A ruft E0 oder E1 hervor, also gilt

εA ≤ Pr[E0] + Pr[E1]⇒ Pr[E0] ≥ εA/2 oder Pr[E1] ≥ εA/2

Chamäleon-Signaturen: Beweis

20 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

EUF-CMA:Seien m1, . . . ,mq die Anfragen, σi = (σ′i , ri ) die Antworten und(m∗, σ∗ = (σ′∗, r ∗)) die Ausgabe von A.

Zwei Ereignisse:E0 : Es existiert i mit ch(mi , ri ) = ch(m∗, r ∗).E1 : Für alle i ∈ {1, . . . ,q} gilt ch(mi , ri ) 6= ch(m∗, r ∗).

A ruft E0 oder E1 hervor, also gilt

εA ≤ Pr[E0] + Pr[E1]⇒ Pr[E0] ≥ εA/2 oder Pr[E1] ≥ εA/2

Chamäleon-Signaturen: Beweis

21 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

E0: Reduktion auf Kollisionsresistenz von CHStandard, Vorgehen wie immer

E1: Reduktion auf EUF-naCMA-Sicherheit von Σ′

Details: siehe Tafel

Socrative: Chamäleon-Signaturen

22 2017-01-12 B. Kaidel – Digitale Signaturen: GHR- und Chamäleon-Signaturen

https://b.socrative.com/login/student/Room: SIGNATUREN

Warum sind Chamäleon-Signaturen abstreitbar?Warum ist der Empfänger von einer CH-Sig. „überzeugt“?Welche Sicherheitseigenschaft hat die CH-Sig.?Wie werden im Beweis die adaptiven Anfragen von A auf eine einzigenicht-adaptive Anfrage „übersetzt“?