Personal tools

Internetstemmen met RIES onder de loep

From Wij vertrouwen stemcomputers niet


De komende verkiezingen wordt een experiment met internetstemmen uitgevoerd voor kiezers die in het buitenland vertoeven. In 2004 is voor de verkiezing van het Europees parlement een vergelijkbaar experiment uitgevoerd, maar deze keer wordt andere software gebruikt. Het Ministerie van Binnenlandse Zaken heeft gekozen voor het RIES systeem. RIES staat voor "Rijnland Internet Election Systeem" en is met succes toegepast voor de verkiezingen van de waterschappen.

Robert de Vries, adviseur van het Ministerie en blogger op de site van de Computable schreef dat RIES volledig achteraf controleerbaar is en daarom veilig is. Het is daarom tijd om het systeem eens onder de loep te nemen en te kijken of die belofte waar gemaakt wordt.

Alvorens te kijken naar hoe het systeem werkt en of het veilig is, zal ik eerste de risico’s noemen.

Fraude

Het grote gevaar bij landelijke invoering van internetstemmen is dat alles vanuit één centrale plaats geregeld wordt. Dat betekent dat als er een manier om fraude te plegen gevonden wordt, er meteen de mogelijkheid bestaat om op grote schaal fraude te plegen. Dit in tegenstelling tot stemmen met potlood en papier in een stemlokaal. Hierbij gaat veel mis en er kan makkelijk op lokaal niveau wat gefraudeerd worden, maar het is bijzonder moeilijk om op grote schaal fraude te plegen.

Het plegen van fraude via internetstemmen waarbij geen personen van de verkiezingsorganisatie zijn betrokken (externe fraude), zal vrijwel onmogelijk zijn als het internetstemmensysteem een basis kwaliteit heeft. Als de bekende veiligheidsproblemen geadresseerd zijn, dan komt men van buitenaf niet zomaar in het systeem.

Bij deze analyse wil ik met name uitgaan van fraude waarbij personen van de verkiezingsorganisatie wel zijn betrokken (interne fraude). Voor sommige mensen lijkt dit misschien vreemd, maar dat is het niet. Bij banken is interne fraude een groter probleem dan externe fraude. En ook bij verkiezingsfraude met potlood en papier, blijkt dat er vrijwel altijd mensen van het stembureau betrokken zijn. Grootschalige fraude (in Mexico of de communistische landen) wordt meestal georganiseerd vanuit het Ministerie van Binnenlandse Zaken.

De beweringen ten aanzien RIES suggereren dat interne fraude uitgesloten is, omdat achteraf alles te controleren is. Mocht dit niet helemaal waar zijn, dan is fraude met een complot mogelijk. Een complot wordt echter onwaarschijnlijker naarmate meer mensen in het complot nodig zijn om het te laten werken. Het systeem heeft dan een bepaalde interne veiligheid als voor fraude twee personen uit verschillende afdelingen nodig zijn om de fraude te plegen (dit soort eisen zijn vrij normaal binnen een bank). Ik zal het RIES ten aanzien van fraude uit dit oogpunt bekijken. Dus bepalen of controle door burgers of organisaties mogelijk is en als die niet mogelijk is hoeveel personen binnen de organisatie nodig zijn om fraude te plegen.

Welke eisen ten aanzien van veiligheid uiteindelijk gesteld worden, is deels een vraag die de politieke moet beantwoorden. Of we afhankelijk van 2 personen willen zijn of de controle van de burger, daar kunnen de meningen over verschillen. Naar alle redelijkheid kan echter gezegd worden, dat de integriteit laten afhangen van 1 persoon onaanvaardbaar is.

De kans op interne fraude is erg klein. Ik ga er niet vanuit dat er bij het Ministerie van Binnenlandse Zaken zo graag ambtenaartjes zitten die de boel willen belazeren. Bij een risico moet echter naar twee dingen gekeken worden, de kans en de schade. Hoewel de kans erg klein, is daarentegen de schade bij fraude bijzonder groot. Ongedetecteerde fraude betekent een inbreuk op onze democratie. Bij het lezen van de documenten van de overheid, krijg ik de indruk dat ze er een beetje vanuit gaan dat fraude wel gedetecteerd zal worden. De schade kan dan nog steeds zeer aanzienlijk zijn (de verkiezingen moeten over), evenwel is deze vele malen kleiner dan ongedetecteerde fraude. Hoe deze schade in verhouding gezet moet worden is moeilijk, de lezer kan zich bijvoorbeeld afvragen wat hij erger vindt, zoiets als de Bijlmerramp of ongedetecteerde verkiezingsfraude.

Voor massale fraude is het niet noodzakelijk dat met alle stemmen geknoeid wordt. Ik acht een percentage van 5% voldoende interessant. Dit is zo’n 7 zetels in de Tweede Kamer en dat is een voldoende aantal om de macht naar een andere coalitie te doen laten kantelen. Tevens is 5% een percentage wat niet opvalt door polls. Daarbij opgemerkt, dat polls gecorrigeerd worden op daadwerkelijke uitslagen en dat deze zich op den duur met de fraude zullen meebewegen.

Met het percentage van 5% valt meteen te concluderen dat het risico bij het huidige experiment voor kiezers in het buitenland, zeer laag is. Het aantal stemmen is bij voorbaat te gering, om de moeite en het risico van detectie, te nemen. Evenwel bestaat het gevaar dat uit een succesvol verlopen experiment, de conclusie wordt getrokken dat het op landelijk niveau ook wel kan. Sowieso, is de ervaring dat schaalvergroting bij computers tot nieuwe veiligheidsproblemen leidt.

Het voorkomen van fraude door een technische barrière of door het geheim houden van de software (security by obscurity) kan zeker de veiligheid verbeteren voor de eerste paar keer. Het vertraagt echter enkel en is niet iets waarop je langdurig de veiligheid kan bouwen.

Stemgeheim

Een tweede punt waarop gelet moet worden is de waarborg van het stemgeheim. Daarbij dient opgemerkt worden dat mensen nog wel eens een verkeerd beeld hebben van het doel van het stemgeheim. Het stemgeheim is in de 19de bevochten om omkoping of intimidatie door partijen of fanatieke aanhangers van de partijen tegen te gaan. De motivatie was niet om een totalitaire staat tegen te gaan die alle stemmen zou gaan controleren. Het boek 1984 van George Orwell is pas een eeuw na invoering geschreven. Niettemin, is het stemgeheim ook tegen controle van de Staat gericht.

Als het stemgeheim geschonden is, dat betekent dat niet direct dat de vrijheid en integriteit van de verkiezingen in gevaar is. Met het stemgedrag van kiezers moet vervolgens wat gedaan worden. De kiezers moeten omgekocht, geïntimideerd of op andere manier benadeeld worden. Een schending van het stemgeheim in het geniep is vrij zinloos, terwijl er iets mee doen weer de kans vergroot dat het uitkomt, wat ongetwijfeld tot grote verontwaardiging in de samenleving zal leiden. Om deze redenen kunnen de veiligheidseisen ten aanzien van het stemgeheim aanzienlijk lager zijn, ten opzichte van fraude.

Bij de technische aspecten van het systeem, is er nog wel eens de neiging om het stemgeheim vanuit een juridisch standpunt te bekijken. Dat wil zeggen, het wordt correct bevonden als de stem niet met de identiteit van de persoon geregistreerd wordt. Deze benadering vind ik totaal belachelijk. Ook hier gaat het erom hoeveel moeite of personen er nodig zijn om het stemgeheim te breken.

Verstoring

Als laatste punt waarop gelet moet worden is eventuele verstoring van de verkiezingen. Het eerste waar dan meestal aan gedacht wordt, is een DDOS (Distributed Denial Of Servcie) aanval. Daarbij wordt de webserver overbelast door vanaf honderden gehackte computers de webserver te benaderen. Er zijn echter redelijk wat technieken in te kopen die een DDOS aanval kunnen tegengaan en is naar mijn mening een controleerbaar probleem.

Er is een redelijke kans dat mensen van buiten de verkiezingsorganisatie de verkiezingen zullen proberen te verstoren. Daarentegen is de schade te overzien. In het ergste geval moeten de verkiezingen over. De kans op verstoring door iemand binnen de verkiezingsorganisatie is een stuk kleiner, maar dit kan ook niet geheel uitgesloten worden.

Overzicht van het RIES systeem

In tegenstelling tot het internetstemmen in 2004 is er veel informatie beschikbaar over hoe RIES werkt. Ik kan dan ook eerlijk zeggen dat er daadwerkelijk sprake is van een 'experiment', het systeem en de resultaten kunnen beoordeeld worden door deskundigen.

De eerste indruk van RIES is positief, in die zin, dat er echt over nagedacht is hoe een veilig systeem kan worden bedacht voor het stemmen over het internet. Het hele ontwerp van RIES is om de principes van veiligheid heen gebouwd.

Om voor de lezer enigszins duidelijk te geven hoe RIES werkt, moet één cryptografische truuk worden uitgelegd die door heel RIES wordt gebruikt. Dit is de hash-code. Dit klinkt moeilijk, maar dat valt mee. Een hash-code is een wiskundige bewerking op een stuk informatie (bijvoorbeeld een email, een getal, een stuk muziek) dat als resultaat een getal heeft, met een beperkt aantal cijfers. De wiskundige bewerking is echter van dien aard, dat met het eindresultaat geen stuk informatie gevonden kan worden dat het eindresultaat oplevert. Dus ook niet de oorspronkelijke informatie.

Dit is erg abstract, maar het wordt misschien duidelijk met een voorbeeld. Stel Jan en Piet doen mee aan een puzzel waarbij een website op het internet gevonden moet worden met het antwoord. Op een gegeven heeft Jan het antwoord gevonden en wil dat bewijzen aan Piet. Hij wil echter nog niet het antwoord aan Piet geven, want dat zou de puzzel voor Piet bederven. Hij voert daarom de hash-code uit op het antwoord. Ik geef dat hier schematisch weer door het te omlijnen:

afbeelding:RIESantwoord.png

Piet krijgt dus deze doos, maar kan er niet in kijken. Als Piet ook het antwoord heeft gevonden, geeft Jan zijn antwoord. Piet construeert dezelfde doos van Jan's antwoord en controleert of het resultaat hetzelfde. Indien dat het geval is, had Jan inderdaad het antwoord al eerder.

RIES is helemaal rond dit principe gebouwd. In RIES zijn er twee computers. De eerste computer noem ik de 'stemgenerator; (ik vond in de documentatie op dit punt geen duidelijke terminologie) en de 'stemwebserver'. De stemgenerator is computer die niet verbonden is met het netwerk. Deze stemgenerator wordt gebruikt bij de voorbereidingen van de verkiezingen. De stemgenerator krijgt als invoer het bestand met kiesgerechtigden en geeft als uitvoer twee dingen. Ten eerste de informatie die op de stemkaarten moet komen. Deze informatie gaat naar drukker en wordt verstuurd naar de kiezers. Op elke stemkaart een identificatie van de kiezer plus een 'stemcode'.

Ten tweede komt er uit de stemgenerator een 'referentiebestand', die alle mogelijke gecodeerde stemmen bevat van de kiezer. Dit referentiebestand wordt gepubliceerd na de stemming. Om te bewijzen dat het bestand niet onder tussen is gewijzigd, wordt er, net zoals Jan aan Piet zijn antwoord wou bewijzen, een hash van het bestand gepubliceerd in de Staatscourant.

Nadat de stemgenerator zijn werk heeft gedaan, worden de stemcodes vernietigd (althans als iedereen volgens de procedures werkt). Dit betekent dat de stemcodes alleen nog bij de kiezers zijn, want in het referentiebestand staan alleen gehashde waarden, waaruit de stemcodes niet meer kunnen worden bepaald.

Tijdens de stemming maakt de kiezer met zijn webbrowser connectie met de stemwebserver. Van de stemwebserver krijgt de kiezer een 'Javascript' programmaatje in zijn webbrowser geladen. De kiezer vult zijn identificatie, zijn stemcode en de kandidaat waarop hij stemt in. Het programmaatje codeert zijn identificatie en kandidaat met de stemcode. Dit wordt opgestuurd naar de stemwebserver. De stemcode zelf wordt niet opgestuurd naar de stemwebserver.

De stemwebserver doet niet veel meer dan het opslaan van deze stem. Omdat de kandidaat gecodeerd is met de stemcode, weet de stemwebser niet voor welke kandidaat de stem is.

Als de stemming is afgelopen worden alle stemmen van de stemwebserver gepubliceerd. Dit noem ik even de 'stemlijst' (ook hier ontbreekt terminologie). Tevens wordt nu door de organisatie van de stemgenerator het referentiebestand gepubliceerd.

Met deze publieke informatie, kan het tellen gebeuren. De stemlijst wordt naast het referentiebestand gelegd en op basis daarvan wordt de uitslag bepaald. Dit wordt natuurlijk door de organisatie gedaan, maar omdat alle informatie publiekelijk is kan iedereen dat doen.

De individuele kiezer kan zijn stem terugzoeken in de stemlijst en zien of deze naar de juiste kandidaat is gegaan.

In principe is de veiligheid van het systeem niet afhankelijk van het open source zijn van de software.

Schematisch ziet het geheel er zo uit:

afbeelding:RIESmuppets.png

Even ter herinnering, als een tekst omlijnd is, dan kan de informatie binnen de lijnen niet gezien worden. Enkel als de informatie binnen de lijnen al bekend is, dan kan opnieuw het geheel berekend worden en het eindresultaat vergeleken worden.

In het schema zijn verschillende kleuren gemaakt. De codering kan afhankelijk gemaakt worden van een code (in dit geval de stemcode). Jan en Piet hebben dus door verschillende stemcodes een verschillende codering.

In het referentiebestand is om de stemmen nog een blauwe omlijning getekend. Dat betekent dat uit het referentiebestand, geen ‘Kermit’ of ‘Miss Piggy’ met rode omlijning berekend kan worden. Na vernietiging van de stemcodes, zijn de kiezers de enige die deze waarden kunnen berekenen. Om de uitslag te bepalen, moet om de stemmen in de stemlijst de blauwe omlijning berekend worden en vervolgens worden opgezocht in het referentiebestand.

Mogelijkheden tot fraude met RIES

Ik zal nu gaan kijken in hoeverre ik RIES kan kraken. Bij het kraken van een systeem, of het nu een computer is of een huis, is het niet handig om de beveiliging te breken, waar het systeem het best beveiligd is. Als de voordeur van een huis zwaar beveiligd is, dan kan ik beter gaan kijken of er ook een tuindeurtje is. En als dat ook goed beveiligd is, dan steel ik de auto die voor de deur staat. Ik bedoel daarmee, dat ik zal proberen de verkiezingen op zo'n flauw mogelijke manier te manipuleren. Zo ga ik niet proberen om de cryptografische technieken te kraken.

Ten aanzien van externe fraude, is het RIES zeer veilig. Als ik van buitenaf op de stemwebserver weet in te breken, dan zal ik nog steeds niet veel kunnen, omdat op de stemwebserver alleen maar gecodeerde stemmen staan. Het installeren van andere software, zal uiteindelijk opvallen. Bovendien is de stemwebserver zelf zeer eenvoudig van aard, zodat de veiligheidsaspecten goed zijn te overzien.

Een tweede mogelijkheid voor externe fraude is de computer bij de kiezer aan te vallen. Daarbij kan ik denken aan phishing of een virus dat zorgt dat er op een andere kandidaat wordt gestemd. Hoewel ik individuele kiezers mogelijk op deze manier om de tuin kan leiden, zal zo'n poging in zijn geheel opvallen. Zo'n aanval is daarom totaal ineffectief.

Maar zoals ik al eerder schreef, moet voor fraude ook beslist gekeken worden naar interne fraude. Daarbij ga ik er dus vanuit dat ik medewerking krijg van een persoon binnen de organisatie. Voor het gemak noem ik zo’n persoon in dit beveiligingsspel een 'joker'. Zoals ik al eerder schreef, kan naar redelijkheid gezegd worden dat het systeem onveilig is, als ik met één joker iets voor elkaar kan krijgen.

Om de uitslag te manipuleren kan ik proberen om stemmen te veranderen of te laten verdwijnen. Op het eerste gezicht, loop ik dan tegen een aantal onoverkomelijk obstakels op. Als een kiezer zijn stem achteraf gaat controleren, dan wordt dit ontdekt. Bovendien lijkt het erop dat ik hiervoor twee jokers nodig heb. Voor het laten verdwijnen van ongewenste stemmen, heb ik een joker bij de stemwebserver nodig, maar ik heb daar voor ook het referentiebestand nodig. Dit wordt pas na de publicatie van de stemlijst openbaar gemaakt. Wil ik dat dus eerder hebben, dan heb ik een tweede joker nodig bij de stemgenerator. Het veranderen van een stem is nog moeilijker. Het referentiebestand is daarvoor onvoldoende, ik heb dan ook de stemcodes nodig, die na gebruik bij de stemgenerator vernietigd worden.

Bij nader inzien, zijn er echter nog wel wat truken mogelijk. Zo stuurt de stemwebser een programmaatje op naar de browser van de kiezer. Dit programmaatje, geschreven in Javascript, doet de cryptografische bewerking om tot de technische stem te komen. Deze technische stem wordt bij de stemwebserver uiteindelijk geregistreerd.

Als ik nu mijn joker inzet bij de stemwebserver en zorg dat er een vervalst programmaatje naar de browser van de kiezer opgestuurd wordt. Dit programmaatje krijgt de stemcode van de kiezer (ik heb dus geen tweede joker nodig voor het bestand met de stemcodes) en het programmaatje registreert een stem die ik wil.

Evenwel, heb ik dan nog steeds het probleem dat de kiezer achteraf zijn stem kan controleren. Dit is echter ook op te lossen. Bij de eerste keer dat op een bepaalde kandidaat gestemd wordt, laat ik deze stem op de normale manier registreren, maar ik bewaar deze stem op de stemwebserver ook nog op en aparte plaats. Bij de volgende kiezer die op dezelfde kandidaat wil stemmen, vervals ik de stem, maar meldt de technische stem van de eerdere kiezer terug. De controlerende kiezer zal dan zien dat zijn technische stem (wat niet zijn technische stem is, maar de technische stem van een eerdere kiezer), naar de correcte kandidaat is gegaan.

De reden dat dit kan, is omdat in het ontwerp van RIES een blunder is gemaakt. Bij het controleren van de stem achteraf, heeft de kiezer een identificatie van zichzelf nodig. De identificatie die op zijn stemkaart staat is niet anoniem. De identificatie is wel anoniem als hij gecodeerd wordt met de stemcode. Deze codering gebeurt echter met het programmaatje van de stemwebserver, dat mogelijk vervalst is. Had men echter op de stemkaart een identificatie gezet die wel al anoniem was, dan was die codering in het programmaatje in zijn geheel niet nodig en kan de kiezer zijn stem controleren op basis van de identificatie van de stemkaart. Evenwel, is het daardoor makkelijker voor iemand die de stemkaart bij het oud papier vindt, om te achterhalen wat die persoon gestemd heeft. In RIES is dat echter ook mogelijk, maar moet de vinder de identificatie eerst coderen met de stemcode. Indien RIES landelijk wordt ingevoerd, zullen programmaatjes daarvoor wel op het internet verschijnen. Er is nog een reden waarom dit een blunder is, maar daar zal ik verderop in dit artikel uitleggen.

Nu terug naar de vervalsing. Deze kan gedetecteerd worden door het Javascript programma dat opgestuurd wordt naar de browser te inspecteren. Een programma dat opeens allerlei andere dingen doet is dus in principe te zien. Deze inspectie kan door twee verschillende partijen gedaan worden, de kiezer en een specialistische derde onafhankelijk controlerende partij. Deze onafhankelijke partij kan zich voordoen als een kiezer en dan het ontvangen Javascript programma vergelijken met een referentie verkregen van de RIES organisatie. Voor de kiezer is dit thans vrijwel onmogelijk. Er is door RIES geen referentie voor script gepubliceerd en dat betekent dat de kiezer het programma helemaal moet gaan uitpluizen voor de werking. Om een indicatie te geven hoeveel werk dat is, ik zelf zou daar toch minimaal een dag voor moeten uit trekken om er enig idee van te krijgen en dat terwijl ik niet de minste programmeur ben (in 2000 heb ik samen met een twee collega's van ASML in de categorie bedrijventeams het Nederlands Kampioenschap Programmeren in de wacht gesleept). Overigens zal ik voor de komende verkiezingen dit niet gaan doen. Het script kan alleen door een aangemelde kiezer opgevraagd worden. Mogelijk kan ik met wat handelingen ook het script opvragen, maar deze handelingen kunnen als computerinbraak gezien worden en dat is strafbaar. Een bijkomende probleem is, dat als een burger fraude op dit punt detecteert, hij nog geen bewijs heeft. Als hij gekwalificeerd is om dit te detecteren, dan is hij ook gekwalificeerd om vals bewijs te fabriceren. Sporen op de stemwebserver kunnen met 1 druk op de knop gewist worden.

Maar er is ook weer iets tegen deze inspectie te doen. Zoals ik schreef, hoef ik maar 5% te vervalsen. Ik kan proberen bij de stemwebserver een bepaalde groep te selecteren waarbij ik ga frauderen, terwijl ik de rest ongemoeid laat. Deze groep mensen moet als eigenschap hebben dat ze niet teveel van computers weten. Een groep waarbij het ondenkbaar is dat ze het Javascriptgaan inspecteren en (als de blunder met de kiezers identificatie is opgelost) niet de eigen stem gaat controleren.

Voor deze selectie heb ik op de stemwebserver een aantal mogelijkheden. Bij een request van de browser krijgt de stemwebserver gegevens over het operating system, de gebruikte browser. en het IP adres van de kiezer. Het is duidelijk dat ik niet ga frauderen voor kiezers die Linux gebruiken. Dit soort lui kunnen inderdaad het Javascript programma gaan bekijken. De groep mensen die Windows gebruiken is te gemêleerd om daar enige conclusie uit te trekken. De groep Mac gebruikers is echter interessant. Dit zijn meestal geen ontwikkelaars, geen mensen die van de binnenkant houden, maar juist van een mooi kastje. Deze groep is ook iets van 5%, precies wat ik nodig heb. In de toekomst is er nog de groep mobiele gebruikers.

De andere mogelijkheid was om naar het IP-adres te kijken. Zo zou bijvoorbeeld de IP-adressen genomen kunnen worden van een goedkope ISP, die zodanig slechte service geeft, dat de wat professionelere ITer daar geen gebruik van maakt. En anders kan ik proberen een bestand van IP-adressen te construeren van ouderen. Dit is niet eenvoudig. Ik zou deze gegevens kunnen verzamelen op een website die voornamelijk bezocht wordt door ouderen of op een website die beschikt over persoonlijke gegevens van de bezoeker. Te denken valt bijvoorbeeld aan Wehkamp. Ik heb daar dan wel een contact nodig. De truuk met een lijst van IP-adressen wordt bemoeilijkt doordat deze adressen vaak dynamisch worden toegekend met DHCP. Maar het hoeft niet allemaal perfect, want zoals ik al eerder schreef, heb ik maar 5% nodig. Bovendien zal dit met IPv6 misschien weer anders zijn.

Een onafhankelijke controlerende partij doet er dus goed aan om de maanden voor de verkiezingen, met de computer waar de controle mee wordt uitgevoerd, ook wat dingen bij Wehkamp te bestellen. Uiteraard met het gebruik van een Mac.

Overigens is het van belang dat het Javascript programma inline in de webpagina staat en dat geen gebruik wordt gemaakt van het 'src' attribute van de '<script>' tag (als in RIES daar wel gebruik van wordt gemaakt, dan moet dit aangepast worden). Als het programma inline staat, kan de kiezer direct in de browser het script zien door de broncode op te vragen. Wordt deze echter apart geladen, dan moet de gebruiker dit script opnieuw laden. De stemwebserver kan bij een tweede request van hetzelfde IP-adres, het onvervalste script terugsturen. Het normale gedrag van de browser zou zijn, om het (vervalste) script uit de cache te laten zien, maar dit kan door de stemwebserver worden tegengegaan door het zetten van de juiste HTTP headers.

Al met al, kan de conclusie worden getrokken dat met een enkele joker bij de stemwebserver wel degelijk te frauderen valt.

Een hele andere strategie tot het manipuleren van de uitslag is het toevoegen van stemmen. Met RIES kan de kiezer achteraf wel zijn stem controleren, het is voor de burgers niet of nauwelijks na te gaan of er valse stemmen zijn toegevoegd aan de stemlijst. Deze achteraf controle geeft daarom naar mijn mening toch een wat vals beeld van veiligheid.

Het toevoegen van stemmen is wel gelimiteerd, omdat daarmee de opkomstcijfers worden verhoogd. Als echter landelijk iedereen via het internet zou stemmen, dan zou een toename van 5% niet direct argwaan wekken en dit is precies het percentage wat ik nodig heb. Voor het stemmen in het buitenland is het aantal registraties rond de 20.000 van de 500.000 potentieel. Daar is dus nog genoeg ruimte. Met fraude kan dit verhoogd worden tot 100.000 en dat is ruim een zetel. Het zal echter wel opvallen als 80% van de stemmen naar 1 partij gaan.

Voor deze fraude is het nodig dat ik de hand leg op de stemcodes (een joker bij de stemgenerator). Vervolgens moet ik vlak voor het sluiten van de stemming bij de stemwebserver (de tweede joker) de nog ongebruikte stemcodes even omzetten in stemmen. Hiervoor zijn dus wel twee jokers nodig, maar het toont wel aan dat we voor de veiligheid afhankelijk zijn van het goed scheiden van de organisatie en niet zozeer van de controle van de kiezer achteraf. Overigens is RIES hier nog wel wat te verbeteren. Als de stemwebserver elk uur de stemlijst publiceert (zonder referentiebestand kan daar de stand nog niet aan worden afgelezen), dan kan geverifieerd worden of niet in het laatste uur 1 partij heel veel stemmen heeft ontvangen. Maar, dit kan ik weer tegen gaan door stemmen van de andere partijen te vertragen tot het laatste uur. Het valt misschien toch op dat er wel erg veel gestemd wordt in het laatste uur.

Toch zit hier nog een addertje onder het gras. Over het algemeen zullen steeds dezelfde mensen niet gaan stemmen. Als ik nu via een joker bij twee verkiezingen (mogelijk met 4 jaar ertussen) de beschikking krijg over de lijst met de stemcodes van alle personen, dan kan ik op basis van het referentiebestand van de eerste verkiezingen nagaan wie wel en niet gestemd heeft. Daarmee ga ik vervolgens bij de tweede verkiezingen stemcodes gebruiken van de mensen die bij de eerste verkiezing niet gestemd hebben. Ik heb hiervoor geen joker nodig bij de stemwebserver. De stemmen kunnen automatisch, maar op de normale manier bij de stemwebserver worden opgeslagen. Eventueel kan ik gebruik maken van een botnet, om te zorgen dat niet alles van hetzelfde IP-adres komt. Op deze manier kan ik dus grootschalige fraude plegen (een aantal zetels), met het gebruik van slechts één joker. Het bestand met verwachte niet-stemmers, zal niet geheel betrouwbaar zijn, waardoor er meer dubbele stemmen (die ongeldig worden) ontstaan met tenminste 1 stem voor de partij waarvoor ik fraudeer. Dit kan ik echter maskeren, door voor de verwachte wel-stemmers, ook wat dubbele stemmen uit te brengen, die niet voor de partij zijn waarvoor gefraudeerd wordt. Met meer verkiezingen wordt het bestand van niet-stemmers betrouwbaarder. Het is dus een fraude van de lange adem, maar daar staat tegenover dat de fraude enkel afhankelijk is van het aftappen van informatie. Het invoeren van de illegale stemmen gebeurt op de reguliere manier. Als ik de stemcodes van mijn joker op een SD-kaartje krijg (wat in digitale camera's zit, zo groot als een postzegel) en verder elk contact met mijn joker mijdt, dan is dit een nachtmerrie voor de persoon die deze fraude moet onderzoeken. Bij detectie van deze fraude zijn zowel ik als mijn joker redelijk veilig. Ik word niet gevonden, terwijl bij de joker thuis geen programma's worden gevonden voor verdere uitvoering van de fraude.

Een andere manier is om het hele RIES te omzeilen. Zoals ik al zei, als ik het huis niet in kan, dan kan ik altijd nog de auto die voor het huis staat stelen. Iemand moet de stemgenerator de lijst met stemgerechtigden kiezers aanleveren. Als ik nou daar eens mijn joker inzet. Deze lijst laat ik uitbreiden met nog eens 500.000 "spookkiezers". Dat zijn kiezers die helemaal niet bestaan. Bij het terugkrijgen van deze lijst met de stemcodes, laat ik mijn joker deze er weer uit filteren. De gefilterde lijst gaat naar de drukker (dit is van belang, want anders kunnen de stemkaarten van de spookkiezers via de posterijen massaal terugkomen). Met de stemcodes van de spookkiezers ga ik op de normale manier stemmen registreren bij de stemwebserver (eventueel weer een botnet gebruiken). Op deze manier kan ik met één joker massale fraude plegen.

In de praktijk zal deze methode waarschijnlijk tegenvallen, want de persoon die de lijst van kiesgerechtigden levert, hoeft niet de persoon te zijn die de lijst met stemcodes naar de drukker brengt. In de beschrijvingen is hier echter geen enkele regel voor en zolang die regel er niet is, is dit een zwakheid. Ook kunnen er een aantal checks worden uitgevoerd. Het aantal verstuurde stemkaarten moet gelijk zijn aan het aantal kiezers in het referentiebestand. Er is echter geen regel die zo'n check gebiedt, dus blijft dit een zwakheid. Ook wordt hiermee opeens duidelijk dat het feit dat de stemcodes per post worden gestuurd, een onderdeel van de veiligheid is. Als door bezuinigingen wordt gekozen om de stemcodes per email te versturen, dan maakt dat het introduceren van spookkiezers aanzienlijk makkelijker. Als de gegevens van de kiesgerechtigden centraler worden beheerd (en er minder redundantie is in de gegevens), dan wordt de mogelijkheid tot deze fraude eenvoudiger.

Hoewel fraude doormiddel van spookkiezers doormiddel van een aantal checks snel door de mand kan vallen, is dit niet of nauwelijks te controleren door de burger. Voor het komende experiment voor de kiezers in het buitenland hebben zo'n 20.000 personen zich laten registreren. Als dit er 100.000 of 200.000 waren geweest, dan had ik geen enkele argwaan gehad. Indien RIES landelijk wordt ingezet, dan kan ik als burger proberen om het aantal kiesgerechtigden te schatten, maar dat blijft moeilijk. In 2002 waren er zo'n 300.000 meer kiesgerechtigden dan in 1998 volgens opkomstgegevens uit de Wikipedia. Die hoeveelheid is ongeveer 4 zetels waard. Dit bewijst hoe moeilijk het is voor de burger om dit te controleren, zeker als dit in stapjes van 100.000 spookkiezers tegelijk wordt gedaan.

Al met al, kan geconcludeerd worden dat, een inherente zwakte van de controle achteraf is dat niet gecontroleerd kan worden of er stemmen zijn toegevoegd.

Het stemgeheim met RIES

Het stemgeheim is in eerste instantie bedoeld om omkoping en intimidatie tegen te gaan. Ik zal daar later in dit artikel op terug komen. Hier zal ik eerst naar de mogelijkheid kijken dat een lijst op het internet verschijnt met de namen van alle kiesgerechtigden met hun stem.

Mocht zoiets gebeuren, dan is de uitslag niet ongeldig. De stemmen zijn immers uitgebracht in de veronderstelling dat het veilig was. De vrije keuze is dus niet aangetast. Het zal echter een schok in de samenleving geven en het is dan waarschijnlijk dat iemand naar de rechter stapt om stemmen via het internet te verbieden. Een totale ban op internetstemmen door de rechter valt dan niet uit te sluiten (sterker nog, is dan waarschijnlijk).

De motivatie om zoiets te doen, is kleiner dan het vervalsen van de uitslag (dat gaat immers om de macht). Echter, zo'n actie krijgt grote publiciteit, is geweldloos en treft vooral het imago van de overheid en verantwoordelijke politici. De gedachte aan zo'n actie zal voor iemand met anarchistische denkbeelden, het bloed zeker sneller doen laten lopen.

Om dit voor elkaar te krijgen is een bestand nodig dat de namen van de kiesgerechtigden bevat met de stemcodes die ze ontvangen hebben. Dat bestand kan gecombineerd worden met het referentiebestand om tot een lijst te komen met de stemmen van iedereen. Om weer in jokers te praten, hebben we daar één joker voor nodig. De organisatie rond de stemgenerator beschikt over het bestand met namen en stemcodes. Dit bestand wordt gestuurd naar de drukker en de drukker zal dus ook over dit bestand beschikken.

Ik had al eerder aangegeven dat de veiligheid van het stemgeheim lager kon zijn dan ten aanzien van fraude. Het is echter van belang om te constateren dat deze veiligheid ook daadwerkelijk niet zo hoog is. Als bij een ander internetstemmensysteem bij het invoeren van de stem om identificatie wordt gevraagd (met iets van een elektronisch paspoort), dan kan dat de kiezer de perceptie geven dat zijn stem met naam geregistreerd kan worden. RIES is echter op dit punt niet wezenlijk veiliger of onveiliger, dan zo'n systeem.

Verder is het zo dat het stemgeheim niet alleen tijdens de verkiezingen gewaarborgd moet zijn, maar ook de jaren daarna. Als 10 jaar na de stemming een lijst op het internet verschijnt met alle stemmen, dan zal ook dat een schok door de samenleving veroorzaken. En nu kom ik terug op de eerder aangestipte blunder in het ontwerp van RIES. De kiezersidentificatie die op de stemkaart staat is niet anoniem. Aan dit nummer kan de naam van de kiezer worden gerelateerd. Dit is nu ook weer niet publiekelijk, maar een groot aantal mensen binnen de overheid zullen toegang hebben tot deze informatie. In ieder geval valt deze informatie buiten het 'veiligheidsgebied' van RIES. De identificatie wordt pas anoniem als die gecodeerd wordt met de stemcode. Een cryptoanalist heeft met het referentiebestand de beschikking over een hele lijst van kandidaten die met de stemcode zijn gecodeerd. Daar is in theorie de stemcode mee te achterhalen en vervolgens de ongecodeerde kiezersidentificatie.

Dit is nu niet mogelijk, de gebruikte cryptografische methoden zijn veilig voor dit moment. RIES neemt hier echter een hypotheek op de toekomst. Er is geen garantie dat deze veilig blijven. Dit kan het resultaat zijn van nieuwe wiskundige inzichten, enorme verbetering van processorkracht, door grid-computing of door quantumcomputing.

Hierdoor kan een lollige situatie ontstaan. Iemand van binnen de overheid kan op het idee komen om de lijst met namen op het internet te zetten, met de ongecodeerde kiezersidentificatie. Zoals ik al schreef, deze valt buiten het veiligheidsgebied van RIES. Als deze lijst op het internet verschijnt, dan vormt deze lijst tezamen met het referentiebestand een interessante cryptografische puzzel, die een grote aantrekkingskracht zal uitoefenen op academici van over de hele wereld. Studenten die nog in hun briljante fase zitten, kunnen met hun intellectuele prestatie de publiciteit halen. De kick van elk genie. "Wie kraakt als eerste het stemgeheim van RIES 2006?". Ik ben benieuwd hoe lang de cryptografische methode dan stand houdt.

Dit baart mij ook om andere reden zorgen. Zoals ik eerder had aangegeven, is het verzamelen van informatie over niet-stemmers waardevolle informatie om fraude te plegen. In eerste instantie was ik niet geïnteresseerd in de cryptografische methoden, omdat de tijd tijdens de verkiezingen te kort is om daar iets mee te doen. Door de blunder in de identificatie is de veiligheid in veel hogere mate afhankelijk geworden van de crypto. Ook las ik dat voor het genereren van de stemcodes DES wordt gebruikt. DES wordt al lang niet meer veilig geacht (zie de Wikipedia). De informatie over RIES is op dit punt echter te gering om hier een oordeel over te vellen.

In de stemwebserver is er voor gekozen om gegevens zoals IP-adres niet te registreren vanwege het stemgeheim. Dit vind ik weer overijverig. Deze gegevens kunnen immers nuttig gebruikt worden voor het bestrijden van eventuele fraude. Met het IP-adres kan theoretisch de eigenaar van de computer getraceerd worden, maar daar zijn wel speciale bevoegdheden voor nodig en de organisatie van de stemwebserver heeft deze niet. Als er een voorschrift komt hoe de gegevens vernietigd worden, dan lijkt me dat veilig genoeg.

Verstoring met RIES

Zoals eerder gezegd, is de kans op een poging tot verstoring van buitenaf redelijk groot. Daarbij ligt een DDOS aanval het meest voor de hand. Het RIES systeem heeft de webserver heel eenvoudig gehouden. Er wordt geen sessie bijgehouden tussen de browser en de webserver. De webserver is niet meer dan het ophalen van een aantal pagina's en het opslaan van de gecodeerde stem. Deze eenvoud is een goed wapen tegen een DDOS aanval. Daarentegen kan een DDOS aanval zo uitgevoerd worden dat deze allerlei (ongeldige) stemmen laat registreren. Aangezien de stemwebserver geen controle op de stem doet, moet de stemwebserver al deze stemmen registreren en kan daarmee de stemlijst heel lang worden.

Uiteindelijk denk ik dat met de juiste maatregelen het systeem bestand te maken is tegen een DDOS aanval.

Dan blijft de vraag over wat de mogelijkheden zijn als gebruik gemaakt wordt van hulp van binnenuit. Als iemand een bestand te pakken krijgt met alle stemcodes die naar de kiezers zijn gestuurd, dan kan dit bestand anoniem op het internet geplaatst worden. Als dat gebeurt, dan kunnen de verkiezingen geen doorgang meer vinden.

Opnieuw een aantrekkelijke actie voor een anarchistische activist.

Een andere mogelijkheid is om met het bestand tijdens de stemming, allerlei stemmen uit te brengen. Als de kiezers dan ook gaan stemmen, dan komen de stemmen dubbel op de stemlijst en worden alle stemmen ongeldig. De uitslag zal dan ongeldig worden verklaard.

Ik heb hiervoor één joker nodig. Iemand in de organisatie rond de stemgenerator of iemand bij de drukker van de stemkaarten.

De organisatie rond RIES

Tot nu toe heb ik naar de technische aspecten van RIES gekeken. Echter, de organisatie rond een veiligheidssysteem kan zich zo gedragen dat de veiligheidsprincipes van het systeem teniet worden gedaan. Als bijvoorbeeld een systeem beveiligd is met een wachtwoord, dan wordt deze beveiliging teniet gedaan als voor alle systemen het wachtwoord "GEHEIM" wordt gekozen of als het wachtwoord rondslingert op een papiertje. Daarom ga ik kijken hoe het Ministerie alles rond RIES geregeld heeft.

De basisbeginselen van RIES zijn dat de werking van het systeem openbaar is, bepaalde lijsten worden gepubliceerd en dat de kiezer zijn stem gaat controleren. Om dit tot zijn recht te laten komen, zal het Ministerie ook daadwerkelijk alles moeten uitleggen en de lijsten ook daadwerkelijk moet publiceren.

Het Ministerie heeft hier echt zijn best gedaan. Als op de site 'www.kiezenuithetbuitenland.nl' wordt gekeken, dan kan gezien worden dat alles netjes wordt uitgelegd. Op dit punt is de organisatie dus goed.

Een onderdeel van de veiligheid van RIES, is dat de organisatie rond de stemwebserver en de organisatie rond de stemgenerator gescheiden zijn. Op dit punt scoort het Ministerie een onvoldoende. Uit de regelgeving en de informatie op de website blijkt niet hoe deze organisaties gescheiden zijn. In de praktijk kan dit een stuk beter zijn, maar formeel moet ik concluderen dat het onveilig is. Het gaat hier echter om een experiment en misschien is het beter om te zeggen dat het Ministerie hier nog werk te doen heeft. De beveiligingsadviseurs hebben hier in ieder geval grote steken laten vallen.

Persoonlijk zou ik de voorkeur hebben dat de handelingen op de stemgenerator worden uitgevoerd door medewerkers van de gemeente Den Haag (die normaal alle handelingen rond briefstemmen doet), terwijl het Ministerie het toezicht op de stemwebserver doet. Als de gemeente de stemgenerator opslaat in een kluis en de publicatie van het referentiebestand verzorgt op de gemeentewebsite en dit in regelgeving is vastgelegd, dan kan de burger de scheiding van organisaties in regelgeving, maar ook fysiek waarnemen.

En nu ik het over de regelgeving heb, deze is naar mijn mening sterk uit balans. Zo wordt een stembureau ge¨nstalleerd die tijdens de stemming toezicht houdt op de stemwebserver. Er zijn echter geen regels over de handelingen die op de stemgenerator moeten worden uitgevoerd. Uit dit artikel bleek dat de handelingen rond de stemgenerator tenminste even kritisch zijn. Hetzelfde geldt voor de informatie die naar de drukker gaat.

De Kieswet en het wetboek van Strafrecht kent geen bepaling die schending van het stemgeheim strafbaar stelt. Kennelijk wordt er vanuit gegaan dat dit in de praktijk met de traditionele manieren van stemmen geen probleem is. Met internetstemmen wordt dit echter wel van belang. In de Experimentenwet heeft men verzuimd om dit strafbaar te stellen.

Het gebruik van RIES in de praktijk

Tot nu toe heb ik naar de technische kanten gekeken en de organisatie rond de techniek. Als laatste kijk ik naar de interactie tussen de techniek en de eindgebruiker, de kiezer. Deze interactie kan in de praktijk zodanig zijn, dat een aantal veiligheidsaspecten teniet worden gedaan.

Ten eerste moet ik opmerken dat het probleem van stemmen via internet is dat enerzijds het stemgeheim gewaarborgd moet zijn en anderzijds er gezocht moet worden naar controleerbaarheid. Deze twee eisen zijn tegenstrijdig, wat een goed systeem moeilijk maakt. In RIES is er gekozen voor de controle mogelijkheid achteraf. Dit verhoogt de controle mogelijkheid, maar is tegelijkertijd een aanzienlijke verslechtering van het stemgeheim. Als er geen controle achteraf mogelijk is, dan is samen stemmen achter de PC mogelijk, maar na het uitbrengen van de stem is het stemgeheim gewaarborgd. Met het RIES systeem is met de stemcode nog tot in de eeuwigheid aantoonbaar wat iemand gestemd heeft. De stemcode zelf is enkel een stukje informatie, maar de stemkaart bewijst de relatie tussen de stemcode en de kiezer.

Zoals ik in het begin van dit artikel aangaf, is het stemgeheim in de 19de eeuw ingevoerd om omkoping en intimidatie tegen te gaan en niet zozeer om controle van de Staat tegen te gaan. Door de invoering van de controle achteraf wordt in feite de beveiliging tegen omkoping van de kiezer afgeschaft. Dit is naar mijn mening volstrekt onaanvaardbaar en als we dit willen, dan moeten we een serieuze discussie beginnen of we überhaupt nog wel het stemgeheim willen.

Ten tweede is het stemgeheim ten opzichte van de overheid voor de kiezer niet waarneembaar. Bij het stemmen met potlood en papier is dat wel zichtbaar.

Ten derde is er geen verbod ingesteld, op het ter beschikking stellen van programma's die de stem voor de kiezer uitbrengen. De website van de VVD zou bijvoorbeeld een tool kunnen hebben waarmee je de stemcode kunt invoeren en je alleen de keuze van de VVD kandidaten kunt maken. Het tool doet dan de verdere registratie bij de stemwebserver. Zulke hulpmiddelen zouden ook op profielensites en dergelijk gezet kunnen worden.

Ten vierde is de vraag hoeveel mensen ook daadwerkelijk hun stem gaan controleren. Dit is een moeilijke procedure en ik zie dat mijn moeder nog absoluut niet gaan doen. Voor het komende experiment kan dat enigszins bepaald worden. Er kan gemeten worden door hoeveel mensen uit het buitenland het referentiebestand geraadpleegd wordt.

Ten vijfde is de algehele controle van de bestanden achteraf moeizaam. Daarvoor moet ik eerst naar de bibliotheek om in de staatscourant de hashcode van het referentiebestand op te vragen. Vervolgens moet ik wat software maken die de hashcode uitrekent en die de uitslag berekent op basis van de stemlijst en het referentiebestand. Phfff, er komt wel veel op mijn schouders. Het tegen argument is hier, dat zo'n algehele controle normaal ook niet door burgers wordt gedaan en het feit dat dit publiekelijk is voldoende afschrikt voor fraude. Evenwel, ben ik van mening dat de software die de uitslag en integriteit van de bestanden checkt, open source moet zijn, zodat een onafhankelijke partij die controle wil doen, niet belast wordt met het schrijven van eigen software. Op gecompileerde software (geen open source) van de makers van RIES mag niet vertrouwd worden.

Ten zesde is de vraag of het geheel niet veel te ingewikkeld is voor de burger om er vertrouwen in te hebben. Ik zelf ben een persoon die redelijk wat verstand van computers heeft en het heeft mij toch iets van 2 uur gekost om het allemaal te lezen en te begrijpen. Een grote groep zal het wel geloven, misschien wel 90%, maar is het aanvaardbaar dat 10% van de kiezers er eigenlijk helemaal niets van geloofd? Bij procedures rond verkiezingen is een simpele meerderheid onvoldoende, er moet sprake zijn van een algehele acceptatie.

Ten zevende, wat wordt er gedaan als iemand rapporteert dat zijn stem, na de controle achteraf, incorrect is geregistreerd? De procedures op dit punt zijn uiterst vaag. Gaan er iets gebeuren bij 1 melding? Of pas bij 10, 100 of 1000? En wat kan er dan gedaan worden? De organisatie zal dan alle bestanden checken en zeggen dat alles in orde is (het antwoord dat geen vertrouwen wekt). Het wordt dan een welles/nietes spelletje tussen de kiezer en de organisatie.

Ten achtste, kan de controle achteraf juist gebruikt worden om de overheid in diskrediet te brengen. Een kandidaat van een radicale partij kan expres op een andere partij stemmen om vervolgens op TV te laten zien, met zijn stemkaart in zijn hand, dat zijn stem vervalst is. Hij kan dan bijval krijgen van kiezers die twijfelde en niet op die radicale partij stemde, maar daar spijt van kregen. Die kunnen het stemkaart uit het oud papier halen en ook claimen dat hun stem verkeerd is geteld. Dit komt voor TV en hoe onwaarschijnlijk het verhaal van de radicale kandidaat ook lijkt, er zijn heel veel mensen die geloven in UFO's, graancirkels of grootse complotten. De radicale kandidaat kan zijn truuk wat subtieler maken, door twee keer zijn stem uit te brengen. 1 stem op zijn eigen partij en 1 stem op de partij die hij verdacht wil maken. Dit suggereert dat iemand de hand heeft weten te leggen op het bestand met stemcodes (in plaats van een wijziging van de stem). Of doe dit met een groep die allemaal van een Mac stemde, zodat de relatie vervalsing en operating system wordt gelegd. Probeer dan als overheid maar eens te bewijzen dat dit niet kan.

Ten negende is het zo, dat volgens de procedure de kiezer zijn stemcode moet vernietigen en direct na het invoeren van zijn stem moet beslissen of hij zijn 'technische stem' bewaart (door bijvoorbeeld uit te printen). Enige suggesties over fraude, komen echter pas na de stemming, dus ook nadat de kiezer heeft besloten om zijn technische stem wel of niet te houden. Dat betekent in de praktijk, dat eerlijke kiezers niet kunnen worden ingezet voor het ontzenuwen van suggesties van fraude. Het is naar mijn mening beter om de kiezer te suggereren om zijn stemcode tot na de stemming te behouden. Het mag verwacht worden dat eventuele omkoping of intimidatie van de kiezer, voor de stemming gebeurt en niet erna. Als het stemgeheim al zodanig overboord is gezet, dan maakt het wat langer vasthouden van de stemcode ook niet meer uit.

Conclusies

Samengevat kunnen de volgende conclusies worden getrokken.

  • RIES had de belofte met de controle achteraf, dat het geheel door de burger te controleren was. Deze belofte is niet uitgekomen. De controle achteraf voegt wel wat veiligheid toe, maar we zijn voor de veiligheid nog steeds afhankelijk van de organisatie rond RIES.
  • De splitsing van het systeem tussen een stemwebserver en een stemgenerator, voegt extra veiligheid toe, maar het is niet zo dat voor interne fraude toegang tot beide delen vereist. Zowel bij de stemwebserver en de stemgenerator alleen, is fraude mogelijk.
  • Het anoniem maken van de kiezer door het te coderen met de stemcode, moet heroverwogen worden. Er is aangegeven dat deze methode op twee punten problemen geeft.
  • Het gebruik van DES voor het genereren van de stemcodes moet nader bekeken worden.
  • De veiligheid rond het stemgeheim is betrekkelijk laag.
  • Het stemgeheim is gebaseerd op vertrouwen en kan niet door de kiezer worden waargenomen.
  • De regelgeving is onvoldoende. De organisatorische scheiding tussen stemwebserver en stemgenerator is niet gewaarborgd. Regels voor de stemgenerator en de drukker ontbreken, terwijl deze even kritisch zijn als de organisatie rond de stemwebserver welke geobserveerd worden door het stembureau. Er is geen vastgelegde controle op spookkiezers.
  • De veiligheid van RIES is in theorie niet afhankelijk van het wel of niet open source zijn van de gebruikte software. In de praktijk is dit voor delen wel. Het Javascript programma plus de code voor het verwerken van de stemmen dient open source te zijn en beheert te worden door RIES op een site die niet onder controle van RIES staat, zodat op de geschiedenis van de software vertrouwd kan worden.
  • De controle van de kiezer achteraf, verslechterd het stemgeheim aanzienlijk ten aanzien van omkoping en intimidatie.
  • Het is onduidelijk in hoeverre kiezers ook daadwerkelijk controle achteraf gaan doen.
  • Het is onduidelijk wat er gedaan moet worden als een individuele kiezer merkt dat zijn stem niet goed is geregistreerd.
  • De controle achteraf kan gebruikt worden om de overheid in diskrediet te brengen.

Voor het gebruik van RIES voor kiezers in het buitenland heb ik al aangegeven dat het risico niet zo groot is, omdat er te weinig te halen valt. Het grootste gevaar dat ik zie is dat er een bepaalde verslonzing optreedt. Net zoals bij stemcomputers, waarbij op een gegeven moment een groot aantal stemcomputers slecht bewaakt in een loods stonden. Ik zou zeggen, vergeet even alle genoemde punten en laten we een wettelijk bepaling maken dat de veiligheid elke 5 jaar opnieuw onderzocht moet worden. Dat lijkt mij het allerbelangrijkste.

Ten aanzien van landelijke invoering geldt echter een heel ander verhaal. De controle van de kiezer achteraf is een sterke verslechtering van het stemgeheim. Dit is een aparte discussie waard. Afgezien daarvan, bevat het systeem tal van punten waar eventuele fraude mogelijk is. Wil de overheid hier mee doorgaan, dan moet het realiseren dat het noodzakelijk is om een "high security area" te maken. Deze bevat de stemwebserver, de stemgenerator en het traject naar de drukker waar de stemkaarten worden gemaakt. De systemen zullen zodanig met wachtwoorden beveiligd moeten worden dat een enkel persoon geen toegang heeft. Bij de fysieke bewaking dienen de technici gefouilleerd te worden en zoals ik al beschreven heb, kunnen SD-kaartjes ter grootte van een postzegel een veiligheidsprobleem zijn.

Een laatste woord

In discussies over internetstemmen wordt wel eens gezegd "Dan ga jij toch nog naar het stembureau". Mijn stem is echter niets waard als ik de enige ben waarbij alles procedureel correct is verlopen, maar waarbij de rest een rotzooi is. Ik hecht er daarom aan dat iedereen op een correcte manier stemt.

Lucas Kruijswijk
Afgestuurd in 1992 in de richting Informatica aan de Vrij Universiteit in Amsterdam, met onder andere het vak cryptografie.
In 2000 winnaar van de extra prijs van de wetenschapsquiz 1999.
In 2000 Nederlands Kampioen Programmeren met een team van ASML in de categorie bedrijventeams.
Bedenker van het prototype real-life spel SHODKA, thans bezig met een veel betere opvolger.

Wij