3.8 Schemen des Beta-Systems

Um das nichtrückverfolgbare Zertifizierungsprotokoll definieren zu können, müssen wir zunächst den von Chaum entwickelten Mechanismus der blinden Signatur einführen (Chaum, 1983).
 

3.8.1 Allgemeines blindes Signaturschema

Ein blindes Signatursystem besteht aus einem interaktiven Protokoll zwischen Client und Server zur blinden Unterzeichnung einer Nachricht m (durch Server), wobei Client

vom Server erhält.

Es erlaubt dem Client, durch eine Transformation den Nachrichteninhalt zu codieren und diesen vom Server digital signieren zu lassen. Die signierte transformierte Nachricht wird anschließend wieder zum Client zurückgesendet und von ihm rücktransformiert. Aus der Rücktransformation gewinnt der Client eine digitale Signatur zur ursprünglichen Nachricht. Stellt Server eine Menge von blinden Signaturen für unterschiedliche Empfänger aus, dann hat das System die wichtige Eigenschaft, daß der Server nicht wissen kann, welche signierte und transformierte Nachricht mit welcher digitalen Signatur zusammenhängt. Dies gilt auch, wenn der Server annimmt, daß eine solche Korrespondenz existieren muß (Chaum, 1988b, S. 1).

Ein blindes Signaturschema besteht aus drei Hauptkomponenten, die wir im folgenden definieren werden, nämlich:

3.8.1.1 Schlüsselerzeugung

SG stellt einen Schlüsselgenerierungs-Algorithmus dar, der als Ausgabe ein zufälliges Schlüsselpaar liefert.

3.8.1.2 Interaktives blindes Signaturprotokoll

Wir bezeichnen als interaktives, blindes Signaturprotokoll, das zwischen Client und Server abgewickelt wird. Das interaktive Protokoll besteht aus den beiden Algorithmen client und server, die miteinander kommunizieren. Client führt client aus. Server führt server aus. Der Input von client besteht aus der Nachricht m, dem öffentlichen Server-Schlüssel  und dem geheimen Client-Schlüssel der für die Produktion einer Client-Signatur zur Authentifikation gegenüber server dient. Nach dem Ende des Protokolls liefert client die Ausgabe wobei eine Signatur zur Nachrichtdarstellt. Der Output von server besteht aus der blinden Nachricht und seiner Signatur . Diese Output-Werte werden festgehalten. Die kryptographische Funktionalität des Protokolls IP wird im Abschnitt 3.13 präsentiert.

Im allgemeinen führt client - abhängig von der konkreten Implementierung - eine oder mehrere Transformationen (Camouflage) durch, so daß Server die Nachricht nicht lesen kann. Durch zufällige Transformationsschlüssel chiffriert client verbindungsrelevante Protokolldaten. Client hält die Transformationsschlüssel geheim.

Der Server leistet nur dann eine blinde Signatur, wenn die drei folgenden Bedingungen erfüllt sind (wahlspezifische Ausstellungsbedingungen):

Der Zertifizierungs-Server verwaltet eine Teilnehmerliste, die mindestens aus den Attributen (Id, Name, Teilnahme, öffentlicher Teilnehmerschlüssel) besteht.

Das Attribut Teilnahme nimmt einen Wert der Menge {JA, NEIN}an. Alle Einträge von Teilnahme werden auf den Wert NEIN initialisiert. Die oben beschriebene Verifikation leistet die Prozedur Anstellungsbedingungen, die Zugriffsoperationen auf die Teilnehmerliste durchführt:

Ausstellungsbedingungen(Id, Auth)

Nach positiver Überprüfung der Ausstellungsbedingungen leistet der Server eine blinde Signatur und ändert den korrespondierenden Wert Teilnahme auf JA. Schon bei einer negativen Verifikation terminiert das Protokoll mit entsprechender Fehlermeldung. Der Server sendet das zertifizierte Datum zurück zum Client, der durch eine oder mehrere Rücktransformationen die korrekte Server-Signatur zu seiner ursprünglichen Nachricht wiederherstellt.

3.8.1.3 Verifikation

Siehe Abschnitt 3.7.3.

3.8.1.4 Allgemeine Eigenschaften blinder Signaturen

Das allgemeine blinde Signaturprotokoll zeichnet sich durch drei grundlegende Eigenschaften aus (Chaum, 1985):

Verfügt eine beliebige Instanz über die Menge  und die Protokolldaten des Servers, dann kann kein Paar aus  mit den Teilnehmeridentitäten verknüpft werden. Die Nichtrückverfolgbarkeit gilt auch dann, wenn der Server von der Protokoll-Spezifikation abweicht.

3.8.1.4 Erweitertes blindes Signaturprotokoll

Finden mehrere Wahlen innerhalb eines bestimmten Zeitintervalls (z.B. 1 Jahr) statt, so müßte der Teilnehmer vor jeder Wahl ein blindes Zertifikat anfordern. Dieser Aufwand kann durch eine Erweiterung des blinden Signaturprotokolls reduziert werden, indem der Zertifizierungs-Server im Rahmen einer Protokollausführung simultan mehrere Zertifikate ausstellt. Jedes Zertifikat darf bei genau einer Entscheidung eingesetzt werden - was den Kommunikationsaufwand auf einen Protokollschritt verringert.

Wir definieren

als erweitertes blindes Signaturprotokoll. Der Input von client besteht aus den nachfolgenden Parametern:

Das Schlüsselpaar ,wirdfür die i-te von EMAX Entscheidungen eingesetzt ( Der Ausgabeparameter besteht aus den Werten wobei eine mit generierte Signatur zur Nachricht darstellt Das erweiterte Zertifizierungsprotokoll erfordert keine Modifikation des Schlüsselgenerierungs- und Verifikations-Algorithmus.

3.8.2 Notation im Beta-System

Im Beta-System wird die Ausstattung der LA (siehe Abschnitt 3.3) durch die Mix-Stationen und den Zertifizierungs-Server Z erweitert.Jede LA ist mit NMIX Einheiten versehen. Jede Einheit wird von einer unabhängigen Person einer Betreiberorganisation kontrolliert und besitzt einen öffentlichen Schlüssel und den geheimen Schlüssel Beide Schlüssel sind eindeutig, d.h. es existiert kein Mix einer anderen LA, der das gleiche Schlüsselpaar einsetzt. Die Mix-Einheiten mißtrauen einander wechselseitig. Jeder Zertifizierungs-Server Z verfügt über ein Public-Key-Schlüsselpaar das für genau eine Entscheidung eingesetzt wird.

3.8.3 Vorbereitung

Beim Initialisierungsprotokoll holt Client notwendige Schlüsseldaten aus dem X-500-Verzeichnis. Die mit (*) gekennzeichneten Daten müssen nur einmal geladen werden und bleiben für eine längere Zeitspanne gültig (d.h. für mehrere Entscheidungen):

Wird das erweiterte Zertifizierungsprotokoll eingesetzt, dann lädt Client in einem Schritt alle erforderlichen Daten (Signaturen, Kollektivschlüssel, etc.).
 

3.8.4 Zertifizierungsprotokoll


3.8.5 Erweitertes Zertifizierungsprotokoll

Bevor der Client mehrere Zertifikate anfordern kann, muß dieser die öffentlichen Schlüssel seines Zertifizierungs-Servers vom X-500-Verzeichnis geladen haben.

3.8.6 Wahlprotokoll

Der Administrator des BBS erzeugt vor dem Wahlbeginn eine lokale Liste der berechtigten Teilnehmer Teilnahme läßt die Werte der Menge {JA,NEIN} zu. Alle Listeneinträge von Teilnahme werden auf den Wert NEIN initialisiert. Außerdem nehmen wir an, daß der Algorithmus die für den Mix-Kanal notwendigen Codierungsoperationen durchführt. Jeder Teilnehmer verschlüsselt seine E-Wahlscheine mit Die Funktionalität von wird im nächsten Abschnitt erklärt.

Fehlerhafte Zertifikate markiert A in der öffentlichen Auswertungsliste.

Derzeitige asymmetrische Codierungssysteme verursachen einen um den Faktor bis höheren Rechenaufwand als symmetrische. Wenn der Wahlschein lang ist (z.B. mehrere Wahlen werden in einem Wahlschein zusammengefaßt oder das E-Wahlsystem wird für E-Interviews eingesetzt), dann sollte zur Codierung eine Kombination aus symmetrischem und asymmetrischem Verschlüsselungsverfahren eingesetzt werden. Client chiffriert im Protokollschritt 1 das Votum und zunächst mit einem zufälligen symmetrischen Schlüssel und erhält dadurch Mit dem Kollektivschlüssel verschlüsselt Client den symmetrischen Schlüssel wobei ist.

                 
                  Tabelle 3.1: Wähler-Mix-Signaturen im BBS.
Anzahl der Wähler-Mix-Signaturen Hash-Wert, Wähler-Mix-Signatur, Link zu X-500-Wähler-Daten
1
.. ..
l
.. ..
WN

 

3.8.7 Anonymisierungsprotokoll

David Chaum, der Wegbereiter anonymer Transaktionssysteme, publizierte 1981 das erste Mix-Protokoll, das ein direktes Transformationsschema einsetzt. Client chiffriert seine Nachricht direkt mit den öffentlichen Schlüsseln der Mix-Einheiten (Chaum, 1981). Das direkte Transformationsschema beruht auf einem asymmetrischen Verschlüsselungsschema. Ausgehend von der Nachricht wird die Mix-Codierung nach folgendem Rekursionsschema gebildet:



Alle Zahlen  müssen zufällig gewählt werden. Die Implementierung des direkten Transformationsschemas ist allerdings eine nichttriviale Aufgabe. So wurde gezeigt, daß die Anonymität einer direkten RSA-Implementierung des Chaum-Verfahrens, bei der vor jede Nachricht eine Zufallszahl gehängt wird, durch einen mächtigen aktiven Angriff kompromittiert werden kann (Pfitzmann/Pfitzmann, 1989).

Statt dessen verwenden wir ein indirektes Transformationsschema, welches auf einem hybriden Kryptosystem basiert (Gülcü/Tsudik, 1996). Der Client erzeugt eine Folge zufälliger symmetrischer Schlüssel und chiffriert ausgehend von der Nachricht  nach folgendem Rekursionsschema:


Abbildung 3.16: Codierungsstruktur eines Mix-Paketes.

3.8.7.1 Mix-Protokoll

Im Rahmen des Anonymisierungsprotokolls liest  in periodischen Abständen einen Stapel (fixe Anzahl codierter Wahlscheindaten). Die Nachrichten des Stapels durchlaufen immer die gleiche Anordnung von Mix-Einheiten. Beim indirekten Transformationsschema führen die Mix-Stationen den nachstehenden Dechiffrierungs-Algorithmus aus:

Abbildung 3.17: Operationen der ersten Mix-Einheit.

Da die Mix-Einheiten alle Kommunikationsvorgänge aufzeichnen und per digitaler Signatur bestätigen und jeder Wähler sich vor dem Anonymisierungsvorgang mit einer Unterschrift authentifiziert, kann die Administration keine Stimmen für Nichtwähler abgeben. Arbeitet wenigstens eine Mix-Einheit beim Protokoll ordnungsgemäß, dann ist es praktisch unmöglich, die Korrespondenz zwischen Wähleridentität und zu berechnen.

3.8.7.2 Fehlertoleranz

Die Verfügbarkeit des Mix-Kanals wird allerdings durch den Ausfall einer Mix-Station erschüttert, wodurch das Anonymisierungsprotokoll stillsteht. Daher wird jede Mix-Station dupliziert. Der Fehlertoleranzansatz besteht nun darin, daß der geheime Schlüssel der ausgefallenen Mix-Station einer redundanten Mix-Stationen der gleichen Betreiberorganisation bekannt ist. Im folgenden wird ein Koordinationsprotokoll skizziert, das die beschriebene Fehlertoleranzvariante realisiert. Um eine hohe Umcodierungsgeschwindigkeit trotz des Ausfalls einer Stationen zu erreichen, entschlüsselt auch die Reserve-Station den empfangen Nachrichtenstapel als aktiv redundante Komponente. Fällt eine Station aus, so hat die Reserve-Mix-Einheit die entschlüsselte Folge bereits bestimmt, wodurch Zeitverluste minimiert werden. Die Reserve-Mix-Einheit verifiziert, ob die führende Mix-Einheit ordnungsgemäß funktioniert. Wenn sie innerhalb einer fixen Zeitschranke keine Ausgabedaten liefert, so liegt ein Ausfall vor und ihr Ausgabeschub wird zur nächsten Mix-Station geliefert. Wird ein ausgefallener Mix-Rechner wieder repariert, dann integriert er sich durch Ausführung eines Synchronisationsprotokolls und übernimmt die Aufgaben des Vertreters.

3.8.8 Auswertungsprotokoll

Nach dem Ende der Wahlzeit und nach erfolgter Anonymisierung aller Wahlscheindaten beginnt jeder Dechiffrierungskreis sofort mit dem Wahlschein-Entschlüsselungsprotokoll: Jede Einheit eines Dechiffrierungskreises führt eine Teilentschlüsselung mit ihrem geheimen Teilschlüssel am versiegelten Wahlscheindurch Anwendung des Algorithmus aus. Außerdem zeigt jeder Protokollteilnehmer mittels eines weiteren Algorithmus Beweis, daß seine Entschlüsselung korrekt war, ohne seinen geheimen Teilschlüssel zu enthüllen. Durch den Algorithmus VBeweis vermag jeder Teilnehmer des Dechiffrierungskreises den erbrachten Beweis zu verifizieren. Schließlich kombiniert der Dechiffrierungskreis alle Teilentschlüsselungen durch die Anwendung des Algorithmus . Die genaue kryptographische Realisierung der hier erwähnten Algorithmen wird im letzten Abschnitt dargestellt (siehe Abschnitt 3.12.4). Wenn der Wahlschein gemischt codiert wurde, dann ist ( ist der Wert, der vom Dechiffrierungskreis entschlüsselt wird.). Sonst gilt .

Wenn der Wahlschein gemischt codiert wurde, dann ist (siehe oben). Sonst gilt Dat = Im ersten Fall wird schließlich mit entschlüsselt.

Die Protokollschritte 1 und 2 werden schon während der Wahlzeit für alle Wahlscheine durch die Einheiten vorgenommen und nach Wahlzeitende sofort publiziert, wodurch die Auswertungsgeschwindigkeit gesteigert wird. Insgesamt überträgt jede Einheit des Dechiffrierungskreises nach dem Wahlzeitende ihre Teilentschlüsselungen aller codierten Wahlscheine per Multicasting an alle Einheiten des Dechiffrierungskreises.  muß in der Praxis nur in jenen Fällen sofort ausgeführt werden, wo durch Verknüpfung der Teilentschlüsselungen kein gültiges Wahlscheinformat resultiert, was die Protokolleffizienz steigert. Dies ist der Fall, da davon auszugehen ist, daß die jeweiligen Einheiten des Dechiffrierungskreises ordnungsgemäß arbeiten. Die ausstehenden Verifikationen werden nach der Publikation der Resultate durch den Dechiffrierungskreis vorgenommen. Besitzt der E-Wahlschein kein gültiges Format, dann wird VBEWEIS sofort ausgeführt. Des weiteren ist von der Prämisse auszugehen, daß die überwiegende Mehrzahl der Teilnehmer (etwa 95%) gültige Wahlscheinformate abgeben, da der Client dafür sorgt (auch bei einem Blanko-Wahlschein wird ein gültiges Format übertragen).

Inkorrekte elektronische Wahlscheine, die keine gültige Signatur und/oder Zertifikat enthalten, werden als ungültig markiert und nicht decodiert.

Wenn A sein lokales Auswertungsprotokoll abgeschlossen hat, teilt A im Rahmen des globalen Auswertungsprotokolls das codierte Zwischenresultat der RA mit. Nach der Ermittlung des Gesamtresultates fügt A zur lokalen Auswertungsliste alle decodierten Stimmen hinzu und publiziert das globale Endresultat im BBS.

Tabelle 3.2: Lokale BBS-Auswertungsliste vor dem Wahlzeitende.

Tabelle 3.3: Lokale BBS-Auswertungsliste nach der Auswertung.
 
Einträge der Auswertungsliste Codiertes Votum, decodiertes Votum, Wählersignatur Public-Key,
Zertifikat
1
.. .. ..
L
.. .. ..

3.8.9 Verifikationsprotokoll

Im folgenden bezeichnet WN die Anzahl der Wähler-Mix-Signaturen im BBS, ZN die Anzahl der ausgestellten blinden Zertifikate, AN die Anzahl der Einträge der jeweiligen Auswertungsliste.

3.8.9.1 Verifikationsprotokoll der regionalen Administration

Die RA prüft bei jeder LA, die ihr untergeordnet ist, ob

Beide Bedingungen müssen erfüllt sein, sonst liegt ein Wahlbetrug innerhalb der LA vor.

3.8.9.2 Wähler-Verifikation

Vor Wahlzeitende darf verifizieren, ob seine abgegebenen Wahlscheindaten ordnungsgemäß anonymisiert wurden. Nach dem Wahlzeitende prüft , ob sein Votum im BBS erscheint. Falls sein versiegeltes Votum fehlerhaft ist oder nicht auf der oben beschriebenen Liste auftritt, führt der Wähler mit RA ein Reklamationsprotokoll durch.

3.8.9.3 Wähler-Reklamation vor dem Wahlzeitende

In einer demokratisch orientierten Gesellschaft ist davon auszugehen, daß das Rückverfolgungsprotokoll wegen vertrauenswürdiger Mix-Einheiten kaum benötigt wird. Dieses Protokoll garantiert das Wahlgeheimnis trotz Rückverfolgung und stellt sicher, daß böswillige Mix-Stationen identifiziert werden können, falls die betreffenden Wähler gegenüber der RA nachweisen, wie sie ihre Mix-Codierungen durchführten.

Wird erkannt, daß einzelne Mix-Daten verändert wurden, bedeutet dies nicht unbedingt einen Angriff: Übertragungsfehler zwischen Mix-Einheiten oder andere zufällige Ereignisse könnten zu einer fehlerhaften Anonymisierung führen. Daher enthält jeder Ausgabeschub eine Signatur der jeweiligen Mix-Station. Bei einer fehlerhaften Übertragung (=> inkorrekte digitale Signatur) wird eine automatische Wiederholung des gestörten Schubs durch die Vorgänger-Mix-Einheit durchgeführt. Durch diesen Sicherheitsdienst zur Erkennung der Datenunversehrtheit wird garantiert, daß jeder Wähler eine vorsätzlich inkorrekte Anonymisierung seiner Stimme reklamiert.

3.8.9.4 Wähler-Reklamation nach vollzogener Auswertung

verifiziert über , ob sein Votum  korrekt decodiert wurde. Da die Protokollteilnehmer des kollektiven Dechiffrierungsprotokolls ihre Aktionen wechselseitig kontrollieren, folgt, daß korrekt empfangene codierte E-Wahlscheine stets ordnungsgemäß entschlüsselt werden. Darüber hinaus entschlüsseln die Protokollteilnehmer keinesfalls fehlerhaft empfangene E-Wahlscheine, da diese kein überprüfbares Zertifikat enthalten. Daraus kann kein gültiges Votum hervorgehen. Falls der versiegelte Wahlschein von inkorrekt anonymisiert und fehlerhaft in der Auswertungsliste erscheint, dann führt der Wähler mit RA das anonyme Reklamationsprotokoll durch, um die böswillige Mix-Einheit zu identifizieren - die Geheimhaltung der Stimmabgabe bleibt dabei erhalten. Findet mehr als eine Reklamation statt, so ist es durchführbar, die neuen Pakete der Betroffenen nochmals zu anonymisieren. Falls ausschließlich eine Person Manipulationsvorwürfeerhebt, kann unglücklicherweise keine Mix-Technik eingesetzt werden. Im Fall einer einzigen Reklamation muß auch die Auswirkung der Kombination der Stimme mit allen möglichen Optionen durchgespielt werden. Außerdem ruft die RA alle Teilnehmer der betreffenden LA zur Verifikation ihrer Stimme auf, um ggf. weitere Manipulationen aufzuspüren.

Bei einer einzigen fehlerhaften Stimme können zwei Fälle eintreten:

Im ersten Fall muß die lokale Wahl wiederholt werden. Nachdem die RA mit/ohne Teilnehmer nachgewiesen hat, daß Z und/oder BBS und/oder Mix-Einheiten manipulativ in den Wahlvorgang eingegriffen haben, wird ein strafrechtliches Wahlbetrugsverfahren eingeleitet. Unabhängig von beiden Varianten erfolgte eine absichtliche Informationsmanipulation. Wegen der Existenz gesicherter Beweismittel werden betrügerische Instanzen strafrechtlich verurteilt.