![]() |
Evaluierung der Lehrevon Prof. Jürgen Plate |
Einige Randbedingungen machen die Sache jedoch komplexer. Es sollen ja nicht Hinz und Kunz eine Lehrveranstaltung bewerten, sondern die Studenten, die daran teilgenommen haben. Also muß ein Autorisierungssystem hinzugefügt werden. Das hätten wir ja bereits, beispielsweise in Form von Username und Passwort für den Hochschul-Internetzugang oder auch mit den Praktikums-Accounts. Jedoch ist damit die Bewertung der Lehrveranstaltung nicht mehr anonym - und das sollte sie sein. Um einen Lösungsweg für dieses Problem zu finden, greifen wir auf einen Artikel von Lincoln D. Stein aus dem Perl-Journal zurück, der seinerseits auf einer Veröffentlichung von Kryptologie-Papst Bruce Schneier beruht. In diesem Artikel geht es um die Realisierung eines sicheren Internet-Wahlverfahrens:
Conventional paper ballots satisfy requirement 1 by voter registration, a
process that ensures that only American citizens of a certain age can vote.
Requirements 2 and 4 are satisfied by crossing the registered voter's name
off a list when the voter enters the polling location, and 3 is satisfied by
using an anonymous ballot. The last two requirements, however, are not completely
satisfied by paper ballots too.
Schneier's book describes several cryptographic protocols which meet
these six requirements for secure elections. Some of them are quite elaborate
and require new software at the voter's side of the connection. Here
we will use one of the simpler ones that happens to be well suited
for web-based voting.
This protocol requires two independent central facilities to work, called
the CEA and the CLA. The CEA is the Central Enumeration Agency. It is responsible
for collecting and tallying ballots, and publishing the results on election
night. The CLA is the Central Legitimization Agency. It is responsible for
registering and credentialing voters.
Dear Registered Voter, Attached is your voter registration number. PLEASE KEEP A COPY OF THIS E-MAIL; YOU WILL NEED IT IN ORDER TO VOTE. DO NOT BEND, FOLD OR SPINDLE. --REGISTRATION-START-- 8334290304185989711211356 0784480602526249967749323 7190985476311629502773466 9927297350189474428770582 --REGISTRATION-END--
The privacy of the ballot is ensured by the separation of the CLA and the
CEA. One facility knows the identity of the voters, but not who they voted for.
The other has access to their vote, but not their identity.
This protocol discourages election fraud in a number of ways. If a registered
voter tries to vote twice, he will be caught in step 5. We can discourage non-registered
voters from trying to guess valid VRNs by using large random numbers (in this
example, we use 100-digit numbers).
If the CEA itself tries to cheat by stuffing the ballot box or "losing"
ballots, this can be detected in step 8. By publishing a list of CNs and their
votes, the protocol allows voters to check the list to make sure that their
votes were tallied correctly.
There are still ways to defraud this protocol. For example, the CEA and CLA can collude to figure out the identity of a voter; if voting is being done over the web, the CEA can use the voter's IP address to figure out who he is. The first of these problems can be addressed by election auditors and statutory law. The second can be addressed using proxy servers or by having the balloting take place in central polling places equipped with ATM-like web browsers. It is also important to note that the protocol described here is a slight departure from the one described by Schneier. The original protocol is built along an email model, in which the voter himself generates the CN, rather than letting the CEA do it for him...
Für das aktuelle Projekt wird auf die Bestätigung der Wahl an den Wähler verzichtet (wir wollen's ja nicht übertreiben) - also auf die letzten beiden der vorgenannten Punkte. Es geht darum,
Zur Lösung können die oben geschilderten Prinzipien angewendet werden.
Es versteht sich von selbst, daß die Teile I und III nur von der jeweils berechtigten Person aufgerufen werden dürfen.
Ausserdem wird zusammen mit beliebig vielen RN auch eine eindeutige ID erzeugen, die dem Abrufen der Ergebnisse dient. In einer Datenbank werden die RN gespeichert, um später die Wahlberechtigung überprüfen zu können. Nach der Wahl verfällt der jeweilige Datensatz; jeder Studierende kann also nur einmal abstimmen.
Die Lehrpersonen-ID wird auf die gleiche Weise erzeugt, jedoch in einer zweiten Datei gespeichert. Auf diese Weise kann man sicherstellen, daß nur die berechtigte Lehrperson die Ergebnisse abrufen kann und nicht ein Kollege oder gar ein Student.
Als Interface dient ein Formular, das die Auswahl von Lehrperson und Fach sowie die Eingabe der gewünschten Anzahl der zu generierenden RN erlaubt. Das Skript zu diesem Formular gibt die Lehrpersonen-ID und entsprechende Anzahl von RN-"Schnipseln" als HTML-Antwort aus. Die kann dann entweder zur weiteren Verarbeitung abgespeichert oder ausgedruckt und zerschnitten werden.
Die folgenden Dateien sind das Ergebnis der Gruppenarbeit:
Bei der Akkreditierung für den Bachelorstudiengang Elektrotechnik und Informationstechnik sowie für den Masterstudiengang Electrical Engineering wurde eine anonymisierte Evaluierung explizit gefordert, zur Auswahl stehen das Ausfüllen der Papier-Fragebögen und Abgabe derselben bei der Studiendekanin (nicht bei der entsprechenden Lehrperson) oder ein elektronisches Verfahren wie dieses hier.
Die Programme wurden nach einem ersten Probelauf noch leicht modifiziert. Neben "kosmetischen" Änderungen wurde ein Problem in der Ausgabe behoben: Da manche Browser die als Histogramm-Balken zweckentfremdeten HTML-Tabellen nicht gedruckt haben, wenn die Option "Hintergrund auch drucken" im Browser abgeschaltet war, arbeitet die jetzige Produktions-Version mit einer Grafikausgabe. Eine schmale Grafik (GIF-Bild) wird jeweils passend "gedehnt" (siehe Quelltext des Programms).
Damit das System auch von anderen Fachbereichen/Fakultäten genutzt werden kann, wurde es dahingehend erweitert. Beim Generieren der Wahlzettel wird nun zuerst der Fachbereich ausgewählt. Diese Information sorgt dann für die Bereitstellung der passenden Dozenten- und Fächerlisten. Ebenso hat jeder Fachbereich und jeder Studiendekan ein eigenes Passwort.