Ein König für Deutschland
enttäuschender Einfachheit – oder aber von überwältigender Komplexität. Auf jeden Fall nie so, wie sie erscheinen.«
»So, wie Sie das beschreiben, klingt es, als könnte ich das auch.«
»Ich würde Ihnen empfehlen, erst mit einer Person Ihres Vertrauens zu üben, ehe Sie es in einem ganzen Saal versuchen. Ansonsten, ja, zweifellos.« Zantini lächelte dünn. »Manchmal besteht die Kunst darin, etwas schwierig aussehen zu lassen. Ich nehme an, das ist beim Programmieren auch nicht anders, oder?«
Was den Wahlcomputer anging, war sich Vincent noch nicht sicher, ob das System nur schwierig zu hacken aussah oder wirklich schwierig zu hacken war .
Beim Konzept der Firma Nedap spielten verschiedene Bestandteile ineinander. In einem typischen Wahllokal wurden mehrere Wahlcomputer aufgestellt, wobei man für jedes Gerät außerdem ein sogenanntes Stimmenmodul benötigte, ein kleines schwarzes Kästchen mit einer Anschlussbuchse, die auf die Stecker einer Programmier- und Leseeinheit passte, die wiederum 35 an einen PC angeschlossen war. Auf diesem war ein Programm installiert, mit dessen Hilfe man die Stimmenmodule für die jeweilige Wahl programmierte: Das geschah, indem man die Namen der Parteien und Kandidaten so eingab, wie sie nachher auf Anzeigen und Ausdrucken erscheinen sollten.
Der NEDAP funktionierte nur, wenn das Stimmenmodul eingesteckt war, auf dem auch die abgegebenen Stimmen abgelegt wurden. Nach Ende der Wahl konnte man an jedem Wahlcomputer eine Ergebnisliste ausdrucken, das Stimmenmodul entnehmenund die darin gespeicherten Werte über das Auslesemodul an den PC übertragen, der alle Stimmen aufaddierte 36 . Zusätzlich konnte man die Stimmenmodule versiegeln und aufbewahren.
Daran hatte Vincent eine Weile zu grübeln. Der Schlüssel waren die Stimmenmodule. Wie immer er den Hack letzten Endes durchführte, am Ende mussten in den Stimmenmodulen genau die Ergebnisse stehen, die er haben wollte.
Er zerlegte eines der Stimmenmodule und zeichnete den Schaltplan auf. Ein Modul enthielt zwei Flash-Speicherchips und ein paar integrierte Schaltkreise 37 , und das Ganze sah geradezu bestürzend solide und durchdacht aus.
Andererseits war jedes System zu hacken. Axiom Nummer 1 und bisher noch nie widerlegt: Ein Hack scheitert nicht an dem betreffenden System, sondern an den Fähigkeiten des Hackers.
Das war die Herausforderung.
Vincent installierte das offizielle Wartungsprogramm auf einem seiner Rechner, schloss das Programmier- und Auslesemodul daran an und steckte ein anderes Stimmenmodul ein. Mit einem Sniffer 38 entschlüsselte er, wie das Stimmenmodul anzusteuern war und wie und wo es die Daten ablegte, die es empfing.
Da hatte sich jemand sehr gründlich Gedanken gemacht. Jede Stimme wurde in vier Kopien abgespeichert, jede mit einer Hamming-Code Fehlerkorrektur 39 versehen, sodass Falschauszählungen extrem unwahrscheinlich wurden.
Und – das Stimmenmodul war so konstruiert, dass von derWahlmaschine aus jede Stimme nur ein einziges Mal geschrieben werden konnte 40 !
Diese Erkenntnis traf Vincent wie ein Schock. Er sprang auf, ging ziellos durchs Haus, goss sich in der Küche ein Glas Cola ein, um es nach dem ersten Schluck wegzustellen. Er starrte Löcher in Wände, murmelte Flüche, kehrte ins Arbeitszimmer zurück und ging alles noch einmal durch. Mit demselben Ergebnis.
Natürlich konnte er sein Programm falsche Voten in das Stimmenmodul schreiben lassen. Das war einfach. Jemand, der für Partei A stimmte, bekam angezeigt: »Sie haben für Partei A gestimmt« – aber das hinderte einen ja nicht daran, trotzdem eine Stimme für Partei B abzuspeichern.
Bloß vertrug sich das nicht mit Zantinis Forderung nach einem »doppelten Boden«, denn dieser Schwindel flog auf, sobald jemand das Gerät zu Testzwecken benutzte. Der Betreffende würde eine Liste abarbeiten – 30 Stimmen für A, 20 Stimmen für B zum Beispiel –, und wenn die Auszählung davon abwich, war klar, dass etwas nicht stimmte.
Das Programm musste also unterschiedlich arbeiten können, je nachdem, ob eine Testwahl stattfand oder eine echte Wahl. Das war kein grundsätzliches Problem; dass ein Programm je nach Bedarf mal dieses, mal jenes Verhalten an den Tag legte, war sozusagen das Grundprinzip des Programmierens schlechthin. Auch hatte Vincent etliche Ideen, wie und woran sein Programm feststellen würde, dass es getestet wurde: Beginnend bei dem simplenKniff, einfach erst mit dem Falschspielen anzufangen, wenn eine
Weitere Kostenlose Bücher