Tag Archives: e-hääletus

Kuidas allkirjastatakse e-hääli?

Sel nädalal kirjutas Eesti Ekspress, et häkker teavitas Eesti meediaväljaandeid: pühapäeval lõppenud kohalike omavalitsuste valimistel antud e-hääled ei kehti. Nimelt näitas programm DigiDoc4 talle seda, et tema e-häälele lisatud digiallkiri ei kehti.

RIA peaarhitekt Tarmo Hanga selgitab allpool täpsemalt, kuidas e-häälte andmise protsess on üles ehitatud ja miks ajakirjanduse poole pöördunud inimese järeldus on ekslik.


E-hääletuse juures on oluline tagada nii hääle salajasus kui ka see, et inimene, kes hääletab, oleks ikka tema ise.

Niisama oluline on tagada kontroll ka e-hääletuse infosüsteemi Koguja komponendi majutusteenuse pakkuja tegevuse üle. (Koguja on e-hääletuse infosüsteemi osa, mis võtab vastu e-hääli).

Hääle salajasus

Hääle salajasus tagatakse sellega, et valijarakenduse vahendusel krüpteeritakse e-hääl hääletussüsteemi avaliku võtmega.

Hääletussüsteemi avalikule võtmele vastav salajane võti on jagatud võtmeosakuteks, mis on antud valimiskomisjoni eri liikmete kontrolli alla.

Salajane võti on võimalik kokku panna alles siis, kui valimiskomisjon koguneb e-häälte lugemiseks.

Koguja majutusteenuse pakkujal puudub seetõttu igasugune teadmine, kelle poolt konkreetne inimene hääletas.

Hääletaja isiku tuvastamine

Hääletaja isiku tuvastamiseks moodustab hääletaja valimisrakenduses BDOC formaadis allkirjastatud ümbriku, milles sisaldub tema signeerimisvahendi (nt m-ID või ID-kaardi) avalik võti.

Allkirjastamine ise toimub aga teisiti kui tavaliselt. Ümbriku moodustamisel ei tehta kehtivuskinnituse kontrolli ja ajatempli võtmist klientarvutis nagu seda tehakse harjumuspäraselt dokumendi allkirjastamisel DigiDoc tarkvara vahendusel.

Seda ei tehta kahel põhjusel. Esmalt ei saa eeldada, et klientarvutit ei ole pahatahtlikult manipuleeritud. Just seetõttu välditakse süsteemis olevaid kolmandaid tarkvarakomponente nii palju kui võimalik (e-hääletuse infosüsteemi vaatenurgast on kolmandaks komponendiks ka DigiDoc tarkvara). Lisaks sellele on vaja auditeerida ka kogumisteenuse osutaja tegevust.

BDOC formaadis signeeritud (ja krüpteeritud häält sisaldav) ümbrik edastatakse seetõttu pärast e-hääletamise rakenduses toimunud signeerimist otse Koguja teenusele.

Koguja serveri majutusteenuse osutaja auditeeritavus

Koguja teenus kontrollib serveri poolel saadud BDOC ümbriku signeerimiseks kasutatud avaliku võtme kehtivust, võtab ASi SK ID Solutions teenuste vahendusel ajatempli ning salvestab korrektse ümbriku teenuse e-urni. Seda vaid juhul, kui hääl vastab allkirjastatud hääle tingimustele: näeb välja nagu hääl, kvalifitseerub ajatempli ja OCSPga ning verifitseerub korrektselt.

Kõik kvalifitseerivad elemendid saadetakse nii valijarakendusele kui väljastatakse hääle kontrollrakendusele. See tähendab, et valija saab lõpuni kvalifitseeritud häält verifitseerida, aga seda ei talletata mitte kusagil DigiDoc4 klientrakenduse jaoks sobivas vormingus.

Eelkirjeldatud sammudega tekitatakse olukord, kus Koguja serveri haldusteenuse pakkuja tegevus muutub kolmanda osapoole (SK) kaudu valimiskomisjoni jaoks samamoodi auditeeritavaks. Koguja teenuse e-urnis olevad hääled ja SK teenuse poole esitatud kontrollpäringud peavad omavahel kattuma.

E-hääletamise süsteemi on selgitatud ka veebilehel valimised.ee. Tehniliste detailidega saab huvi korral tutvuda GitHubis.

Hääletusprotsessi terviklikkuse kontroll

See toimub hääletaja jaoks kontrollrakenduse kaudu.

Kontrollrakenduse saab paigaldada oma nutiseadmesse Google Play või Apple Store’i poodidest (ja ainult sealt, sest muud allikad ei ole usaldusväärsed). E-hääletamise kliendi ja selle kontrollrakenduse platvormide sunnitud erisus tagab äärmiselt suure tõenäosusega olukorra, kus juhul, kui hääletaja arvutit ja seal olevaid rakendusi (ka e-hääletuse klienti) on pahatahtlikult manipuleeritud, säilub hääletaja jaoks sellest asjaolust teadasaamise võimalus.

Juhul kui hääletaja jaoks ilmneb erisus e-hääletamise kliendi vahendusel teostatud hääletustoimingu ja kontrollrakenduses kuvatu vahel, võib kahtlustada manipuleeritust ja sellest tuleks esimesel võimalusel asjakohaseid institutsioone teavitada. Tõenäosus, et „pahalane“ suudab koordineeritult kontrollida protsessi vältel nii konkreetset e-hääletuse klienti kui ka Google Play või Apple Store’i poodide kaudu levitatavat kontrollrakendust, on äärmiselt väike. Seetõttu saab kontrollrakendust pidada väga efektiivseks vahendiks. Julgustame siinkohal kõiki seda järjest enam kasutama.

Kokkuvõte: e-hääled kehtivad

Ajakirjandusele kirja saatnud inimene võttis BDOC failid oma arvutis välja siis, kui hääletamisprotsess oli veel pooleli. Seda saab vastavate oskuste olemasolul teha iga arvutikasutaja. Sel hetkel oli e-hääl krüpteeritud ning signeeritud.

Selleks, et tegemist oleks digitaalselt allkirjastatud dokumendiga, peaks sellele BDOC failile olema lisatud veel ajatempel ja isiku sertifikaadi kehtivuse kontrolli vastus. Need võetakse aga serveri poolel, kuhu kasutajal puudub ligipääs. Serveris lisatakse failile ajamärgend ning AS SK ID Solutions käest saadud sertifikaadi kehtivuse info.

E-hääle andmise protsess on niimoodi üles ehitatud ja seetõttu on ka kõik korrektne.

Põhimõtteliselt võiks tuua paralleeli jaoskonnas pooliku protsessi tegemisega: lähed jaoskonda, võtad sedeli, täidad ja jooksed koos sedeliga minema. Sedel on küll täidetud, aga templit pole ja valimiskasti see sedel ei jõua.

Ekraanikuva lehelt valimised.ee

RIA analüütikud: e-hääletamise tõrked ei avalda kriitilist mõju valimiste läbiviimisse

RIA analüüsi- ja ennetusosakonna analüütikud on andnud hinnangu e-hääletamise esimese päeva tehnilistele tõrgetele ning nende võimalikule mõjule valimistel osalemisele. Kuigi RIA ei vastuta e-hääletamise süsteemi ja valijarakenduse arenduse eest, toetame valimisteenistust tehniliselt ning vastutame valimiste infosüsteemi, sh valijarakenduse majutuse ja häälte kogumise eest.

RIA hinnangu andmise ajend on portaalis Geenius ilmunud Ronald Liive arvamuslugu „KOV valimiste e-hääletus on kobarkäkk, mis enam kunagi korduda ei tohi”.

Juhtum nr 1

11 minuti jooksul kuvas valijarakendus hääletajatele lõpus teksti, et tegu on testhäälega, mis arvesse ei lähe. Hääled tegelikult arvestati, tegu oli kasutajate teavitamist mõjutava konfiguratsiooniveaga (testhääletuse lõpu kellaaeg oli teavitussüsteemis seadistatud tund aega hilisemaks), mis mõjutas ainult näidatavat teksti. Viga parandati ja rohkem ei ilmnenud.

Mõju: ükski hääl ei jäänud eksituse tõttu lugemata, seega puudub mõju valimiste läbiviimisele. Intsidendil on samas mõju valimiste korraldajate usaldusväärsusele. E-hääletamine jätkus aga tavapäraselt ning pärast testhääletuse intsidenti e-hääletas esimese päeva õhtuks enam kui 45 000 valijat, teisipäeva õhtuks veel ligi 30 000. See tähendab, et ka mõju valimiste korraldajate usaldusväärsusele oli pigem madal.

RIA hinnang: otsest mõju pole, sest valijad said hääle anda ja hääl läks arvesse ka nimetatud aja jooksul. Tegemist on maine/usaldusväärsuse intsidendiga, mille mõju valimiste läbiviimisele ja valimistulemusele võib olla kaudne: madalama usaldusväärsuse puhul võib osa hääletajaist hääletamisest loobuda.

Oluline on ära märkida, et tegemist on konfiguratsiooniveaga, mille puhul pole põhjust kahtlustada pahatahtlikku või ebapädevat käitumist. Seega RIA hinnangul ei mõjuta intsident oluliselt e-hääletuse läbiviimist ega selle küberturvalisust.

Juhtum nr 2

Paljudel MacOSi uusima platvormi kasutajatel ei toiminud valijarakendus koos ID-kaardiga. Valijarakendusel ei olnud vaikimisi õigust kaasata teiste rakenduste teeke. Valijarakendus ise toimis, kuid selle puudulik signeerimine mõjutas lõpptulemust. Probleem tuvastati, lahendati ja loodi uus valijarakenduse versioon.

Mõju: MacOSi kõige viimase operatsioonisüsteemi versiooni Big Sur kasutajad ei saanud ID-kaardiga e-hääletusel kuni esmaspäeva lõunani osaleda. Selle tõttu võis jääda paljudel e-hääletamata, kuniks esmaspäeva pärastlõunal tehti avalikuks uue signatuuriga valijarakendus (kasutajatugi registreeris üle 30 pöördumise, kuid tõenäoliselt võis probleem mõjutada sadu kasutajaid või rohkem). Kõik need kasutajad said uuesti katsetada ja e-hääletada alates esmaspäeva pärastlõunast ja saavad seda teha laupäeva õhtuni.

Mõju on olemas ka e-hääletuse korraldajate usaldusväärsusele. Riigi valimisteenistuse (RVT) juht Arne Koitmäe ütles usutluses väljaandele Geenius.ee, et viga avaldus seetõttu, et rakendust ei testitud vastavalt.

RIA hinnang: intsident takistas umbes kolme tunni jooksul e-hääletamist teatud valijagruppide jaoks (ID-kaardiga MacOS Big Suri kasutajad). Samas on e-hääletuse protseduur ja eelhääletamise aeg Eestis niimoodi seatud, et valijad said oma hääle anda pärast intsidendi lahendamist. Samuti oleks neil olnud võimalik minna ja anda füüsiline hääl jaoskonnas. Seega intsident e-hääletust oluliselt ei mõjutanud.

Maine/usaldusväärsuse osas tuleb märkida, et intsidendile on meedias pööratud kõrgendatud tähelepanu. Ent ka varasemate valimiste ajal on teatud operatsioonisüsteemide-kaartide koosmõju e-hääletust takistanud, kuniks e-hääletuse korraldajad on intsidendi ära lahendanud ja genereerinud uue valijarakenduse. Seega ei mõjuta intsident e-hääletuse mainet oluliselt ega uudselt.

Juhtum nr 3

MacOSi valijarakenduse dokumentatsioon valimised.ee leheküljel oli ebatäpne. Valijarakenduse failinimi oli teine (dokumentatsioonis „valimine.dmg“, päriselt „KOV_2021_mac.dmg“), samuti ei langenud kokku valijarakenduse faili kontrollsumma ja dokumentatsioonis olev kontrollsumma. Erinevused tekkisid mitmel põhjusel. Kui avaldub uuesti mõni käideldavuse viga, mistõttu on vaja valijarakendust uuendada, tuleb uus fail avalikustada alati koos uue kontrollsummaga. Dokumentatsiooni ebatäpsused tulenevad suuresti inimlikust eksitusest.

Mõju: valimiste läbiviimisele mõju pole. Kõik e-hääletajad on saanud oma hääle anda ja kõigi hääled on arvesse läinud. Mõju on e-hääletuse korraldajate usaldusväärsusele ja turvaprotseduuride paikapidavusele. Teisisõnu: valimisteenistus kutsub üles usaldusväärsuse kontrolliks võrdlema valimiste koduleheküljel avalikustatud dokumentatsiooni valimisrakenduste failidega, kuid ei ole taganud, et dokumentatsioon sellele kontrollile ka vastab.

RIA hinnang: tegemist on maine/usaldusväärsuse intsidendiga, mille mõju valimiste läbiviimisele ja valimistulemusele on kaudne ja mitmetahuline. E-hääletuse üks kontrollimehhanism on protseduur, kus valija saab kindlaks teha, et tema valijarakendus on autentne, võrreldes seda dokumentatsiooniga. Kõnealusel juhul ei olnud see teatud tundide jooksul võimalik. RIA hinnangul tuleb sellistesse protseduuridesse suhtuda täie tõsidusega, sest usalda-aga-kontrolli-põhimõte nõuab ka täpsust ja kontrollimise võimalust. E-hääletuse esimeste tundide jooksul ei olnud seda võimalik aga teha. RVT kodulehel polnud ka selgitusi, miks dokumentatsioon erineb. Teiseks peab arvestama, et kui usaldus e-hääletuse vastu kaheneb (ja puudub kontrollimise funktsioon), võib osa hääletajaist loobuda e-hääletamisest või ka hääletamisest.

Kuna dokumentatsioon saadi võrdlemisi kiiresti korda, võib hinnata, et mõju e-hääletuse läbiviimisele ei olnud märkimisväärne.

Juhtum nr 4

E-hääletuse lähtekoodis esines vigu. „Kuni veel pühapäeva õhtuni GitHubis olnud iOSi kontrollrakenduse koodi readme- ja about-faili sisu ei ühtinud. Ühes oli kirjas, et tegu on Androidi äpiga, ning teises, et tegu on hoopis iOSi äpiga.“

Mõju: mõju valimiste läbiviimisele pole. Kõik e-hääletajad on saanud oma hääle anda ja kõigi hääled on arvesse läinud. Mõju pole ei käideldavusele, konfidentsiaalsusele ega terviklusele.

RIA hinnang: niisugused näpuvead ei mõjuta e-hääletuse läbiviimist, mõju usaldusväärsusele on madal.

Geeniuse ajakirjaniku seisukoht: e-hääletuse lähtekood avalikustati liiga hilja

Mõju: tegemist on ajakirjaniku hinnangul maine/usaldusväärsuse intsidendiga, varasem avalikustamine oleks parandanud e-hääletuse läbipaistvust ja andnud valijatele/arendajatele/kriitikutele võimaluse varem uuendustega tutvuda.

RIA hinnang: pole selge, mida oleks ajakirjanik lähtekoodiga teinud, kui see oleks avalikustatud nädal või kuu aega varem, ning mis olnuks ajakirjaniku hinnangul õige aeg lähtekood avalikustada. Muudatuste ajendiks on igas valimistsüklis ka konkreetse turvatestimise tulemused. See tähendab, et välised osapooled (turvatestija) on juba saanud lähtekoodiga tutvuda ja leida sealt parendamist vajavad kohad.

Teiseks avalikustatakse valimisrakendus ja selle lähtekood teadlikult võimalikult hilja, et ära hoida originaaliga sarnanevate libarakenduste valmistamist ja levitamist valimiste toimumise ajal.

Lähtekoodi avalikkus kannab e-hääletuse süsteemi läbipaistvuse väärtust, mida on RVT (ja ka RIA) korduvalt rõhutanud kui Eesti e-hääletuse tugevust. Lähtekoodi avalikustamise aeg ei ole kriitilise tähtsusega. Kuna lähtekoodi on testitud, auditeeritud ja parandatud, siis hindame, et e-hääletuse alustalad on tehnoloogiliselt jätkuvalt selged ja pole põhjust kahelda valimiste e-hääletuse läbiviimise protsessis.

KOKKUVÕTTEKS

Nimetatud intsidendid on enamasti maine ja usaldusväärsuse intsidendid, millel on mõju valimiste korralduslikule poolele ning e-hääletuse tarkvara arenduse ja konfiguratsiooni usaldusväärsusele. Vaid MacOSi valijarakenduse intsident mõjutas esimese valimispäeva esimeses pooles lühiajaliselt ka konkreetselt hääletamist, mistõttu võib hinnata, et mõju oli ka valimisrakenduse käideldavusele. Kõigil puhkudel on tegemist tavapäraste infosüsteemi parandustega, mida esineb pea igas kliendirakendusega infosüsteemis.

E-hääletuse süsteemi paigaldamist ja valijarakenduse versioone saaks alati rohkem testida, et taolisi vigu varem avastada. E-hääletuse maine nii Eestis kui ka maailmas on meie hinnangul ülioluline. Taolised apsud ei tohi jääda tähelepanuta, neid tuleb võtta arvesse järgmiste valimiste eel, kuid see tähendab ka rohkem inimressursse e-hääletuse jaoks enne valimisi ja valimistevahelisel perioodil.

Ühestki intsidendist ei nähtu pahatahtlikku tegevust, samuti ei ole intsidentidel mõju häälte konfidentsiaalsusele ega süsteemi või andmete terviklusele. Valimiste küberturvalisus pole ohus olnud.

E-hääletuse usaldusväärsus ja maine on olulised, kuid kirjeldatud juhtumid ei mõjuta meie hinnangul kriitiliselt hääletamisest osavõtmist, valimiste läbiviimist ja e-hääletuse süsteemi konfidentsiaalsust, terviklust ja käideldavust.