Stemgeheim
From Wij vertrouwen stemcomputers niet
Het stemgeheim wordt in de NEDAP machines gewaarborgd door de stem op een random locatie in het stemgeheugen weg te schrijven. Zodra er twee verschillende stemmen zijn uitgebracht is dus niet meer te bewijzen welke kiezer bij welke stem hoort; net als bij papieren biljetten in een normale stembus. Of zit er toch een addertje onder het gras?
Bedenk bij het lezen van het volgende dat het in de Nederlandse stemburo's normaal is (ik meen zelfs verplicht) om de oproepkaarten te bewaren in de volgorde waarin de kiezers hebben gestemd. Deze volgorde is trouwens voor iedere waarnemer in het stemburo gemakkelijk vast te leggen; de kieswet schrijft voor dat de naam van elke kiezer duidelijk wordt voorgelezen. We gaan er van uit dat iemand wil achterhalen wat een kiezer heeft gestemd. Daarvoor heeft hij/zij de beschikking over de volgorde waarin de kiezers hebben gestemd en de inhoud van het stemgeheugen.
Als de beschrijving die onderaan pagina 66 en bovenaan pagina 77 in Part 3 Technical Aspects and Testing van de Ierse testers staat klopt en bovendien ook van toepassing is op de Nederlandse machines hebben we een probleem. Daar staat het volgende:
The storage location of a vote within each memory location of a ballot module is determined pseudo-randomly, using the timer of the voting machine as a seed in the case of the first vote to be stored. Thereafter each vote is stored either immediately before or immediately after the other votes that have already been stored, with the question of whether it is stored before or after also being determined pseudo-randomly. If, as further votes are stored, a vote cannot be stored before the other votes as determined by this method, then it is stored after them (and vice versa) until it is no longer possible to add votes to the ballot module.
Met memory locations worden de afzonderlijke flash memory chips in de geheugenmodules bedoeld; dus niet adressen in deze geheugens (dit blijkt uit de voorafgaande tekst).
Als ik dit goed lees is de locatie van de eerste stem bepaald door de real-time-clock van de machine (waarom zou de machine een RTC hebben, de timing van de toetsaanslagen van de kiezer zou toch voldoende entropie moeten geven?). Het is uit de tekst niet helemaal duidelijk of per volgende stem wordt geloot of die op de voorgaande, danwel de opvolgende locatie komt, of dat dit eenmalig wordt geloot. In het laatste geval is het stemgeheim totaal niet gewaarborgd. De stemmen staan immers op chronologische of omgekeerd chronologische volgorde. Wie de inhoud van het stemgeheugen kan lezen hoeft immers maar 1 bit informatie goed te deduceren om van alle kiezers vast te stellen wat ze gestemd hebben. We zullen maar aannemen dat ze bij NEDAP niet zo dom zijn geweest.
Als de machine per stem aselect kiest of deze aan de boven- dan wel aan de onderzijde van de lijst wordt toegevoegd is de waarborg van het stemgeheim van de laatste kiezers van de verkiezing niet optimaal beschermd. De laatste stem staat met zekerheid aan helemaal bovenaan, of helemaal onderaan de lijst. De voorlaatste staat aan de andere kant van de lijst, of direct naast de laatste, enz. Als de iemand de stem van de laatste kiezer wil weten kan hijzelf als voorlaatste stemmen en daarbij een ongebruikelijke voorkeurstem uitbrengen. Deze voorkeurstem is gemakkelijk in de lijst terug te vinden. Hij staat immers helemaal aan het begin of eind, of op 1 positie daarvanaf. Staat deze ongebruikelijke voorkeurstem aan het eind, dan staat de allerlaatste stem aan het andere eind. Staat de ongebruikelijke voorkeurstem op 1 positie van het eind, dan staat de laatste stem aan datzelfde eind.
Dit werkt met 100% zekerheid voor het achterhalen van de laatste stem. Op soortgelijke wijze is het mogelijk om de laatste N stemmen te achterhalen, maar dan is niet van al deze stemmen vast te stellen welke van deze stemmen bij welke van de laatste N kiezers hoorde. (Dit kan namelijk alleen voor de stem die direct na ongebruikelijke voorkeurstem is uitgebracht. Bovendien moet bekend zijn hoeveel stemmen er in totaal zijn uitgebracht na die ongebruikelijke voorkeurstem.
Als, tijdens het geleidelijk vullen van het stemgeheugen, de bovengrens of ondergrens wordt bereikt komen alle volgende stemmen op chronologische volgorde in het geheugen. Het is (als de random generator goed is) niet mogelijk te voorspellen of en wanneer dit zal gebeuren. Wel is achteraf vast te stellen of het is gebeurd, alleen is dan niet duidelijk hoeveel stemmen er na dat moment nog zijn uitgebracht. De kans dat het gebeurt is afhankelijk van de fractie van het stemgeheugen dat gevuld raakt. Als er, na het bereiken van de onder- of bovengrens een ongebruikelijke voorkeurstem is uitgebracht door degene die andermans stem wil achterhalen, dan is van alle latere kiezers de stem te achterhalen.
[edit] Nawoord
Inmiddels is duidelijk geworden dat de In Nederland gebruikte methode om stemmen in het geheugen van de Nedaps te schrijven anders is dan de Ierse. De in Nederlands gebruikte software kiest de geheugenlocatie op grond van de tijd die de computer ingeschakeld staat. Als een verkiezing niet langer dan een minuut of vijf duurt is de volgorde van de stemmen eenvoudig en volledig te achterhalen. Echte verkiezingen duren gelukkig veel langer. Hierdoor lijkt het voldoende moeilijk te zijn de volgorde van de stemmen op te maken uit de inhoud van het stemgeheugen.