3.13 Realisierung des Beta-Systems

Für das Beta-System verwenden wir das blinde Schnorr-Signaturschema (Stadler, 1996, S. 35).
 

3.13.1 Blindes Schnorr-Signaturprotokoll

Die Parameter entsprechen dem Schnorr-Signaturschema.

Schlüsselerzeugungs-Algorithmus 

Blinde Signatur-Algorithmus 
 
  • Zunächst erzeugt Server einen zufälligen geheimen Schlüssel aus und berechnet den zugehörigen öffentlichen Zufallsschlüssel
  •           berechnet, woraus Client die blinden Wert  gewinnt. Verifikations-Algorithmus  Außerdem publiziert der Server für jeden Teilnehmer den Nachweis mit seiner Signatur im BBS. Dadurch existiert ein öffentlicher Nachweis, daß der Server tatsächlich eine blinde Signatur leistete.

    Als Alternative zum blinden Schnorr-Signaturschema wäre beispielsweise eine blinde RSA-Variante durchführbar.
     

    3.13.2 RSA-Verschlüsselungsschema

    Das populärste asymmetrische Codierungsverfahren RSA wurde von Ron Rivest, Adi Shamir und Leonard Adleman 1978 publiziert (Rivest/Shamir/Adleman, 1978) und hielt jahrelanger Kryptoanalyse stand.

    Die Systemparameter bestehen aus dem öffentlichen Schlüssel und dem geheimen Schlüssel Jeder Inhaber eines geheimen Schlüssels benötigt einen eindeutigen Modulus Außerdem müssen die beiden Primzahlen p und q geheim bleiben. Das RSA Verschlüsselungsschema besteht aus drei Algorithmen:

    Schlüsselerzeugungs-Algorithmus 

    Verschlüsselungs-Algorithmus Entschlüsselungs-Algorithmus  Die Sicherheitsannahme des RSA-Systems beruht darauf, daß die Wiederherstellung des Klartextes bei gegebenem öffentlichen Schlüssel und Chiffretext der Faktorisierung des Produkts beider Primzahlen (p,q) entspricht (Faktorisierungsproblem). Seit Jahrhunderten versuchten Mathematiker erfolglos, Algorithmen zur schnellen Primfaktorzerlegung zu finden. Ein Brute-Force-Angriff, der jeden möglichen geheimen Schlüssel ausprobiert, gilt als ineffizienter als der Versuch, M zu faktorisieren (Schneier, 1996).

    3.13.3 RSA-Signaturschema

    Das RSA-Signaturschema hat die gleichen Parameter wie das RSA-Codierungsschema.

    Schlüsselerzeugungs-Algorithmus

    Siehe RSA-Verschlüsselungschema.

    Signatur-Algorithmus

    Verifikations-Algorithmus  dann liefere den Ausgabewert GÜLTIG, sonst UNGÜLTIG.

    3.13.4 Blindes RSA-Signaturschema

    Das blinde RSA-Signaturschema basiert auf den Parametern des RSA-Kryptosystems. Die erste RSA-Implementierung stammt von David Chaum (Chaum, 1985). Eine RSA-Variante wird auch für E-Cash eingesetzt.

    Schlüsselerzeugungs-Algorithmus

    Der Schlüsselerzeugungs-Algorithmus ist analog zum RSA-Codierungsschema. Der Algorithmus liefert als Ausgabeparameter das Paar

    Blinde Signatur-Algorithmus 

    Verifikations-Algorithmus

    Dieser funktioniert analog zum RSA-Signaturverifikations-Algorithmus.

    Außerdem publiziert der Server für jeden Teilnehmer den Nachweis mit seiner Signatur im BBS.
     

    3.13.5 Erweiterter blinder Schnorr-Signatur-Algorithmus

    In diesem Abschnitt definieren wir eine Implementierung des erweiterten Schnorr-Signatur-Algorithmus, um das parallele Ausstellen von Zertifikaten zu erreichen. Dieser Algorithmus wurde bisher noch nicht publiziert.

    Erweiterter blinder Schnorr-Signatur-Algorithmus

              und sendet zum Client.          berechnet, woraus Client die blinden Werte gewinnt .