• Keine Ergebnisse gefunden

Algorithmische Kryptographie (WS2013/14) Kapitel 4 Weitere Systeme Walter Unger

N/A
N/A
Protected

Academic year: 2022

Aktie "Algorithmische Kryptographie (WS2013/14) Kapitel 4 Weitere Systeme Walter Unger"

Copied!
439
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Kapitel 4 Weitere Systeme

Walter Unger

Lehrstuhl für Informatik 1

10:46 Uhr, den 26. November 2013

(2)

Inhalt I

1 ElGamal Einleitung Aufbau

Verschlüsseln und Entschlüsseln Sicherheitsaspekte

Unterschriften mit ElGamal Sicherheitsaspekte

2 Elliptische Kurven

Mathematischer Hintergrund Aufbau des Systems Das Verfahren

3 Quantenkryptographie Grundlagen aus der Physik Idee der Datenübertragung Realisierung der Protokolle

(3)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(4)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(5)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(6)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(7)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(8)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(9)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(10)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(11)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(12)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(13)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(14)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(15)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(16)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(17)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(18)

ElGamal (1985 Tahir al-Dschamal(*1955))

Schweres Problem: diskreter Logarithmus.

D.h. es wird als schwer angenommen, für gegebene Zahlen a,b,p, eine Zahlx zu bestimmen mit (ax modp) =b.

Bei der Verschlüsselung wird eine Hintertür nicht durch das System vorgegeben.

Stattdessen wird vom Verschlüsseler eine zusätzliche Information angegeben, mit deren Hilfe der Emfänger entschlüsseln kann. Erinnerung:

A:x,y,n B:m,y,n Wählex,y

n=x·y y,n

Wählez c=n·z+m d=z·y c,d

m=cx·d

a·bwird zuab (modp) a+bwird zua·b (modp)

PkS RSA ElGamal

Rabin KS DES IDEA AES

1985

1970 1980 1990 2000

(19)

Erinnerung

G ist zyklische Gruppe∃g:G ={gm|m∈N}.

Zn ist zyklisch, gdw.n∈ {1,2,4,pk,pk}.

Der Generator einer zyklischen Gruppe wird primitive Wurzel genannt.

FallspPrimzahl, dann istZp zyklisch mitϕ(p−1) Generatoren.

x ∈Zp ist Generator gdw.x(p−1)/q6= 1 für alle Primzahlenq, diep−1 teilen.

Da ord(x) dasp−1 teilt, gilt:

x(p−1)/q= 1 modp−1 oder ord(x) =p−1.

(20)

Erinnerung

G ist zyklische Gruppe∃g:G ={gm|m∈N}.

Zn ist zyklisch, gdw.n∈ {1,2,4,pk,pk}.

Der Generator einer zyklischen Gruppe wird primitive Wurzel genannt.

FallspPrimzahl, dann istZp zyklisch mitϕ(p−1) Generatoren.

x ∈Zp ist Generator gdw.x(p−1)/q6= 1 für alle Primzahlenq, diep−1 teilen.

Da ord(x) dasp−1 teilt, gilt:

x(p−1)/q= 1 modp−1 oder ord(x) =p−1.

(21)

Erinnerung

G ist zyklische Gruppe∃g:G ={gm|m∈N}.

Zn ist zyklisch, gdw.n∈ {1,2,4,pk,pk}.

Der Generator einer zyklischen Gruppe wird primitive Wurzel genannt.

FallspPrimzahl, dann istZp zyklisch mitϕ(p−1) Generatoren.

x ∈Zp ist Generator gdw.x(p−1)/q6= 1 für alle Primzahlenq, diep−1 teilen.

Da ord(x) dasp−1 teilt, gilt:

x(p−1)/q= 1 modp−1 oder ord(x) =p−1.

(22)

Erinnerung

G ist zyklische Gruppe∃g:G ={gm|m∈N}.

Zn ist zyklisch, gdw.n∈ {1,2,4,pk,pk}.

Der Generator einer zyklischen Gruppe wird primitive Wurzel genannt.

FallspPrimzahl, dann istZp zyklisch mitϕ(p−1) Generatoren.

x ∈Zp ist Generator gdw.x(p−1)/q6= 1 für alle Primzahlenq, diep−1 teilen.

Da ord(x) dasp−1 teilt, gilt:

x(p−1)/q= 1 modp−1 oder ord(x) =p−1.

(23)

Erinnerung

G ist zyklische Gruppe∃g:G ={gm|m∈N}.

Zn ist zyklisch, gdw.n∈ {1,2,4,pk,pk}.

Der Generator einer zyklischen Gruppe wird primitive Wurzel genannt.

FallspPrimzahl, dann istZp zyklisch mitϕ(p−1) Generatoren.

x ∈Zp ist Generator gdw.x(p−1)/q6= 1 für alle Primzahlenq, diep−1 teilen.

Da ord(x) dasp−1 teilt, gilt:

x(p−1)/q= 1 modp−1 oder ord(x) =p−1.

(24)

Erinnerung

G ist zyklische Gruppe∃g:G ={gm|m∈N}.

Zn ist zyklisch, gdw.n∈ {1,2,4,pk,pk}.

Der Generator einer zyklischen Gruppe wird primitive Wurzel genannt.

FallspPrimzahl, dann istZp zyklisch mitϕ(p−1) Generatoren.

x ∈Zp ist Generator gdw.x(p−1)/q6= 1 für alle Primzahlenq, diep−1 teilen.

Da ord(x) dasp−1 teilt, gilt:

x(p−1)/q= 1 modp−1 oder ord(x) =p−1.

(25)

Erinnerung

G ist zyklische Gruppe∃g:G ={gm|m∈N}.

Zn ist zyklisch, gdw.n∈ {1,2,4,pk,pk}.

Der Generator einer zyklischen Gruppe wird primitive Wurzel genannt.

FallspPrimzahl, dann istZp zyklisch mitϕ(p−1) Generatoren.

x ∈Zp ist Generator gdw.x(p−1)/q6= 1 für alle Primzahlenq, diep−1 teilen.

Da ord(x) dasp−1 teilt, gilt:

x(p−1)/q= 1 modp−1 oder ord(x) =p−1.

(26)

Erinnerung

G ist zyklische Gruppe∃g:G ={gm|m∈N}.

Zn ist zyklisch, gdw.n∈ {1,2,4,pk,pk}.

Der Generator einer zyklischen Gruppe wird primitive Wurzel genannt.

FallspPrimzahl, dann istZp zyklisch mitϕ(p−1) Generatoren.

x ∈Zp ist Generator gdw.x(p−1)/q6= 1 für alle Primzahlenq, diep−1 teilen.

Da ord(x) dasp−1 teilt, gilt:

x(p−1)/q= 1 modp−1 oder ord(x) =p−1.

(27)

Erinnerung

G ist zyklische Gruppe∃g:G ={gm|m∈N}.

Zn ist zyklisch, gdw.n∈ {1,2,4,pk,pk}.

Der Generator einer zyklischen Gruppe wird primitive Wurzel genannt.

FallspPrimzahl, dann istZp zyklisch mitϕ(p−1) Generatoren.

x ∈Zp ist Generator gdw.x(p−1)/q6= 1 für alle Primzahlenq, diep−1 teilen.

Da ord(x) dasp−1 teilt, gilt:

x(p−1)/q= 1 modp−1 oder ord(x) =p−1.

(28)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(29)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(30)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(31)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(32)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(33)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(34)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(35)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(36)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(37)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(38)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(39)

Aufbau von ElGamal

xist Generator:x(p−1)/q6= 1

Bestimme große Primzahlp, so dassp−1 einen großen Primfaktor hat.

Zum Bestimmen solcher Primzahlenpwählt man zuerst eine große Primzahlqund testet dann als Kandidaten fürpZahlen der Form 2kq+ 1.

Bestimme weiter einen Generatorg∈Zp.

Um zu testen, obgein Generator ist, müssen die Werte vonk faktorisierbar sein, d.h.q wird groß gewählt undk relativ klein.

Für einen Generatorgmuss für alle Teilerq0vonp−1 gelten g(p−1)/q0 6≡1 (modp).

Damit kann man einfach testen, obg ein Generator ist.

Aufbau von ElGamal

Wähle zufälligx ∈ {2, . . . ,p−2}.

Bestimmey:=gx modp.

Der geheime Schlüssel ist dann (p,g,x).

Der öffentliche Schlüssel ist dann (p,g,y).

(40)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g WählepPrimzahl mit

p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

(41)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g

WählepPrimzahl mit p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

(42)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g WählepPrimzahl mit

p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

(43)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g WählepPrimzahl mit

p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

(44)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g WählepPrimzahl mit

p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

(45)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g WählepPrimzahl mit

p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

(46)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g WählepPrimzahl mit

p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

(47)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g WählepPrimzahl mit

p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

(48)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g WählepPrimzahl mit

p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

(49)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g WählepPrimzahl mit

p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

(50)

Verschlüsselung:

x∈ {2, . . . ,p2}

y=gxmodp

Bisher:

A:x,y,g B:m,y,g WählepPrimzahl mit

p1 hat großen Primfaktor Wähle GeneratorgZp Wählex∈ {2, . . . ,p2}

y:=gxmodp y,g

Die Verschlüsselungsfunktion ist dannEp,g,yElGamal:Zp→Zp×Zp. Wählekzufällig mit ggT(k,p−1) = 1.

a=gkmodp b=m·ykmodp Ep,g,yElGamal(m)7→(a,b).

Damit hat der Kryptotext die doppelte Größe im Vergleich zum Plaintext.

Referenzen

ÄHNLICHE DOKUMENTE

Um die zu verhindern reicht es aus, OAEP oder kollisionssichere Hashfunktionen zu

4:26 Idee der Datenübertragung Walter Unger 12.12.2015 16:03 WS2015/16 Z?.

Motivation aus der Geschichte und Grundlagen DES IDEA AES Ausklang Von der Zeitenwende bis 1900 (1:14) <> Walter Unger 17.10.2013 17:05 WS2013/14 Z n..

Unabhängig von Merkle entwickelt, zwei Jahre später veröffentlicht.. Gerüchteweise schon vorher von

Einleitung Hilfsfunktionen Weitere Angriffe Bit-Sicherheit Bestimmung von Primzahlen. (3:2.3) <> Walter Unger 17.10.2013 16:34

Einleitung Hilfsfunktionen Weitere Angriffe Bit-Sicherheit Bestimmung von Primzahlen Agrawal, Kayal und Saxena (3:60) <> Walter Unger 17.10.2013 17:01 WS2013/14 Z n.

Dieses Protokoll werden wir beim elektronischen Geld und dem letzten Wahlsystem noch sehen... Beweist, dass zwei diskrete Logarithmen

Einfaches Protokoll (1978, Shimon Even (1935-2004)) (8:3.1) <> Walter Unger 13.12.2013 19:41 WS2013/14