Tag Archives: BDOC

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.

Kuningas on surnud, elagu kuningas!*

Anto Veldre kirjutab sellest, kuidas DDOC minevikku vajub.

il_340x270.640472250_bxud

Allikas: www.etsy.com

Lähiajal kaob ID-kaardi tarkvarast DDOC vorming. Allpool teeme juttu muudatuse laiemast taustast.

Mille poolest erinevad eestlased ja Eesti riigi elanikud ülejäänud maailmast kõige enam? Võib välja pakkuda kiikingut, ujumiseks sobivaid rabajärvi ning ruudulise mustriga käpikuid, kuid tõde peidab end hoopis teises valdkonnas. Statistiline näitaja, mille osas meile ükski teine riik näole ei saa, on hoopis digiallkirjade andmine.

Ajalugu

Neli aastat tagasti tuli meil ID-kaardi iga kasutaja kohta statistiliselt 416 digitegu (isik logis end millegi sisse või andis allkirja), sealhulgas 156 digiallkirja. Tänased numbrid on oluliselt suuremad. On isegi väidetud, et Eesti Vabariigis olla juba antud rohkem digiallkirju, kui kogu ülejäänud Euroopa Liidus kokku.

pilt-01

Allikas: www.id.ee

Omaenda isikliku panuse võib igaüks siit ise välja arvutada.

Selline jätkuv edulugu ei oleks võimalik ilma korralike riistade ja standarditeta. Kasutajat ei huvita tegelikult ju üldse, mis on allkirjastatud faili sees. Kõik on korras, kuniks digiallkirja on võimalik mugavasti anda ning kuniks teine pool antud allkirja ka kenasti ära tunneb. Huvilised võivad kiigata – sedavõrd kirju on olnud digiallkirjastamise vormingute ajalugu.

Kui varemalt pidime Eestis arvestama põhiliselt iseendiga, siis üha enam riike võtab digitaalallkirja laiemalt kasutusele. Miks? Sest digitaalallkirjastamine (või nagu irwhambad nurga taga ütlevad – digisigimine – sõnast signatuur/allkiri) muudab mõnedki töövood kaks suurusjärku odavamaks. Enam ei pea paber näpus, isiklikult bürokraadi vastuvõtule jalutama, töö saab tehtud arvutis, Interneti toel ja kahe minutiga.

Allikas: wikipedia.org

Allikas: wikipedia.org

Esimene Eestis laialt levinud allkirjavorming oli DDOC (seda lühendit võiks lahti mõtestada kui “Digiallkirjastatud DOKument”). Seejärel aga tekkis tihedam koostöö Balti riikidega ning tõusetus vorming nimega BDOC (hea meelde jätta kui Baltic DigidOC). Muide, need kes DigiDoc3 rakendust keskmisest enam kasutavad, on seal kindlasti märganud veel üht vormingut – ASiC-E, mis peaks saama võtmerolli Euroopa Ühenduse riikidega suheldes. Seda muidugi eeldusel, et teised riigid ikka tõesti võtavad digiallkirja sama aktiivsesse kasutusse kui meil siin.

Loe ka mis vahe on .ddoc, .bdoc ja .asice formaadis digiallkirjastatud dokumendil.

On üsna normaalne, et aja jooksul failivormingud muutuvad ja asenduvad – Wordi *.doc asendati aastal 2007 teatavasti *.docx vorminguga. Tekstiredaktor Ami Pro äkilisest tõusust ja langusest on möödas 20 aastat, kuid omaaegsed *.sam failid on endiselt loetavad. Meie uued digiallkirjad aga toodetakse nüüd *.ddoc‘i asemel nüüd juba *.bdoc vormingus.

Muutuse sügav sisu

Teatavasti ei saa ega tohi suuri muudatusi teha äkitselt. Saba tuleb raiuda pisikeste seibidena. Alustuseks (2013) lisati BDOCi tugi programmidesse ja teenustesse. Järgmise sammuna (2015) vahetati ID-kaardi tarkvaras ära vaikimisi vorming – teisisõnu, kel eelistused puudusid, need suunati allkirja andma BDOC vormingus, ehkki soovijatel (kes teadsid, mida nad tahavad ja miks) säilis võimalus digiallkirjastada ka vanas, DDOC vormingus.

Täna ongi jäänud teha veel viimane samm – sest paari järgmise nädala jooksul saadetakse digiallkirja vana vorming DDOC väljateenitud puhkusele.

Mida see üleminek endaga kaasa toob ja mida peaks arvestama?

  1. Nagu juba öeldud, lihtkasutaja ei märka suurt midagi. Ta on juba 10 kuud ise loonud ja avanud teiste BDOC vormingus digiallkirju ega pole muutust väga märganudki.
  2. Muudatus saabub koos ID-kaardi tarkvara järgmise versiooniga – mille numbriks on 3.12 ja väljalaskekuupäevaks 01. veebruar 2016. Et Internetti ja servereid mitte üle koormata, jaotub uuendusettepanek nädala peale laiali ning on raske ennustada, millal iga konkreetne kasutaja selle saab – ühel hetkel teeb ID-kaardi tarkvara ise kasutajale ettepaneku uuendamiseks. Samas, iga soovija võib ise minna www.id.ee lehele ja sealt uuenduse alla laadida.
  3. Digitaalallkirjade andmiseks tuleb pruukida ikka sedasama DigiDoc3 rakendust, mis kuulub ID-kaardi tarkvarakomplekti. Ning ei, me ei nimetanud tarkvara ümber DigiDoc4’ks ega ka mitte BigiDoc’iks. Las ta olla rahulikult DigiDoc3 edasi.

Pilt ID-kaardi tarkvarast

Pilt ID-kaardi tarkvarast

– suurim muudatus: DDOC vormingus allkirju enam anda ei saa, või kui täpne olla, siis ametliku DigiDoc3 tarkvaraga enam ei saa (pildil paistab tarkvara, kus veel sai). Rakendusest kaob see menüüpunkt, et tahan anda vanas DDOC vormingus allkirja. Pole. Lännu! Samas, kui kellelgi on infosüsteemis mõni vana ja jonnakas teek, siis kuni uuenduste juurutamiseni saab ta jätkata vanas vormingus allkirjade tootmist.

Miks?

Klassikaline küsimus – miks? Miks ei võiks poes endiselt käibida Marcus Aureliuse aegsed kuldmündid? Põhjusi on mitu:

  • Vajadus ajaga kaasas käia ning luua rahvusvaheline perspektiiv; eriti ajastul, kui Soome lasi käima omaenda X-tee ja kus kolme Balti riiki hõlmavad suurpangad toodavad suure koguse digiallkirjadest.
  • Moraalselt vananenud räsialgoritm SHA-1 , mis meid DDOCi sees aastaid truult teenis, lähetatakse nüüd kenasti pensionile. RIA tellitud krüptouuring sedastab leheküljel 32, et SHA-1 on jõudnud oma elukaare lõppu. Kui seda väga pikalt edasi kasutada, tekiksid turvariskid.
  • Sest plaan oli sooritada üleminek 2013-2016 ja päris plaanikohaselt nii juhtuski.

Üle- ja ümberallkirjastamisest

Võtsin hiljuti ühest asutusest elukondliku tõendi, kus on kirjas minu sotsiaalne staatus aastatel 200* kuni 200*. Tõend väljastati DDOC vormingus (ju on seal mõni mugav firmalahendus, mis endiselt vorpis vanas vormingus allkirju). Kavas oli tõend kohe edasi anda sinna kuhu vaja, siis aga selgus asjaolu, mille tõttu pean tõendi esitamisega pisut ootama (khmm, järgmise perioodini).

Küsimus on lihtne – kui DDOC käibelt kõrvaldatakse, ega see tõend siis kapis oodates hapuks ei lähe? Ütleme ausalt ära – eks väga pikalt oodates võib minna küll, sestap siinkohal paar kiiret vastust sagedamini küsitud küsimustele.

  1. Vanas DDOC-vormingus antud allkirjad jäävad kehtima. Seda on oluline teada neil, keda seob vastaspoolega (näiteks pangaga) mõni 30-aasta pikkune digisigitud leping.
  2. Arvestades, et kõik krüptograafiat sisaldavad vormingud vananevad aja jooksul moraalselt niikunii (otse öeldes, n aasta pärast võimaldavad kiired arvutid neid võltsida), siis varsti saabub aeg mõelda varem antud digiallkirjade üleallkirjastamisele.

Täna (st jaanuaris 2016) DDOC-allkirjade üleallkirjastamisele veel mõtlema ei pea (kuigi soovi korral saab seda toimingut käsitsi juba sooritada). Kuna minul on kapis ootamas vaid üks tähtis allkiri, on mul lihtne see veel kord allkirjastada, pannes vanale allkirjakonteinerile uue, juba BDOC vormingus allkirja.

Uue allkirja tähendus on nagu turvaümbrikul, mille sees on varemalt allkirjastatud dokument. Kui vanas vormingus digiallkiri on turvaümbriku (või isegi mitme sellise) sees, saab kindlalt väita, et vahepealsete aastakümnete jooksul, vaatamata krüptoalgoritmide aegumisele, pole algset faili muudetud. Vaatamata turvaümbrikele saab algset .ddoc faili jätkuvalt avada ja kontrollida.

Lepingut ei pea üle allkirjastama mõlemad pooled, piisab kui seda teeb (uut algoritmi kasutades) kasvõi kolmas isik. Lepingu algne sisu sellest ei muutu ega klausleid ei lisandu, hoopis usaldusväärsuse aeg pikeneb.

  • RIA-l on plaan sügisel 2016 lisada ID-kaardi tarkvarale funktsionaalsus, mis otsib arvutist üles kõik DDOC failid ning võimaldab ületembeldamise toimingut automatiseerida (see kasulik võimalus on sügisel kindlasti väärt eraldi blogikirjet).

Kokkuvõtte asemel – oleme sisenenud ajajärku, kus areng ja pidev uuenemine/uuendamine ongi uus normaalsus. Algas see elukestvast õppest: enam ei piisanud inimesele kord omandatud haridusest, oli vaja end iga 3–5 aasta järel täiendada. Siis hakkasid arvutiprogrammid end pidevalt uuendama ja täna ei imesta uuenduste ja turvapaikade pideva voo üle enam keegi. Võib spekuleerida, kas tulevikus saabuvad isegi ajad, kus töömehel 8-tunnise vahetuse jooksul uuendatakse mutrivõti käes ära kaks korda … ikka uue ja parema vastu.

* – https://en.wikipedia.org/wiki/The_king_is_dead,_long_live_the_king!