3.10
Allgemeine Protokolle
Die nachfolgenden allgemeinen Protokolle werden von den
Alpha-, Beta-, Gamma-Systemen eingesetzt.
3.10.1 Session-Key-Erzeugung
Den Session-Key benützen die Administrationen für
die Dauer einer Entscheidung zur chiffrierten Übertragung der Teilresultate.
Die NA erzeugt einen zufälligen Session-Key session und
codiert diesen mit dem korrespondierenden Schlüssel der jeweiligen
RA,
d.h.
für
NA
signiert
und
erhält
.
Das Paar
wird
an die
gesendet.
Diese verifiziert die Signatur und dechiffriert den Session-Key.
Dann verschlüsselt diese session für jede LA mit
dem öffentlichen Schlüssel des Auswertungs-Servers, fügt
ihre Signatur hinzu und sendet die Daten an A. Nach dem Ende
des Protokolls verfügt jede Administration über den Schlüssel
session.
Bei internationalen (landesweiten) Wahlen definiert IA (BLA)
den Session-Key. Die Verbreitung von session vollzieht sich nach
dem gerade beschriebenen Top-Down-Schema.
3.10.2 Globales
Auswertungsprotokoll
-
Nachdem LA ihr lokales Auswertungsprotokoll abgeschlossen
hat, erzeugt
A eine Liste
,
die
alle Teilergebnisse der jeweiligen Optionen enthält. Anschließend
wird diese Liste
signiert,
wobei
die
Identifizierungsnummer der LA darstellt.
-
A codiert sowohl die Liste als auch die Signatur mit
dem Schlüssel
session,
erhält
und
sendet
an
RA.
-
Nachdem RA ihr Auswertungsprotokoll abgeschlossen
hat, erzeugt diese eine Liste
,
die
alle Teilergebnisse der jeweiligen Optionen enthält. Anschließend
wird diese Liste
signiert,
wobei
die
Identifizierungsnummer der RA darstellt.
-
RA codiert sowohl die Liste als auch die Signatur
mit dem Schlüssel
session,
erhält
und
sendet
an
NA.
-
Die NA entschlüsselt die empfangenen Daten, wertet
die Teilergebnisse der RAen aus, und berechnet hieraus das nationale
Resultat. Dann signiert NA ihr vorläufiges Ergebnis NA_Ergebnis
und sendet die mit dem Session-Key codierten Daten
via Multicast-Transmission an alle RAen.
bezeichnet
die Identifizierungsnummer der nationalen Administration.
-
Nach der Verifikation der erhaltenen Daten fügt RA
ihre Signatur hinzu und überträgt
via
Multicast-Transmission an die BBS-Einheiten der LAen.
-
Zeitgleich veröffentlichen alle LAen das Gesamtresultat
sowie ihre Auswertungslisten, damit jeder Teilnehmer seine Stimmabgabe
verifizieren kann.
-
Anschließend startet jede RA ihr Verifikationsprotokoll.
-
Nach Ende der Überprüfungsphase sendet jede RA
eine Signatur zur Bestätigung des Teilresultates an NA. Alle
Signaturen der lokalen regionalen und nationalen Administrationen werden
von NA durch eine Multicast-Transmission verbreitet. Dadurch kann
jede LA die im Abschnitt 3.6 spezifizierten Entscheidungdaten in
ihrem BBS darstellen.
Findet eine landesweite Wahl statt, dann steht die BLA
an der Spitze des E-Wahlbaums. Die BLA führt die gleichen Aufgaben
wie eine NA durch. Die Durchführung internationaler Wahlen
erfordert eine ergänzende Modifikation des fünften Protokollschrittes.
Jede NA überträgt ihr codiertes nationales Resultat
zunächst
zur IA, die daraus das internationale Gesamtergebnis IA_Ergebnis
gewinnt.
Die IA berechnet

und sendet
via Multicast-Übertragung an die NAen, welche die Daten an
die RA weitersenden.
bezeichnet die Identifizierungsnummer der IA. Die weitere Ergebnisverbreitung
läuft nach den Protokollschritten (5-9) ab.
3.10.3 Administrator-Authentifikation
Jedes starke Authentifizierungsprotokoll kann eingesetzt
werden (siehe Schneier, 1996).
3.10.4 Verwaltung
der Teilnehmerliste
Vor Wahlbeginn muß jede LA über eine
Liste der ihr zugeordneten Teilnehmer (Teilnehmerliste) verfügen,
um die Authentifikations- und Gleichheitsprüfung durchführen
zu können. Bei lokalen Wahlen, die auf einer einzigen Administration
basieren, kann ein beliebiges Listenformat benützt werden. Eine nationale
bzw. internationale Systeminfrastruktur mit vielen dezentralen LAen
erfordert
ein standardisiertes Format. Bei der Erstellung einer Teilnehmerliste ist
darauf zu achten, daß jeder Wähler genau einer LA zugeordnet
wird. Eine Methode der Teilnehmerlisten-Verwaltung, beruht auf der Nutzung
eines Netzdienstes, der
-
standardisierte und einheitliche Operationen (z.B. Listenmodifikation)
erlaubt,
-
die Eigenschaften eines verteilten Dienstes erfüllt
(z.B. von jedem Netzknoten abrufbar),
-
die Schreibzugriffe durch kryptographisch starke Authentifikationmechanismen
sichert.
Der CCITT X.500-Verzeichnisdienst erfüllt beispielsweise
diese Anforderungen (Riera/Borrell/Rifà, 1997). Ein Anwender tritt
mit X.500 über den Directory User Agent (DUA) in Verbindung, der wiederum
mit dem entsprechenden Directory Server Agent (DSA) kommuniziert. Die gesamten
Datenbestände sind auf viele DSA verteilt, wobei jeder einen
Teilbestand verwaltet. Zusätzlich weiß eine DSA, welcher andere
Server bei der Suche weiterhelfen kann, wenn die gesuchte Information nicht
vorliegt. Durch lokale Informationsspiegelung läßt sich die
Zugriffszeit des Dienstes optimieren.
Der X.500-Datenbestand ist baumartig organisiert (Directory
Information Tree, DIT): Ausgehend von einer supranationalen Wurzel verzweigen
die Teilbäume in Nationalstaaten, Organisationen und Unterorganisationen.An
der Position der Blätter erscheinen die Dienst- bzw. Personalinformationen.
Die Kryptographen Riera, Borrell und Rifà schlugen vor, X.500 um
einen Teilbaum zur Verwaltung der Teilnehmerliste zu ergänzen (Riera/Borrell/Rifà,
1997). Jede nationale Administration erzeugt einen Teilbaum und hat somit
den Status der Naming Authority. Die NA definiert die Verzeichnisstruktur
(Naming Structure). Das Root-Verzeichnis besteht aus Verweisen (Links)
zu den Einträgen der NAen. Die Nachfolger der NAen sind
die RAen, gefolgt von den LAen. An den Blättern erscheinen
die Wählerinformationen.
Abbildung 3.18: Baumstruktur der Teilnehmerliste.
C bezeichnet die Nation, O die Organisation
NA
(Organization),
OU die Unterorganisation RA (OrganizationalUnit),
LA
die lokale Administration und CN die Teilnehmerattribute. Eine Kette
von Kanten bildet einen sogenannten Distinguished Name im DIT: Ausgehend
von der Wurzel kann jeder Knoten eindeutig identifiziert werden. Die Attribute
eines Knotens sind änderbar, wenn die modifizierende Instanz über
die in der Zugriffskontrolliste (Access Control List) gesicherten Privilegien
verfügt. Um das Problem einer gleichmäßigen Zuordnung von
Wählern und Administrationen zu lösen, können unterschiedliche
Strategien verfolgt werden. Der geographische Ansatz macht die Zuteilung
vom Wohnsitz des Teilnehmers abhängig. Wähler lassen sich aber
auch aufgrund der Nutzung eines bestimmen Netzwerks (z.B. LAN) zusammenfassen.
3.10.4.1 X.500-Objekt-Einträge
Authentifizierte Zugriffe auf X.500-Einträge kontrolliert
der X.509-Dienst (Riera/Borrell/Rifà, 1997). Die CCITT X.509-Empfehlung
beinhaltet auch starke Authentifikationsmechanismen, die auf speziellen
Krypto-Protokollen basieren (vgl. Schneier, 1996, S. 652). Im folgenden
definieren wir die Verzeichnisdaten der X.500-Einträge.
Die NA ist im Verzeichnis durch Objekte
der Klassen Organization und Strong-AuthenticationUser vertreten und besitzt
mindestens folgende Einträge:
-
Identifikation der nationalen Administration..........................................(
),
-
öffentlicher Schlüssel..........................................................................(
),
-
Zertifikat...........................................................................................
.
Die Daten der NA müssen vor Updates, Löschung
und Modifikation der Naming-Struktur durch unautorisierte Personen geschützt
werden. Will die NA ihre X.500-Einträge ändern, so muß
sie ihren Zugriff durch eine mit dem Schlüssel
ausgeführte Signatur bestätigen. Alle Teilnehmer dürfen
Leseoperation oder Vergleiche durchführen. Jede NA hat die
Rechte, ihre nationale Naming-Struktur zu modifizieren. Bei internationalen
Wahlen verfügt IA über dieselbe Datenstruktur (Identifikation
der IA, öffentlicher Schlüssel, Zertifikat) wie NA.
Ihre Daten können im X-500-Root-Verzeichnis abgelegt werden. Nur IA
darf
die eigenen Daten löschen und verändern.Die RA ist durch
Objekte der Klassen OrganizationalUnit und StrongAuthentificationUser vertreten
und verfügt über nachfolgende Daten:
-
Identifikation der regionalen Administration........................................
,
-
Öffentlicher Schlüssel.......................................................................(
),
-
Zertifikat.........................................................................................
.
Die RA besitzt dieselben Rechte wie die NA,
darf jedoch die Naming-Struktur des Baumes nicht ändern. RA darf
ihre eigenen Attribute modifizieren.
Die lokale Administration ist durch Objekte der Klassen
LokaleAdministration und StrongAuthentificationUser repräsentiert:
-
Identifikation der lokalen Administration ............................................
,
-
Zustand der Entscheidung..................................................................(Status),
-
Öffentlicher Schlüssel des Zertifizierungs-Server.................................(
),
-
Zertifikat des Zertifizierungs-Server....................................................(
),
-
Öffentlicher Schlüssel des Auswertungs-Server....................................(
),
-
Zertifikat des Auswertungs-Server.....................................................
,
-
Öffentlicher Schlüssel des BBS..........................................................(
),
-
Zertifikat des BBS.............................................................................(
),
-
Kollektivschlüssel ............................................................................
(*),
-
Signatur von BBS zum Kollektivschlüssel...........................................
(*),
-
Öffentliche Schlüssel der Mix-Einheiten.............................................(
),
-
Zertifikat der Mix-Schlüssel..............................................................(
),
-
Entscheidungsspezifikation................................................................(spez),
-
Signatur des BBS zur Entscheidungsspezifikation................................(sspez).
Die mit (*) markierten Einträge werden im Gamma-System
erst nach der Publikation des Resultates veröffentlicht.
Das Zertifikat der Mix-Schlüssel besteht aus einer
Signatur der
RA
zu den öffentlichen Mix-Schlüssel eines
anonymen Kanals, d.h.
Status
nimmt Werte der Menge {OFFEN, GESCHLOSSEN} an und zeigt den Zustand
der Wahl der jeweiligen LA an. Nach dem Ende der Wahlzeit setzt
LA
die Variable Status vom initialisierten Wert OFFEN
auf GESCHLOSSEN.
Das Schreib- und Änderungsrecht (modifizieren, löschen,
einfügen) der LA-Einträge hat LA-BBS. Alle weiteren
Beteiligten dürfen Vergleiche sowie Leseoperationen durchführen.
Die Blätter repräsentieren die Teilnehmer und
sind mit den Objekten der Klassen Person und StrongAuthentificationUservertreten.
Der
Wähler besitzt nachfolgende Einträge:
-
Identifikation des Teilnehmers..................(
),
-
öffentlicher Schlüssel................................(
),
-
Zertifikat................................................
,
-
öffentlicher Schlüssel der Chipkarte.........(
).
Der LA-BBS besitzt das Exklusivrecht zur Modifikation
ihrer Wählerdaten oder zur Hinzufügung neuer Teilnehmer. Z
und BBS der lokalen Administration verwalten eine lokale Kopie der
Teilnehmerliste. Nur die jeweiligen Administratoren sollten Änderungen
der internen Teilnehmerliste vornehmen dürfen.
3.10.5 Schlüsselverwaltung
Ein Trust-Center unterzeichnet die öffentlichen Schlüssel
aller Beteiligten. Alle zertifizierten Schlüssel bleiben - abhängig
zum erwünschten Sicherheitsniveau - eine vorgegebene Zeitspanne gültig.
Gleiches gilt für die Schlüssel der Mix-Einheiten. Sobald ein
Administrator ausgewechselt bzw. entlassen wird, sollten neue Schlüsselpaare
generiert und die alten Rechte entzogen werden.
Der BBS-Administrator hinterlegt die Teilnehmerschlüssel
im X-500. Jeder Teilnehmer sollte einen solchen zertifizierten Schlüssel
besitzen. Verfügt er dennoch über keinen öffentlichen Schlüssel,
dann muß er ein Zertifikat vom Trust-Center anfordern und
zum BBS übertragen. Für diejenigen Wähler, die mehrere
zertifizierte öffentliche Schlüssel besitzen, hat LA genau
einen auszuwählen und im X-500 einzutragen.
Damit die Wähler fehlerhafte Einträge vor Beginn
des Zertifizierungsprotokolls beanstanden können, sollte nach Publikation,
Modifikation, Erweiterung, Update der X-500-Daten eine Reklamationsperiode
gewährleistet werden. Bei Reklamationen hat BBS für die
sofortige Korrektur fehlerhafter Einträge zu sorgen.
Nach dem Ende der Wahl verschlüsseln die Administratoren
(Betreiberorganisationen) der jeweiligen Einheiten (A, Z,
BBS,
Mix)
ihre geheimen Schlüssel (und alle weiteren geheimen Wahldaten) durch
Anwendung einer One-Time-Pad-Codierung (Schneier, 1996, S. 17). Die Administratoren
können ihre Zufallsbits für die Codierung, die sie unbedingt
geheim halten, auf einer CD-ROM speichern. Nach der Wahl nehmen alle Administratoren
ihre CD-ROMs (mit den Pads) mit, damit niemand die geheimen Wahldaten entschlüsseln
kann. Dies gilt insbesondere für die Administratoren der Mix-Einheiten.
Öffentliche Wahldaten werden zu Prüfzwecken auch auf CD-ROM dokumentiert.
Die geheimen CD-ROMs (mit eventuellen Sicherheitskopien) können beispielsweise
in den Panzerschränken der Administratoren aufbewahrt werden.





