ThreeBallot

Ett exempel på ThreeBallot-multiomröstning, med ett första race för president med kandidaterna Jones, Smith och Wu och ett andra race för senator med kandidaterna Yip och Zinn.

ThreeBallot är ett röstningsprotokoll som uppfanns av Ron Rivest 2006. ThreeBallot är ett end-to-end (E2E) auditerbart röstningssystem som i princip kan implementeras på papper. Målet i dess design var att tillhandahålla några av fördelarna med ett kryptografiskt röstningssystem utan att använda kryptografiska nycklar.

Det kan vara svårt för en röst att vara både verifierbar och anonym . ThreeBallot försöker lösa detta problem genom att ge varje väljare tre valsedlar: en verifierbar och två anonyma. Väljaren väljer vilken valsedel som är verifierbar och håller detta hemligt; eftersom rösträknaren inte vet, finns det en 1/3 chans att upptäckas förstöra eller ändra en enskild valsedel. Väljaren tvingas göra två av sina tre valsedlar att radera varandra, så att de bara kan rösta en gång.

Mål

De avgörande fördelarna som ThreeBallot-systemet erbjuder jämfört med jämförbara, chiffrerade valsedlar är:

  1. Dess implementering ser välbekant ut och är enkel för väljarna att förstå, jämfört med andra krypteringssystem (förmodligen den viktigaste fördelen av alla).
  2. Valsedlarna kan räknas direkt, utan dekryptering. Detta beror på att de har egenskapen att summan av poängen är summan av rösterna för kandidaten, även om någon enskild valsedel inte kan avslöja väljarens kandidatpreferens.
  3. Det finns ingen nyckel som kräver skydd eller sekretess för att upprätthålla säkerheten (" akilleshäl " i många föreslagna system).
  4. Även om det kräver en maskin för att validera valsedlarna innan de deponeras, är valprotokollet efteråt helt på papper och kräver ingen ytterligare säkerhetsprocess utöver vad som erbjuds traditionella valsedlar.

Ytterligare teoretiska systemmål inkluderar:

  1. Varje väljares röst är hemlig, vilket förhindrar röstförsäljning och tvång.
  2. Varje väljare kan verifiera att hans röst inte förkastades och användes korrekt och inte ändrades i beräkningen av valresultatet. (Och om inte, är väljaren i stånd att bevisa att rösträknaren fuskat.)
  3. Alla kan verifiera att valresultatet har beräknats korrekt.
  4. Metoden är designad för användning med pappersvalsedlar och kräver i första hand lågteknologiska enheter, men är kompatibel med mer avancerad teknik.

Metod

I ThreeBallot-röstningssystemet får väljarna tre tomma röstsedlar, identiska förutom en unik identifierare som är distinkt för varje röstsedel. För att rösta en kandidat måste väljaren välja den kandidaten på två av de tre valsedlarna. För att rösta emot en kandidat (motsvarande att lämna en valsedel tom i andra system) måste väljaren välja den kandidaten på exakt en valsedel.

Således får varje kandidat minst en valsedel med ett märke och en valsedel utan ett märke:

Kandidat Valsedel Anteckningar
1 2 3
John Foo X X Alla två markerade kolumner indikerar en "för"-röst.
Barb Bar X Varje enskild kolumn markerad är inte en "för"-röst.
Bill också X

Som ett resultat, att se en valsedel säger inte om väljaren röstade kandidaten eller inte. Även om detta också innebär att varje kandidat får minst en röst när de tre valsedlarna summeras, kan denna konstanta förskjutning för alla kandidater (lika med antalet väljare) subtraheras från den slutliga summan av alla valsedlar.

Det är dock absolut nödvändigt att verifiera att väljaren inte har missmärkt sin valsedel – ingen kandidat kan lämnas tom på alla tre valsedlarna, och ingen kandidat kan väljas på alla tre valsedlarna:

Kandidat Valsedel Anteckningar
1 2 3
Andy Hoppsan X X X Inte tillåtet.
Elle Fel Inte tillåtet.

Detta krav innebär att alla tre röstsedlar måste sättas in i en maskin för att validera detta innan omröstningen med 3 röster görs. Underlåtenhet att göra det skulle göra det möjligt för en väljare att både lägga en extra röst för och en extra röst emot , vilket möjliggör väljarfusk; genom utformning kan en för -röstning inte särskiljas från en mot -röst när den väl har avgivits, så detta flerröstsbedrägeri kunde inte upptäckas förrän den slutliga sammanräkningskontrollen (och kanske inte ens då), och det kan inte korrigeras vid den tidpunkten eller ens spåras till en viss väljare.

Vanligtvis kan röstsedlarna vara sammanfogade för att förenkla markeringen av väljaren, men innan de avges är det absolut nödvändigt att sedlarna separeras. När den väl separerats och kombinerats med andra valsedlar i kodad ordning, krypteras den sanna rösten. Tänk till exempel bara på valsedeln i tredje kolumnen för John och Barb ovan. Var och en av dem har ett "X", men väljaren röstar faktiskt på John och inte Barb. På samma sätt, om du bara såg den andra kolumnomröstningen, visar den bara ett märke för Bill, men återigen är den totala omröstningen av de tre valsedlarna tillsammans faktiskt för John. När alla 3 valsedlar är summerade kommer totalsummorna att visa 2 poäng för John och 1 poäng vardera för Barb och Bill. Att subtrahera antalet väljare, i detta fall 1, ger 1 röst för John och ingen för de andra.

Vid vallokalen gör väljaren en kopia av någon av sina tre valsedlar inklusive dess ID-nummer. I praktiken skulle den maskin som verifierar röstsedlarna utföra denna uppgift automatiskt baserat på väljarens fria val av en av röstsedlarna. Sedan släpps alla tre originalröstsedlarna i valurnan. Väljaren behåller det ena exemplaret som kvitto.

I slutet av valet publiceras alla valsedlar. Eftersom varje röstsedel har en unik identifierare kan varje väljare verifiera att hans röster räknades genom att söka efter identifieraren på hans kvitto bland de publicerade röstsedlarna. Men eftersom väljaren väljer vilka av sina röstsedlar han får som kvitto, kan han se till att hans kvitto bär valfri kombination av markeringar. Således kan väljarna inte bevisa för ett annat parti vem de röstade på, vilket eliminerar röstförsäljning, tvång etc. med hjälp av detta kvitto.

Det finns ingen uppgift på själva valsedlarna vilken som kopierades för att göra ett kvitto. Så om en valsedel vid något tillfälle "förtappades" eller med uppsåt kasserades, finns det en 1/3 chans att detta skulle vara kvittot. En vaksam väljare skulle kunna upptäcka denna förlust.

Rivest diskuterar andra fördelar och brister i sin artikel. I synnerhet är det inte lämpat för rankad preferensröstning. Ett fälttest har funnit att ThreeBallot har betydande sekretess-, säkerhets- och användbarhetsproblem, såväl som implementeringsfällor.

Trasig kryptering

Krypteringssystemet som användes i ThreeBallot bröts av en korrelationsattack utarbetad av Charlie Strauss, som också visade hur det kunde användas för att bevisa hur du röstade. Medan ThreeBallot är säker om det bara finns en ja/nej-fråga på valsedeln, observerade Strauss att den inte är säker när det finns flera frågor, inklusive fallet med en enda ras med många kandidater att välja bland. Hans attack utnyttjade det faktum att inte varje kombination av 3 röstsedlar bildar en giltig trippel: föreslagna trippel med 3 eller 0 röster avgivna i valfri rad på röstsedeln (inte bara en ras av intresse) kan avvisas, eftersom dessa röstsedlar inte kan vara från samma väljare. Likaså kan föreslagna trienor som resulterar i en röst på mer än en kandidat i någon ras avvisas. Eftersom det finns exponentiellt fler möjliga röstmönster än det finns röstsedlar som läggs i ett typiskt område (eller till och med människor i världen), kan statistiskt sett de flesta röstsedlar trimmas unikt för tillräckligt långa röstsedlar. Vanligtvis kan 90 % av röstsedlarna rekonstrueras på röstsedlar med bara 11 till 17 frågor. Detta gör troligen att en väljares röster är kända av alla som har kvittot. Dessutom, även utan ett kvitto, läcker det information som kan misskreditera en väljares påstådda kandidatval. Följaktligen kan en väljare som konspirerar för att bevisa sin röst (för pengar, tvång eller eftervärld) markera alla valsedlar i ett tidigare överenskommet ovanligt mönster som senare skulle kunna bevisa för en tredje part om avtalet hölls (även utan att se kvittot). I båda fallen är den slutna omröstningens slöja genomborrad och spårbar till ID-numret på kvittot.

Reviderad ThreeBallot

Rivest erkände senare detta logiska fel i det ursprungliga konceptet och reviderade RFC- schemat i sin slutliga publikation för att kräva att varje rad (varje ja/nej) rivas individuellt (förstör korrelationen mellan frågorna) och även ha unika spårningsnummer på varje markering på varje valsedel (inte bara ett ID för varje kolumnomröstning). Även om detta återställde den okrossbara aspekten av systemet, gjorde spridningen av kvitton (ett per rad) och hackade röstsedlar mekaniken för att bearbeta rösterna eller för en väljare som granskade ett kvitto avsevärt komplex, vilket undergrävde dess avsedda enkelhet. En elektronisk version som tar itu med implementeringen av pappersomröstning och användbarhetsproblem föreslogs av Costa, et al.

Se även