E-voting… moeilijk?

Minister van Binnenlandse Zaken De Padt komt op de proppen met een nieuw (al wat gedateerd) idee: online stemmen, of zoals de media het blijkbaar het liefst zien: e-voting. De minister ziet vooral problemen op het vlak van beveiliging en de geheimhouding van de stemming. Ik vraag me ondertussen al jaren af waar het probleem zit. Want als ik er even over nadenk… Eens zien.

Via internet of IRL

Het systeem moet vermijden dat een kiezer eerst het stemhokje opzoekt om daarna via het internet nog eens te stemmen. Of omgekeerd. Zorg er dus voor dat de bijzitters in het stemlokaal de kiezers kunnen registreren in het systeem (of nakijken of die al gestemd heeft). Andere oplossing: zorg ervoor dat mensen op voorhand aangeven op welke manier ze hun stem willen uitbrengen.

Beveiliging

Alle verkeer verloopt over SSL. De kiezer logt thuis in met zijn e-ID apparaat (als we het toch hebben kunnen we er net zo goed gebruik van maken) op de website. Tenzij de implementatie van de authenticatie via e-ID gebrekkig is zie ik geen probleem op de verbinding tussen kiezer en website. Natuurlijk moet die website niet gehost worden vanop een server die in het midden van de Grote Markt staat. Nee, de server wordt bewaakt. Uzi’s, bazooka’s, tanks. Dat soort beveiliging.

Le database

België telt een dikke tien miljoen inwoners. Dat is al voldoende reden om een beetje na te denken over het database model. Eerste onderdeel: verkiezingen. Gaat het om Vlaamse, Europese, Belgische of gemeenteraadsverkiezingen? Komend weekend gaat het om Vlaamse en Europese, dus moet de kiezer bij beide één of meerdere bolletjes kleuren.

Zo komen we meteen bij de vier volgende onderdelen: lijsten, kiescolleges, kieskringen en kieskantons. Lijsten met kandidaten zijn gebonden aan een kieskring. Kiescolleges lijken niets meer te zijn dan een superset van kieskringen. Kieskantons zijn, volgens Wikipedia, een groep van gemeenten binnen een kieskring met een kantonhoofdbureau. Gemeenten dus. Iedere Belg moet in een bepaalde gemeente stemmen. Belgen in het buitenland vormen een uitzondering, maar kunnen we classificeren onder een gemeente “buitenland” binnen een bepaalde kieskring en kiescollege.

Mijn excuses voor het aframmelen van de verschillende entiteiten, maar hier zitten geen problemen. Op enkele dagen tijd heb je een applicatie waarin je die data perfect kan beheren. Akkoord?

Het stemmen

Nadat de kiezer aangemeld is, kan hij kiezen voor welke verkiezing hij zijn stem wil uitbrengen. Hier krijgt hij dan een overzicht van alle lijsten van zijn kieskring te zien, met de optie om op de lijst te stemmen of om de lijst in detail te bekijken om zo te kunnen stemmen voor één of meerdere kandidaten. Wanneer hij klaar is wordt hij teruggebracht naar het overzichtsscherm om zijn keuze te maken voor de andere verkiezingen.

Eens voor alle verkiezingen een keuze is gemaakt (waarbij we de optie blanco niet vergeten) kan hij zijn stem bevestigen. Op dat moment worden zijn keuzes opgeslagen (zonder link naar de kiezer - wegens geheimhouding van de stemming) en wordt in de tabel “kiezers” de flag “gestemd” gezet. Als hij zich nu opnieuw aanbiedt op de site zal het systeem dit weigeren. In het stemlokaal zal de bijzitter kunnen zien dat hij reeds gestemd heeft - desnoods omdat het systeem het duidelijk maakt wanneer de kiezer geregistreerd wordt.

Zo kan iedereen zijn stem dus 1 maal uitbrengen op de gewenste manier.

Sca-a-a-aling

Het grootste probleem: hoe zorg je ervoor dat het systeem het niet begeeft wanneer iedereen massaal zijn stem begint uit te brengen?

  1. Spreid de periode waarbinnen gestemd kan worden. Waarom zou je niet vanaf maandag kunnen stemmen?
  2. Spreid de servers: zorg ervoor dat er “eentje” is per kiescollege, -kring of -kanton.

Stemmen tellen

SQL. Export naar CSV? Excel? XML? You name it.

Conclusie

Behalve de scaling… toch niet zo moeilijk lijkt me? Voor een uitgebreid gesprek en analyse mag het ministerie altijd contact opnemen met ons. Dan zullen we ongetwijfeld te weten komen waar de echte problemen zich bevinden, want ik kan me niet voorstellen dat het zo eenvoudig is als het hier lijkt.

Dit artikel werd opgenomen in ontwikkeling.


13 reacties

  1. Avatar van Matthias Matthias 05 Jun 2009 19:21

    Grootste probleem ligt in de wettelijkheid van zo’n systeem. Er is nog altijd de kieswet die voorschrijft hoe verkiezingen moeten verlopen.

    Da’s een wet die je niet zomaar verandert. Het is immers een politieke discussie want - afhankelijk van de context - heeft de ene dan wel de andere partij baat bij verandering. Voor een wijziging aan de kieswet moet je alle neuzen in dezelfde richting hebben.

    Een praktisch voorbeeld met politieke consequenties: e-voting vereist dat je een computer met internetconnectie in de buurt hebt. Wie in armoede leeft mag dat al op zijn buik schrijven niet tegenstaande die ook onderhevig is aan de kiesplicht. Hoe eerlijk is het dat die mensen naar het kieshokje moeten en wie het beter heeft vanuit de luie zetel kan stemmen? Voor wie in armoede leeft is dat voldoende voor een foertstem.

    Nog eentje: je e-ID is slechts een token waarmee je je kan authenticeren. Veel mensen zouden onder elkaar afspreken om hun id’s aan één persoon te geven die dan alle stemmen uitbrengt. Al was het maar dat die ene persoon bv. 10 keer zijn eigen voorkeur kan uitspreken omdat de rest het toch geen bal uitmaakt. Als ze maar niet moeten stemmen. Is ook meteen de reden waarom je je met je kiesbrief bij een kiesbureau fysiek moet aanmelden met je paspoort waarop je foto staat.

    Nog eentje: je stem mag dan over SSL en what-not worden verstuurt naar die centrale server, je stem moet nog altijd over ‘publiek’ internet gaan. Correctie: een netwerk dat door private ISP’s zoals Belgacom en Telenet wordt beheerd. Hetzelfde geldt voor de stemsoftware die door je private onderneming wordt ontworpen. Stel dat er daar onderweg iets misbeurt, dan kan je natuurlijk wel een foutmelding of zo tonen, maar mensen interpreteren zoiets niet altijd juist. Ondertussen wordt hun stem wel niet meegeteld. Of ze krijgen een boete twee weken later in de bus: bewijs dan maar eens dat je wel degelijk hebt proberen stemmen. Je kiesbrief afstempelen en een kruis voor je naam bewijzen dat. In een kiesbureau kan je altijd uitleg vragen.

    Overigens, Mobistar moest onlangs nog al die duizenden stemmen voor Mijn Restaurant weggooien. Voor een democratische verkiezing - fundament van de rechtstaat - kan je je dat als publieke overheid écht niet permitteren.

    Het is in veel gevallen makkelijk om aspecten van de maatschappij mobiel te maken. Maar als het om een fundament gaat als democratische verkiezingen, dan is proven technology toch net een stuk meer rechtszeker.

    Natuurlijk, het zou al veel maken als ze die verkiezingen nu eens niét altijd op zondagvoormiddag zouden laten doorgaan. :p

  2. Avatar van Kevin Kevin 05 Jun 2009 19:55

    Ik kan me niet voorstellen dat er geen meerderheid te vinden is om België als technologisch relevant te tonen aan de buitenwereld. Ik zie ook niet in hoe er sprake kan zijn van discriminatie: iedereen krijgt de kans om zijn stem uit te brengen. Iedereen krijgt ook de kans om zijn belastingsaangifte via het internet af te leveren of via de post. Maar je hebt gelijk. In mijn ogen vormen politieke spelletjes het enige echte probleem.

    Mensen die hun stem laten uitbrengen door iemand anders is niets anders dan fraude. Maar als jij je identiteitskaart en key graag aan anderen geeft: be my guest. Wat zouden die personen anders hebben gedaan? Blanco of ongeldig gestemd. Of op exact dezelfde persoon.

    SSL over een publiek netwerk? Sluit alle online banking portals! :p Aangezien je e-ID over public en private keys beschikt is extra versleuteling mogelijk.

    De software laten ontwikkelen door een private onderneming is not done? Vandaar dat dit in samenspraak met de IT departementen van de betrokken ministeries moet worden uitgewerkt. Met toezicht. Maar reken er alsjeblieft niet op dat de Belgische overheid zo een systeem in zijn eentje op poten kan zetten. Een enorm gemakkelijke oplossing: open source het geheel.

    Dat de software niet functioneert zoals het moet? Euh, ja, daarom zijn er testers. Daarom moet dat systeem van alle kanten worden bekeken, uitgeprobeerd worden en gehackt worden. Als mensen foutmeldingen niet correct kunnen interpreteren neem ik aan dat er een grote kink in de kabel zit. Ten eerste is usability een grote prioriteit voor zo een systeem, ten tweede kan het publiek dat overweg kan met een e-ID ook voldoende begrijpen wanneer iets goed is verlopen en wanneer niet. Je kan perfect bijhouden wanneer een kiezer zich aanmeld. Je kan perfect bijhouden welke fouten optreden op dat moment. Bovendien kan je er ook voor zorgen dat de periode voor online stemmen voorafgaat aan de fysieke stembusgang, zodat men nog altijd zijn stem kan uitbrengen al ligt het systeem op zijn gat.

    Waarom zouden stemmen moeten worden weggegooid? Jij gaat er blijkbaar van uit dat het systeem by default instabiel en onbetrouwbaar is. Dat zijn goede karakteristieken voor een tester, maar mag ik even aannemen - zoals eerder gezegd - dat hier wel degelijk de nodige QA aan voorafgaat? Net zoals er in het stemlokaal moet op toegezien worden dat er geen papieren verloren gaan.

    En dan kan je ook profiteren van nieuwe technologie, zodat die proven kan worden. Want wie wil nu eigenlijk in zo’n ijzeren bak met vier wielen gaan zitten als het paard je ook op je bestemming brengt. ;)

    Dus… waar zit het probleem? :)

  3. Avatar van Nico Degraef Nico Degraef 26 Jun 2009 13:27

    Ik zie nog een probleem: de kost
    Als je in elke kiesbureau moet investeren in een pc met internet verbinding om uit te sluiten dat iemand dubbel stemt, waar tegenwoordig zovele kiesbureau’s nog met papier werken en niet elektronisch stemmen, dan is dat een serieuze investering, zeker omdat veel kiesbureau’s zich bevinden in een of ander buurthuis dat niet eens een internet aansluiting heeft. Via 3G dan maar? (ook niet goedkoop, geloof me :p)
    Nu ist gewoon de grote kiesbureaus elektronisch (en offline) en de kleine op papier. Stembrieven versturen en klaar.
    Dus extra kosten:
    ALLE kiesbureaus moeten aan de online stemming geraken van een persoon (ttz: of ze gestemd hebben, want wat ze stemmen is geheim :d). De voorzitter controleert dat bvb. Dat betekent dus al 1 extra pc’tje voor elk kiesbureau. Maar ja: die elektronische van nu moeten ook hun stem dan online versturen, anders kunnen ze achteraf van thuis uit een tweede keer stemmen. Dus alle elektronische ook online zetten. En dan nog alle kleine kiesbureaus waar 50 man en een paardenkop gaat stemmen van papier naar elektronisch (en online) laten overschakelen
    Ohja: en dan nog de ontwikkeling van het systeem, wat wsl 10% ontwikkeling en 90% testing is. En testing is duurder uiteraard :D
    Maw: in your dreams ^^

  4. Avatar van Kevin Kevin 26 Jun 2009 19:07

    Wat betreft de extra pc’s die nodig zijn in ieder stembureau: fout. Je kan het online stemmen beperken tot de stembureaus die over de nodige infrastructuur beschikken.

    De elektronische van nu moeten toch niet per se meteen online worden doorgerekend? Daar geldt hetzelfde als voor stemmen met papier.

    Ik ga niet zeggen dat het goedkoop is om zoiets te bouwen, maar als de overheid dan toch wil investeren…

    Soit, ik vergeef het u vanwege het vechten tegen een jetlag :P

  5. Avatar van Nico Degraef Nico Degraef 27 Jun 2009 10:04

    Niks vergeven dedju
    Als je via de online manier wilt werken en via de lokale stembureaus moet je wel wat uniformiteit gaan voorzien. Als je dan online EN via papier EN via offline digitaal kan stemmen, hoe wil je deze 3 mogelijkheden dan alle 3 van mekaar onderscheiden?
    1) Ik ga elektronisch stemmen en krijg een stempelke. Ik kom thuis en stem nog eens online, die weten immers toch nie of ik al gestemd heb
    2) Ik ga op papier stemmen en krijg een stempelke, zie hierboven
    3) Ik stem online en ga naar het kieskotteke waar ze me wel kunnen controleren ( jammer :( )
    Dus om 1 en 2 te vermijden: enkel elektronisch in het kiesbureau met interactie naar de stem server

  6. Avatar van Kevin Kevin 27 Jun 2009 10:32

    Maar nee. Kruip terug uw bed in!

    Als je “IRL” gaat stemmen word je in het stemlokaal geregistreerd binnen het systeem (kijk, 1 PC nodig omdat men in dat kanton ook online kan stemmen) en dan kan je niet meer online stemmen.

  7. Avatar van Nico Degraef Nico Degraef 27 Jun 2009 11:52

    Dus nu geeft ge zelf toe dat ge in elk stemlokaal een pc met internetverbinding nodig hebt en dus ook in de kleine stembureautjes (die nie eens een internet aansluiting hebben)
    MOEHAHAHAHAhahahaha(nog kleinere hahahaha)
    Maw: te duur ^^

  8. Avatar van Kevin Kevin 27 Jun 2009 12:23

    Pipo: in de stemlokalen van de kantons waar online stemmen mogelijk is: ja. In de andere niet.

  9. Avatar van Nico Degraef Nico Degraef 27 Jun 2009 13:03

    En waarom zou online stemmen plots maar in bepaalde kantons mogen? Dan gaat het idee achter het online stemmen toch verloren?

  10. Avatar van Kevin Kevin 27 Jun 2009 13:04

    Omdat het volgens u te duur en te moeilijk zou zijn om in ieder stemlokaal een pc met internet te voorzien.

  11. Avatar van Nico Degraef Nico Degraef 27 Jun 2009 13:07

    Met andere woorden is de conclusie: online stemmen: vergeet het ^^

  12. Avatar van Kevin Kevin 27 Jun 2009 13:11

    Ik zie nog altijd het probleem niet. :p

  13. Avatar van Nico Degraef Nico Degraef 27 Jun 2009 13:42

    Mij maakt het ook niet uit. Misschien zou het werk voor mij betekenen ^^