Camenisch-Lysyanskaya-Signaturverfahren

Aus testwiki
Zur Navigation springen Zur Suche springen

Das Camenisch-Lysyanskaya-Signaturverfahren, oft auch als CL-Signaturverfahren bezeichnet, ist ein kryptographisches Verfahren zum Erstellen digitaler Signaturen. Es wurde von den Kryptographen Jan Camenisch und Anna Lysyanskaya entwickelt und im Jahr 2002 publiziert.[1]

Verfahren

Im Folgenden wird das Signaturverfahren im Detail beschrieben. Die Beschreibung weicht in Details von der Originaldarstellung ab und folgt der Darstellung von Camenisch und Groß.[2]

Verwendete Parameter

Zuerst werden folgende Parameter festgelegt:

  • n: Länge des verwendeten RSA-Moduls; typische Werte sind 1536 oder 2048.
  • m: Maximale Länge der zu signierenden Nachrichten.
  • L: Anzahl der mit einer Signatur signierbaren Nachrichten.
  • e: Sicherheitsparameter; muss >m+2 sein.
  • v: Sicherheitsparameter; typische Werte sind 80 oder 128.

Schlüsselerzeugung

Die Schlüsselerzeugung werden nun folgende Schritte durchlaufen:

  • Man wählt zwei große Primzahlen p,q gleicher Bitlänge n/2, für welche p12,q12 ebenfalls prim sind. Man definiert n=pq. (Siehe hierzu Sophie-Germain-Primzahl.)
  • Man wählt zufällige S,Z,R1,,RLQRn, wobei QRn die quadratischen Reste modulo n beschreibt.

Der private Signaturschlüssel ist (p,q), der öffentliche Verifikationsschlüssel besteht aus (n,S,Z,R1,,RL).

Signieren einer Nachricht

Ein Tupel von Nachrichten (m1,,mL)(2m,2m)L wird folgendermaßen signiert:

  • Man wählt eine zufällige Primzahl e mit Länge e>m+2, und v[0,2n+m+v).
  • Man berechnet A=(ZSvi=1LRimi)1/emodn.

Die Signatur besteht dann aus (e,A,v).

Verifizieren einer Signatur

Eine Signatur (e,A,v) für ein Tupel (m1,,mL) ist gültig falls:

  • mi(2m,2m) für alle i=1,,L,
  • 2e1<e<2e, sowie
  • Z=AeSvi=1LRimimodn.

Sicherheit

Das Verfahren ist unter der starken RSA-Annahme sicher. Diese besagt, dass für einen zufälligen Modul n der oben beschriebenen Form, und einem zufälligen yn* es nicht möglich ist, effizient ein xn* sowie ein 1<e zu finden, sodass y=xemodn gilt.

Verwendung

CL-Signaturen werden aufgrund ihrer Eigenschaften häufig als Bausteine für anonyme Authentifizierungsprotokolle verwendet, wie zum Beispiel für Idemix oder Direct Anonymous Attestation.

Quellen