Beweisarchiv: Kryptografie: Kryptosysteme: Sicherheit des GMR-Signatursystems

Aus testwiki
Version vom 10. August 2010, 14:49 Uhr von imported>Bananenfalter (Falltür-Einwegpermutation)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Beweisarchiv: Kryptografie: TOPNAV


Sicherheit des GMR-Signatursystems

Einleitung

Das GMR-Signatursystem nutzt kollisionsfreie Falltür-Einwegpermutationen. Zur Erklärung siehe dazu Falltür-Einwegfunktionen (engl. trapdoor one-way function). Diese haben den Vorteil, dass sie sich nur mit Kenntnis eines Geheimnisses effizient umkehren lassen. Es wird also die Umkehrpermutation mit Kenntnis des Geheimnisses zum Signieren einer Nachricht verwendet und die Signatur dann ohne Kenntnis des Geheimnisses mit der Permutation überprüft.

Als Geheimnis verwendet man zwei große Primfaktoren von n=pq. Dabei ist n öffentlich, da es zum Testen benötigt wird.

Behauptung

Es existiert eine kollisionsfreie Falltür-Einwegpermutation.

Dazu zeigen wir im Teil 1, dass die im Folgenden vorgeschlagene Permutation eine Falltür-Einwegpermutation ist. Im Teil 2 wird bewiesen, dass es mindestens so schwer ist, eine Kollision zu finden, wie n zu faktorisieren. Das ist nützlich, da das Faktorisierungsproblem für eine beliebige ganze Zahl als nicht mit polynomialem Zeitaufwand lösbar gilt.

Falltür-Einwegpermutation

Sei

Dn={x/n×|(xn)=1; 0<x<n2}   ((xn) ist das Jacobi-Symbol)

der Definitionsbereich für folgende Permutation:

f0(x)={x2(modn) ,wenn x2Dn ,x2(modn)sonst ,f1(x)={4x2(modn) ,wenn 4x2Dn ,4x2(modn)sonst .

Die beiden folgenden Permutationen dienen dem Signieren der Zeichen „1” und „0” an einer zufällig gewählten Referenz xDn. Die Umkehrfunktionen benötigen Wurzelziehen in /n, was nur mit Kenntnis der beiden Primfaktoren effizient möglich ist. Siehe dazu: Wurzelziehen ist schwer

f01(x)={x(modn) ,wenn xDn ,x(modn)sonst ,f11(x)={21x(modn) ,wenn 21xDn ,21x(modn)sonst .

Weiterhin sei

n=pqp3(mod4)q7(mod8).

Da wir dies im Beweis mehrfach verwenden, sei hier schon einmal darauf hingewiesen, dass damit gilt:

1QRn (-1 ist kein quadratischer Rest modulo n)
2QRn

Beweis, Teil 1

Wir zeigen nun, dass es sich bei f0 tatsächlich um eine Permutation handelt, indem wir beweisen, dass folgende Implikation gilt:

f0(x)=f0(y)x=y


Sei f0(x)=f0(y)

x2y2(modn)

Es ist x2≢y2(modn) da x2QRn, aber 1QRn und damit auch y2QRn.

x2y2(modn)x±y(modn)

Wegen x, yDn:0<x, y<n2.

x=y


Jetzt folgt noch der Beweis für f1:

Sei f1(x)=f1(y)

4x24y2(modn)
x2y2(modn)
x±y(modn)  und  x, yDn:0<x, y<n2
x=y

Beweis, Teil 2

Im zweiten Teil des Beweises zeigen wir, dass die gefundenen Permutationen kollisionsresistent sind. Dazu zeigen wir die Implikation „Kollisionen finden ist leicht” „Faktorisieren ist leicht.”

Angenommen, es existieren x, yDn, für die es eine Kollision gibt:

f0(x)=f1(y)
x24y2(modn)

Es ist x2≢4y2(modn) da x2QRn, aber 1QRn und damit auch 4y2QRn.

x24y2(modn)x24y20(modn)(x+2y)(x2y)0(modn)


(1)n(x+2y)(x2y)


(xn)=1 , aber  (±2yn)=1
x≢±2y(modn)


(2)nx±2y


Wegen (1) und (2) muss (x+2y)(x2y) einen der beiden Primfaktoren enthalten. Damit ist

ggT(x2y, n)

einer der beiden Primfaktoren von n=pq

Also gilt: „Kollisionen finden ist leicht.” „Faktorisieren ist leicht.”

Wikipedia-Verweise

Vorlage:W
Vorlage:W
Vorlage:W
Vorlage:W
Vorlage:W
Vorlage:W


Beweisarchiv: Kryptografie: TOPNAV