27. maaliskuuta 2019

Ainoa tapa tehdä turvallinen sähköinen äänestys

Olen kirjoittanut aiemminkin blogissani erilaisten sähköisten / elektronisten / digitaalisten äänestämisten ongelmakohdista, mutta näin vaalien alla on syytä palata taas aihepiiriin. On nimittäin olemassa yksi ja vain ja ainoastaan yksi turvallinen tapa tehdä tuollainen äänestys. Se on itse asiassa täysin turvallinen. Täysin turvallisella tarkoitan, että se on ihan oikeasti turvallinen aivan kaikkia mahdollisia hakkerointeja ja väärinkäytöksiä kohtaan nyt ja tulevaisuudessakin. Edes pahimmassa mahdollisessa skenaariossa (tyyliin kvanttitietokoneet hakkeroimassa tikettejä ja laajamittainen hakkerointi lukuisille servereille jne.) ei olisi mahdollista tehdä vaalivilppiä niin, ettei vaalivilppi paljastuisi 100% varmuudella. Siinä onkin luultavasti syy, miksei sitä haluta ottaa käyttöön: Vaalivilppi ei olisi Suomessakaan mahdollista, jos meillä olisi tuollainen systeemi käytössämme.

Systeemi on erittäin yksinkertainen ja edullinen toteuttaa.
  1. Äänestäjä tunnistetaan ja hänelle annetaan sähköinen äänestystiketti, jolla voi äänestää tasan yhden kerran. Tiketti voi olla vaikka PKI-systeemin salainen avain tai vain jonkinlainen digitaalinen tiketti, joka on allekirjoitettu luotettavan tahon toimesta siten, että siitä käy ilmi, kenelle se on annettu, ja/tai henkilö esim. mobiilivarmenteen tai pankkitunnuksen avulla lukitsee tiketin omaan henkilötunnukseensa (esim. digitaalisesti allekirjoittaa sen) tms. jne. yms. evvk, tämä kohta on oikeastaan aika merkityksetön. Tärkeää on kuitenkin, että järjestelmään merkitään, että ko. äänestäjä on nyt saanut äänestysoikeutensa, eikä hän voi enää saada toista tikettiä missään olosuhteissa millään perusteella.
  2. Äänestäjä äänestää tiketillään vaalipaikan koneella tai vaikka omalla tietokoneellaan ja saa äänestyksestä digitaalisesti allekirjoitetun tositteen, josta käy ilmi ko. äänelle nyt annettu satunnainen luku (kirjausnumero) ja äänestetty numero (ja vaalipiiri tms. missä on siis äänestetty). Kirjausnumero voidaan muodostaa esim. kaavalla sha256(äänestäjänhetu+tiketin salaisen avaimen sha256 tiiviste+äänestäjän itse valitsema salasana) ja kirjausnumero voidaan antaa/muodostaa äänestäjälle katsottavaksi jo ennen kuin äänestäjä äänestää. Jos äänestäjä epäilee, että tosite tulee väärät tiedot sisältäen ulos laitteesta, hän voi vaikka videokuvata koko äänestysprosessinsa. Jos äänestäjä epäilee, että hänen kirjausnumeronsa on jo jollakin käytössä, hän voi tarkistaa esim. vaali.fi palvelusta, ettei sitä kirjausnumeroa ole vielä kirjattu sinne (se ei ole äänestänyt). Olennaista on, että henkilö saa siis tämän tositteen, jossa on tämä satunnainen numero (kirjausnumero) ja numero, jota on äänestetty sillä kirjausnumerolla. Äänestyskoneet eivät tallena sitä, millä tiketillä on äänestetty mitäkin, koska koneet eivät käytä tikettiä tämmöiseen asiaan, tiketillä vain ja ainoastaan todetaan, että ko. tiketin käyttäjällä on oikeus antaa 1 ääni ja sillä hyvä.
  3. Äänestysvalinta laitetaan lohkoketjuun tai vaikka vaan suoraan vaalit.fi nettisivulle siten, että sieltä avautuu suoraan taulukko, jossa lukee kaikki kirjausnumerot ja mitä numeroa niillä kullakin on äänestetty ja että äänestys on tapahtunut äänestysaikana.
  4. Kun äänestysaika on mennyt umpeen, jokaiselle, joka ei ole äänestänyt, luodaan tiketti (jota ei ole voitu tietenkään vahvalla tunnistautumisella allekirjoittaa tiettyyn hetuun kuuluvaksi) ja tiketti merkitään äänestämään "epäluotettuna" vaikka numeroa 000 tms. Kaikki nämä tiketit ja niiden luomat kirjausnumerot kirjataan luonnollisesti myöskin vaikka vaalit.fi sivulle, kuten ihmisten antamat äänetkin ja näiden kohdalla merkitään, että äänestys on tapahtunut äänestysajan ulkopuolella ja epäluotettavalla tiketillä, eli äänet ovat hylättyjä.
Se on siinä. Vaalilautakunta voi sitten yksinkertaisella ohjelmalla (voisi olla vaalit.fi sivullakin) katsoa vaalit.fi sivulta, miten monta ääntä kukakin on saanut ja ketkä tulevat valituksi. Jokainen äänestäjä voi niin ikään katsoa vaalit.fi sivulta, että hänen kirjausnumeronsa antama ääni on oikeasti kirjautunut sinne oikein, eli että hänen kirjausnumeronsa on äänestänyt sitä numeroa, jonka hän on oikeasti äänestänytkin. Jokainen voi niin ikään itse laskea vaalit.fi sivun kautta, että vaalilautakunta on itsekin laskenut oikein valitut edustajat, ynnäämällä itse äänisaaliit haluamallaan tavalla yhteen jne. Jokainen voi myös laskea, ettei annettuja ääniä ole enemmän kuin äänestämään oikeutettuja. Vaalisalaisuus säilyy, koska kukaan ei tiedä, kuka on äänestänyt milläkin kirjausnumerolla.

Mutta voihan siinä tehdä vilppiä, eikös? Esim...
A) Mitä jos joku muuttaa tuolla vaalit.fi olevia tietoja toisiksi, esim. minun ääneni vääräksi?
- No, silloin voit tositteellasi todistaa, että kirjausnumerosi on äänestänyt numeroa X, eikä numeroa Y, kuten vaalit.fi lukee ja vaalivilppi paljastuu 100% varmuudella...toki voit videoida oman äänestyksesikin jos pelkäät, että tiketin voisi väärentää jotenkin, jotta voit joka tapauksessa osoittaa, että sinun kirjausnumerosi ON äänestänyt numeroaX. Toki tämmöistä vilppiä hankaloittaa jo kummasti se, että käytetään vaikkapa lohkoketjuteknologiaa tai vahvaa kryptoa, jolloin ko. ääneltä puuttuu luonnollisesti niihin kuuluvat kryptografiset vahvistukset.

B) Mitä jos joku leimaa äänestämättömien tikettejä käyttöön ja äänestää niillä itse ko. henkilöiden sijasta?
- Ei onnistu, koska äänestämättömät henkilöt voivat käydä vielä äänestämässä ja silloin vilppi paljastuu ja toisaalta, he eivät voi leimata niitä tikettejä käyttöönsä, koska äänestäjän pitää itse leimata ne esimerkiksi vahvalla tunnistautumisella (digitaalinen allekirjoitus) itselleen käyttöön.

C) Mitä jos joku estää minua äänestämästä, ei anna tikettiä minulle?
- Näin voi joku tehdä nykyäänkin teoriassa, olla antamatta sinulle äänestyslippua. Asian videointi paikanpäällä toki estää tämän tehokkaasti. Toki oikein suoritettuna tuo tiketin allekirjoitus omalla vahvalla tunnistautumisellasi ja lohkoketjuteknologia voidaan tehdä semmoiseksi, ettei siinä yksinkertaisesti ole mahdollisuutta, ettet saisi tikettiäsi ilman, etteikö siitä jäisi jo siinä tilanteessa todisteet esille.

D) Mitä jos joku vaihtaa ääneni toiseen?
- Ei ole mahdollista, koska lohkoketjutekniikka ja myös koska kohta A.

E) Mitä jos joku lukee tiedot vaalit.fi sivulta väärin, syöttää minulle väärää tietoa, jossa näkyisi, että olen äänestänyt oikein, mutta todellisuudessa vaalit.fi sivulla onkin kirjattu väärin ääneni?
- Voit mennä mille tahansa nettipäätteelle missä tahansa ja katsoa sieltä vaalit.fi sivun sisältöä. Niin myös vaalilautakunta tekisi varmistaakseen tuloksen. Mikään hyökkääjä ei voi tietää, miltä nettipäätteeltä mistä ip:stä kukakin aikoo katsoa mitäkin kirjausnumeroa ja näin ollen tarjota jokaiselle "oikealla tavalla väärennettyä" tulossivua.

F) Mutta eikös paperinen äänestys ole kuitenkin parempi kun tämmöinen viritys?
- Ei ole, koska paperiäänien osalta et voi koskaan tarkistaa ja varmistaa, että äänesi on OIKEASTI kirjaantunut tietokantoihin asianmukaisesti, etkä edes sitä, onko tietokanta ylipäätään oikea vaiko täysin tekaistu. Minun systeemissäni molemmat ovat yksinkertaisia, suorastaan automaatioita ja vaalivilppi ei ole mahdollista.

9 kommenttia:

  1. Muuten hyvä, mutta tämä mahdollistaa äänien ostamisen.

    "Äänestäkää minua, lähettäkää tositteenne minulle jälkikäteen, saatte 100 euroa per naama".

    Nykyjärjestelmässä on juuri se olennainen pointti että mitään tositetta ei saa eli et voi todistaa äänestäneesi tiettyä henkilöä kenellekään muullekaan. Luottamus syntyy siitä että ensimmäinen vaalipaikalla tarkistaa uurnan ja siitä että puolueiden edustajat kyräilevät toisiaan ääniä laskiessa.

    VastaaPoista
    Vastaukset
    1. Käytännössä äänien ostamisesta jäisi heti kiinni joten aika mitätön asia verrattuna nykyjärjestelmän aukkoihin.

      Poista
  2. Koska väite on, että systeemin toimintatapa kestää hakkeroinnit, olettakaamme, että vihamielinen taho murtautunut käytettyihin tietokoneisiin.

    Kohdassa 2 murrettu järjestelmä antaa kahdelle samaa hakkerin inhokkia äänestäneelle saman kirjausnumeron. Kahden äänen sijaan kyseiselle inhokille annetaankin järjestelmän sisällä vain yksi ääni ja toinen jollekin hakkerin suosikille. Lukumäärät täsmäävät. Vaalit.fi sivulla oleva lista kertoo, että kirjausnumero ja ääni täsmäävät. Se mitä ei tiedetä, on että kaksi äänestäjää katsoo samaa riviä ja yksi rivi on luotu hakkerin suosikille.

    Ainoastaan jos kaksi äänestäjää vertailee keskenään kirjausnumeroitaan, mitä käytännössä harva tekee, ja toteaa ne identtisiksi, hakkerista on saatu vainu. Kiikissä hän ei vielä ole. Vaaliviranomaisten pitää ensin tutkia, onko vika järjestelmässä vai yrittävätkö nämä kaksi vain vedättää. Itselläsi lienee ollut vaikeuksia saada viranomaisia argumentoitua kannallesi? Myös pelkkä vaalien häirintä ja tuloksen saattaminen virheelliseksi tai yleisen epäilyksen alle sopii hyvin muun muassa erään isohkon valtion hybridikampanjoihin.

    Järjestelmä ei ole 100 % hakkerointivarma. Kiinnijäämisriski kasvaa rikoksen suuruuden mukana, mutta tuskin mikään 90 % kannatus vihreille olisikaan uskottava tulos. Pari paikka siellä täällä inhokeilta suosikeille vaikuttaa jo pääministerin paikkaan ja hallituskokoonpanoon.

    Ja tuloksen luotettavuus ei edes ole ainoa kriteeri vaaleissa. Kyllähän sitä voi hioa paremmaksi ja paremmaksi. Verkkopankit ovat luotettavia. Huoli on myös vaalisalaisuudesta, sekä edellä mainitusta demokraattisen järjestelmän luotettavuuden saattamisesta epäilyksen alle.

    VastaaPoista
  3. > Nykyjärjestelmässä on juuri se olennainen pointti että mitään
    > tositetta ei saa eli et voi todistaa äänestäneesi tiettyä
    > henkilöä kenellekään muullekaan.

    Kuka tahansa voi kuvata äänestysprosessinsa ja sitä kautta kerätä massit maksetuista äänistä.

    > Kohdassa 2 murrettu järjestelmä antaa kahdelle samaa hakkerin
    > inhokkia äänestäneelle saman kirjausnumeron.

    Tämä voidaan lohkoketjutekniikalla estää, aivan kuten estyy doublespending Bitcoineilla, mutta anyway...
    Tämä voidaan estää sillä, että äänestäjä katsoo itse vaalit.fi sivulta, onko annettu kirjausnumero jo käytetty vaiko ei, jos on, voi nostaa haloon...

    > Kahden äänen sijaan kyseiselle inhokille annetaankin
    > järjestelmän sisällä vain yksi ääni ja toinen
    > jollekin hakkerin suosikille. Lukumäärät täsmäävät.

    vaalit.fi sivulla näkyisi, että toinen ääni on annettu väärälle ehdokkaalle mitä äänestäjän kuitissa lukee.

    > Vaalit.fi sivulla oleva lista kertoo, että kirjausnumero
    > ja ääni täsmäävät. Se mitä ei tiedetä, on että kaksi
    > äänestäjää katsoo samaa riviä ja yksi rivi on luotu hakkerin suosikille.

    Eivät tietenkään täsmäisi, jos äänestäjät eivät olisi molemmat äänestäneet sitä ehdokasta.

    > Ainoastaan jos kaksi äänestäjää vertailee keskenään kirjausnumeroitaan,
    > mitä käytännössä harva tekee, ja toteaa ne identtisiksi, hakkerista on
    > saatu vainu.

    Tietenkin kuka tahansa voisi luoda ja käyttää softaa, joka tsekkaa vaalit.fi sivun läpi ja katsoo, onko mikään kirjausnumero siellä kaksi kertaa. Vaalilautakunta ainakin tekisi niin.

    > Kiikissä hän ei vielä ole. Vaaliviranomaisten pitää ensin tutkia, onko vika
    > järjestelmässä vai yrittävätkö nämä kaksi vain vedättää. Itselläsi lienee
    > ollut vaikeuksia saada viranomaisia argumentoitua kannallesi?

    Irrelevanttia.

    > Myös pelkkä vaalien häirintä ja tuloksen saattaminen virheelliseksi tai
    > yleisen epäilyksen alle sopii hyvin muun muassa erään isohkon valtion
    > hybridikampanjoihin.

    Epäilyksen alaiseksi systeemi ei voi tulla, koska se on aukoton. Idiootit toki pelkäävät mitä vain, mutta eivät yleensä nykysysteemiä, jossa ei ole mitään varmuutta mistään.

    VastaaPoista
  4. >Kuka tahansa voi kuvata äänestysprosessinsa ja sitä kautta kerätä massit maksetuista äänistä.

    Noup. Nykyjärjestelmässä: kirjoita vaalilippuun maksetun ehdokkaan numero, ota kopissa valokuva. Pyydä uusi äänestyslipuke, sano että töhrit vahingossa ensimmäisen. Maksettu lipuke tuhotaan, sitä ei leimata eikä vilahda uurnaan. Ääänestä ketä haluat. Kerää massit tyhmältä joka luottaa valokuvaan. Voit ottaa vaikka toisen kuvan siitä kun leimattu lippu sujahtaa uurnaan, vaikka se onkin ihan eri paperi kuin se mistä otit kopissa kuvan.

    Ehdotuksessasi: Näytä satunnaislukusi maksajalle äänestettyäsi. Maksaja odottaa vaalipäivää ja katsoo vaalit.fi-sivuilta että äänestit mieltymysten mukaan. Kerää rahat mutta vain jos teit mitä sovittiin. Et voi sopia kavereitten kanssa että yksi äänestää maksetusti ja kaikki palauttaa saman kirjausnumeron koska maksaja näkisi tämän. Et luultavasti voi arvata jonkun numeroa (kirjausnumerot tuskin olisivat juoksevia) etkä voi mitenkään päätellä että random-numero olisi tilaajan toivomusten mukainen. Ainoa tapa on antaa maksajalle aito numero.

    => Äänien ostaminen mahdollista laajassa mittakaavassa.

    VastaaPoista
  5. > Noup. Nykyjärjestelmässä: kirjoita vaalilippuun maksetun ehdokkaan numero,
    > ota kopissa valokuva. Pyydä uusi äänestyslipuke, sano että töhrit vahingossa
    > ensimmäisen. Maksettu lipuke tuhotaan, sitä ei leimata eikä vilahda uurnaan.
    > Ääänestä ketä haluat. Kerää massit tyhmältä joka luottaa valokuvaan.
    > Voit ottaa vaikka toisen kuvan siitä kun leimattu lippu sujahtaa uurnaan,
    > vaikka se onkin ihan eri paperi kuin se mistä otit kopissa kuvan.

    En puhunut yksittäisten valokuvien ottamisesta mitään. Puhuin koko prosessin kuvaamisesta. Rautalankaa: Ota videokuvaa siitä, kun rustaat lippuun ehdokkaan X numeron ja pidä kamera koko ajan tuota lappua kohden osoitettuna, kunnes se on leimattu ja pudotettu uurnaan. Näin saat 100% todisteen siitä, ketä olet äänestänyt ja voit kerätä massit maksetusta äänestäsi.

    Äänten ostaminen on nykyisinkin täysin mahdollista. Case closed.

    PS. Tuossa minun systeemissäni voi muuten huijata äänten myynnissä jos äänen koettaa myydä vain lipuketta vastaan: Senkun vaihdat lipukkeesi jonkun kanssa, joka on äänestänyt sitä, jota olet lupautunut äänestämään. Äänen ostaja ei voi tietää, että lipuke ei ole sinun vaan jonkun muun. Näin ollen ainoa keino myydä ääniä tuossa systeemissäni on sama kuin nykysysteemissäkin: Sinun pitää videokuvata koko äänestysprosessisi. Eli tuohon liittyen mitään muutos ei olisi nykysysteemiin.

    VastaaPoista
  6. Jos nykyiset äänestys laput olisivat suljettuja kun ne luovutetaan äänioikeutetulle ja niiden sisällä olisi juokseva numero joista toinen olisi painettu irti repäistävään liuskaan. Äänestäjä merkitsisi ehdokkaan numeron sille varattuun kenttään ja vapaamuotoisen töherryksen numeroliuskan saumaan ja repisi liuskan itselleen talteen. Vaalien jälkeen voisi tarkastaa äänestys lipun numerolla, että ääni on mennyt oikeaan osoitteeseen, epäselvissä tapauksissa voisi verrata irtirevityn numeroliuskan töherryksenpuolikasta varsinaiseen äänestyslipukkeeseen.

    VastaaPoista
  7. > Jos nykyiset äänestys laput olisivat suljettuja kun ne luovutetaan äänioikeutetulle
    > ja niiden sisällä olisi juokseva numero joista toinen olisi painettu irti repäistävään
    > liuskaan. Äänestäjä merkitsisi ehdokkaan numeron sille varattuun kenttään ja
    > vapaamuotoisen töherryksen numeroliuskan saumaan ja repisi liuskan itselleen talteen.
    > Vaalien jälkeen voisi tarkastaa äänestys lipun numerolla, että ääni on mennyt oikeaan
    > osoitteeseen, epäselvissä tapauksissa voisi verrata irtirevityn numeroliuskan
    > töherryksenpuolikasta varsinaiseen äänestyslipukkeeseen.

    Totta, tämäkin toimisi jossain määrin, mutta äänestäjä ei voisi kyllä TODISTAA, että hän on äänestänyt sitä ketä äänesti, ainoastaan tarkistaa, menikö ääni oikein. Jos ei mennyt, ei hän voisi todistaa, ettei mennyt.

    Lisäksi tulisi ongelma sen suhteen, että jos noita lappuja pudottaisi vaaliuurnaan ylimääräisiä tai poistaisi olemassa olevia sieltä ja korvaisi toisilla jne.

    VastaaPoista
    Vastaukset
    1. Ei äänestäjä voisikaan todistaa ketä on äänestänyt, mutta töherryksenpuolikkaan kopioiminen väärennettyyn lippuun olisi miltein mahdotonta tai ainakin aikaavievää puuhaa. Mikään ihmisen rakentama järjestelmä, oli se sitten manuaalinen tai digitaalinen ei ole aukoton ,jos väärinkäyttäjillä on tarpeelliset resurssit. Ehdotuksella oli vain tarkoituksena tehdä väärinkäytöksistä hieman hankalampaa, ehkäpä pitäisi lähteä aluksi vaihtamaan lyijykynät kuivamustekyniin😂

      Poista