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
-
eine Nachricht m transformiert, so daß der Server
m
nicht erkennen kann, und
-
nach Protokollende eine gültige Signatur
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:
-
Schlüsselerzeugung,
-
interaktives blindes Signaturprotokoll,
-
Verifikation.
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):
-
Client besitzt das Recht zur Teilnahme.
-
Client erhielt noch keine blinde Signatur.
-
Die Authentifikation des Client ist korrekt.
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)
-
Berechtigung(Id)
verifiziert, ob die angegebene Teilnehmeridentität in
der Liste der berechtigten Wähler existiert.
-
Einmaligkeit(Id)
überprüft in dem mit Id identifizierten
Datensatz, ob das Feld Teilnahme noch keinen Eintrag einer geleisteten
Signatur aufweist.
-
Indentitätsprüfung
verifiziert, ob der Client seine angegebene Identität anhand
der Authentifikation
(Signatur) erfolgreich nachwies.
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):
-
Vollständigkeit: Folgen Client und Server der
Protokoll-Spezifikation, dann erhält Client eine gültige Signatur,
d.h. GÜLTIG.
-
Fälschungssicherheit: Versucht
Client das Protokoll zu betrügen, dann kann er praktisch keine Informationen
gewinnen, um Server-Signaturen zu fälschen.
-
Nichtrückverfolgbarkeit: Allgemein stellt der
Server blinde Signaturen für mehrere Clients aus. Daraus geht eine
Menge von Paaren hervor.
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:
-
Nachrichten
-
öffentliche Schlüsseln des
Servers,
-
geheimer Schlüssel des Client
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):
-
Öffentlicher Schlüssel des Zertifizierungs-Servers..........................................,
-
Zertifikat zum öffentlichen Schlüssel............................................................
(),
-
Öffentliche Schlüssel der Mix-Einheiten........................................................
()*,
-
Zertifikat zu allen Mix-Schlüssel...................................................................
()*,
-
Öffentlicher RA-Schlüssel............................................................................
()*,
-
Zertifikat zum öffentlichen Schlüssel............................................................ *,
-
Öffentlicher BBS-Schlüssel..........................................................................
()*,
-
Zertifikat zum öffentlichen BBS-Schlüssel.....................................................*,
-
Kollektivschlüssel der LA............................................................................(),
-
Signatur des BBS zum Kollektivschlüssel....................................................
.(),
-
Entscheidungsspezifikation..........................................................................(spez),
-
Signatur des BBS zur Entscheidungsspezifikation...........................................(sspez).
Wird das erweiterte Zertifizierungsprotokoll eingesetzt,
dann lädt Client in einem Schritt alle erforderlichen Daten (Signaturen,
Kollektivschlüssel, etc.).
3.8.4 Zertifizierungsprotokoll
-
generiert
ein zufälliges Pseudonym-Schlüsselpaar aus
öffentlichem und geheimem Schlüssel.
-
und
Z
führen
das blinde Signaturprotokoll aus: .
Nach dem Protokollende erhält Client eine gültige
Signatur zu
-
Z sendet die Wähleridentität und
einen Nachweis ,
aus dem hervorgeht, daß er für den Wähler eine blinde Signatur
ausstellte, in eine spezielle Liste des BBS.
-
verifiziert
das erhaltene Zertifikat, indem er ausführt.
Sollte die digitale Signatur fehlerhaft sein, dann protestiert Client,
indem dieser seine(n) Transformationsschlüssel und das Paar zur
RA
sendet.
Dann vergleicht RA die erhaltenen Daten mit dem im BBS aufgezeichneten
Nachweis .
Handelt es sich um ein fehlerhaftes Zertifikat, dann fordert RA
den Zertifizierungs-Server auf, ein neues Zertifikat auszustellen.
-
Nach dem Ende der Zertifizierungsfrist veröffentlicht die
Anzahl der ausgestellten Zertifikate ZN im BBS.
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.
-
generiert
EMAX
Schlüsselpaare
-
und
Z
führen das erweiterte blinde Signaturprotokoll aus
Daraus erhält Client EMAX gültige Zertifikate zu
-
überprüft
alle Zertifikate, indem er ausführt.
-
Nach dem Ende der Zertifizierungsfrist veröffentlicht die
Anzahl der für die j-te Entscheidung ausgestellten Zertifikate und
Nachweise
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.
-
codiert das vom Wähler gewünschte Votum mit
dem öffentlichen Kollektivschlüssel (Die
Zufallszahl
soll Chosen-Plaintext-Angriffe gegen anonymisierte Voten, die noch nicht
decodiert wurden, verhindern (Sicherstellung der Nichtbeeinflußbarkeit)).
-
signiert die codierte Wahlstrategie
-
stellt das Datenpaket zusammen,
führt die für den Mix-Kanal notwendigen Verschlüsselungsoperationen aus.
Auch berechnet den
Hash-Wert und
unterzeichnet .
Wir bezeichnen als
Wähler-Mix-Signatur.
-
sendet zum
BBS.
-
BBS überprüft die Korrektheit von ,
die Berechtigung des Teilnehmers und Einmaligkeit der Stimmabgabe. Außerdem
prüft BBS, ob von
Z
ein
Zertifikat anforderte. Ergeben alle Verifikation ein positives Ergebnis,
dann überträgt BBS das Paket in
eine interne Liste für korrekt authentifizierte Mix-Daten (interne
BBS-Liste).
Nach der Verifikation überträgt BBS das Paket in
einen öffentlich abrufbaren Datenbereich. Dann sendet BBS eine
Empfangsbestätigung und
schub
zurück zum Client. Dabei ist ein
Verweis auf die X-500-Daten des Teilnehmers. (Aus Effizienzgründen
kann auf die Empfangsbestätigung verzichtet werden). Das Datum schub
identifiziert jenen Stapel (Stapelnummer, etc.), der das Paket enthält.
Außerdem vermerkt BBS in seiner Teilnehmerliste, daß
der Wähler eine Stimme abgegeben hat, indem er den entsprechenden
Eintrag von Teilnahme auf den Wert JA setzt. Die erste Mix-Einheit
liest in regelmäßigen Zeitabständen einen konstanten Stapel
chiffrierter Datenpakte von der internen BBS-Liste. Bei negativer
Verifikation publiziert BBS das Paket in
einem öffentlichen Datenbereich für fehlerhaft authentifizierte
Mix-Pakete und fügt seine Signatur hinzu.
-
Die Mix-Stationen führen das Anonymisierungsprotokoll
durch.
-
BBS empfängt von der letzten Mix-Einheit einen
Stapel codierter Wahlscheine, der u.a.
sowie eine Mix-Signatur zum gelieferten Stapel enthält.
-
A überprüft das Zertifikat und
Signatur
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:
-
Die Station dechiffriert
jede im Stapel enthaltene Nachricht. entschlüsselt
den Teil vom
Paket mit
ihrem Schlüssel und
erhält dadurch den symmetrischen Schlüssel mit
dem decodiert
wird. Der daraus resultierende dechiffrierte Wert erscheint
als Zufallszahl. Durch das Entfernen der ersten Verschlüsselungsstufe
wurde die Länge des Mix-Datenpaketes reduziert. Um die konstante Paketlänge
aller Ausgabeschübe aufrechtzuerhalten, muß die
entstandene "Lücke" durch das Anfügen einer zufälligen Zufallszahl
(Zufallsblock) am Ende von schließen.
Die Anzahl der zu ergänzenden Bits entspricht der Länge der asymmetrischen
Codierung eines symmetrischen Schlüssels (siehe Abbildung 3.17). Alle
symmetrischen Schlüsseln haben eine konstante Länge. Damit
sichergestellt wird, daß der hinzugefügte Zufallsblock bei den
Entschlüsselungsoperationen der nachfolgenden Mix-Einheiten keinen
Fehler verursacht, muß der Verschlüsselungs-Algorithmus eine
zentrale Bedingung erfüllen: Die korrekte Entschlüsselung eines
gegebenen Blockes des Mix-Datenpaketes darf nur vom korrekt-entschlüsselten
Inhalt aller vorhergehenden Blöcke abhängen, jedoch keinesfalls
von der Gestalt nachfolgender Blöcke (siehe Gülcü/Tsudik,
1996, S. 9) - tatsächlich erfüllen viele Codierungs-Algorithmen
diese erwünschte Bedingung (Gülcü/Tsudik, 1996, S. 9). Das
aus dem Entschlüsselungs- und Hinzufügungsvorgang resultierende
Paket überträgt in
eine Liste der decodierten Mix-Datenpakete. Wenn alle Pakete des Eingabeschubs
entschlüsselt und bearbeitet wurden, mischt jene
Liste, so daß eine zufällige Ausgabereihenfolge hervorgeht.
-
leisten
sequentiell die gleiche Arbeit. Darüber hinaus wird auch die Signatur
der vorhergehenden Mix-Einheit entfernt.
-
Zuletzt überträgt eine
gemischte und signierte Liste, die das Datenpaket
enthält zum BBS, der die erhaltenen Daten sofort publiziert.
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 .
-
Jede Einheit des
Dechiffrierungskreises berechnet mit ihrem geheimen Zufallsschlüssel eine
Teilentschlüsselung
-
Jede Einheit veröffentlicht und
erbringt einen Nachweis, daß es sich tatsächlich um eine korrekte
Entschlüsselung handelt. Der Teilnehmer zeigt durch einen Beweis die
Korrektheit seiner Operation, ohne dabei seinen geheimen Teilschlüssel zu
enthüllen.
-
Jede Einheit kann prüfen, ob der Beweis korrekt ist,
indem diese die publizierten Werte prüft,
d.h. sie verifiziert für
-
Dann können alle Protokollteilnehmer die Entschlüsselung
kombinieren und erhalten
-
Dat =
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.
-
Nachdem
korrekt entschlüsselt wurde, überträgt A die Stimmen in
eine interne Liste.
-
wertet die gültigen Stimmen aus und ordnet diese nach den Wahloptionen.
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.
Einträge der Auswertungsliste |
Codiertes Votum,
Wählersignatur |
Public-Key,
Zertifikat |
1 |
|
|
.. |
.. |
.. |
L |
|
|
.. |
.. |
.. |
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
-
(WN = AN) und
-
ist.
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.
-
Ein Client ,
der bei der Verifikation eine Manipulation feststellte, sendet das Paket mit
seiner Signatur zur RA.
-
Die RA überprüft, ob der Stapel, der das
reklamierte Paket enthält, schon vollständig anonymisiert wurde.
Bei einer negativen Verifikation terminiert das Protokoll.
-
chiffriert
die zur Mix-Codierung verwendeten symmetrischen Zufallsschlüssel mit
einem symmetrischen Schlüssel der
mit dem öffentlichen Schlüssel codiert
wird, d.h.
und .
-
erzeugt
eine Signatur und
überträgt an
die RA, wobei RKL die Reklamationsnachricht darstellt. Damit
kann die RA die Entschlüsselungskette des betreffenden Paketes verfolgen
und analysieren. Betrügerische Mix-Einheiten lassen sich rückverfolgen,
indem RA ihre Ergebnisse mit den intern aufgezeichneten Mix-Protokolldaten
(Eingabe- u. Ausgabeschübe) vergleicht. Die Geheimhaltung der Stimmabgabe
geht nicht verloren, da niemand den rückverfolgten verschlüsselten
E-Wahlschein entschlüsseln kann, solange mindestens eine Einheit des
Dechiffrierungskreises korrekt arbeitet. Die böswilligen Mix-Einheiten
werden mithin eindeutig identifiziert und nach der Wahl strafrechtlich
verurteilt. Die RA entfernt die verschlüsselten Wahldaten des
Teilnehmers aus dem BBS. Der Betroffene erhält von RA
das Recht, nochmals eine Stimme abzugeben (siehe Wahlprotokoll), sofern
eine oder mehrere Mix-Einheiten das betreffende Paket manipulierten. Findet
die RA hingegen heraus, daß der reklamierende Teilnehmer selbst
ein ungültiges Paket sendete, dann gilt der Wahlschein als ungültig
und eine erneute Transmission wird nicht mehr erlaubt. Das Offenlegen der
Mix-Codierungen ist hier erforderlich, da RA nicht weiß, ob
der Wähler durch Manipulieren an seinem Client-System einen fehlerhaften
Wahlschein sendete oder Einheiten der LA manipulativ einwirkten.
RA
sammelt,
verifiziert und veröffentlicht alle empfangenen Reklamationen in ihrem
BBS.
-
RA fordert die Mix-Einheiten auf, die neuen Datenpakete
erneut zu anonymisieren. Falls nur eine Reklamation auftritt, wird dieses
neue Datenpaket zusammen mit einem Stapel der noch nicht anonymisierten
Mix-Pakete über den Mix-Kanal gesendet. Wir nehmen an, daß zu
jeder Protokollzeit genügend Pakete zur Anonymisierung bereitstehen
- BBS muß daher einen letzten Stapel für den Fall aufbewahren,
daß genau eine Reklamation gleichzeitig mit dem Wahlzeitende stattfindet.
Dadurch wird es möglich, auch diese Reklamation zu anonymisieren.
-
Die Mix-Stationen exekutieren das Anonymisierungsprotokoll
und die letzte Mix-Station überträgt das Resultat zum BBS.
-
Stellt der Wähler erst nach der kollektiven Entschlüsselung
der codierten Wahlscheine fest, daß sein Votum inkorrekt im Ergebnis
erscheint, so kann dieser durch Reklamation seine symmetrischen Mix-Schlüssel
gegenüber RA preisgeben, ohne die Geheimhaltung seiner Stimmabgabe
zu beeinträchtigen. Dadurch werden böswillige Mix-Stationen identifiziert
und nachträglich verurteilt. Es wird hierbei angenommen, daß
mindestens eine Einheit im Dechiffrierungskreis ordnungsgemäß
funktioniert, wodurch ein Betrug in der gemeinsamen Entschlüsselungsphase
praktisch auszuschließen ist.
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:
-
Die Stimme hat das theoretische Potential, das Gesamtergebnis
zu verändern.
-
Das Wahlresultat bleibt unverändert.
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.