TalTechi professor selgitab: mis on digiallkiri ja ajatempel ja kas neid saab võltsida

Tallinna Tehnikaülikooli infotehnoloogia teaduskonna tarkvarateaduse instituudi professor Tanel TammetFoto: Erik Prozes/Postimees

Päevakajalistest uudistest tulenevalt seletab Tallinna Tehnikaülikooli (TalTech) infotehnoloogia teaduskonna tarkvarateaduse instituudi professor Tanel Tammet puust ja punaseks, mis asi on digiallkiri, selle ajatempel, kas neid saab võltsida ning kas digiallkirja kehtivust saab üldse füüsilise paberi abil tõendada.

Lisaks annab ta vastused küsimustele, kas ajatemplit saab välja printida, mis asi on digiallkirja konteiner ja kas avatud lähtekoodi tõttu saab luua võlts-DigiDoc programmi, millega saab jätta mulje, et dokumendil on kehtiv digiallkiri.

Mis asi on digiallkiri?

Digiallkiri on väike krüpteeritud tekstijupp, mis rehkendatakse välja allkirjastatava dokumendi failist ja allkirjastaja salajasest võtmest, mis on ainult allkirjastaja enda ID-kaardil.

Igaüks saab kontrollida, kas see krüpteeritud tekstijupp klapib allkirjastatava dokumendiga ja allkirjastaja nii-öelda avaliku võtmega.

Võltsimiskindlaks teeb digiallkirja asjaolu, et kui sul ei ole allkirjastaja salajast võtit (sest see on hästi peidetuna olemas ainult tema ID-kaardil), siis sa ei suuda tekitada samasugust klappivat krüpteeritud tekstijuppi.

Mis asi on digiallkirja ajatempel?

Lisaks sellele krüpteeritud tekstijupile kasutatakse Eesti ametlikes digiallkirjades veel niinimetatud ajatemplit, mis on lihtsalt täiendav digiallkiri ehk krüpteeritud tekstijupp, mille rehkendab välja eraldi keskne server ja mis sisaldab allkirjastamise kellaaega.

Mõte on selles, et seda ajatemplit ei saa samuti võltsida ja selle järgi saab igaüks kontrollida, millal täpselt allkiri anti.

Kokkuvõttes, Eesti digiallkirjastamise süsteemis antakse alati kaks digiallkirja: üks allkirjastaja salajase võtmega tema ID-kaardil või mobiil-ID-s, teine keskse serveri poolt, mis kinnitab allkirjastamise täpset aega.

Kas ajatemplit saab välja printida?

Eesti digiallkirjastamise tarkvara DigiDoc pakub võimalust trükkida välja kinnitusleht, kus on toodud allkirja ja ajatempli põhiinfo ja mille järgi saaks teoreetiliselt kontrollida, et allkiri ja ajatempel on reaalselt antud.

Praktikas seda peaaegu kunagi tõeliseks kontrollimiseks ei kasutata, kuna sealt tuleks pikad tekstistringid arvutisse kopeerida, erilist kontrollitarkvara rakendada ning isegi siis ei ole seal olemas kõike täielikuks kontrolliks vajalikku infot.

Kas füüsilisel paberil oleva dokumendiga, milles on märge digiallkirjast, lisatakse kaasa lisa- või kinnitusleht, mis kinnitab digiallkirja õigsust?

Tüüpiliselt seda ei lisata, kuna sisulist vajadust üldjuhul ei ole ning täielikku kontrolli see lisaleht niikuinii ei võimalda. Reaalne mõte on sel lehel nö praktilise täiendava kinnitusena, et digiallkiri ilmselt on tegelikult antud, kuigi, nagu öeldud, allkirja õigsuse kontrolliks seda tegelikult ei kasutata.

Seda lisalehte oleks praktikas lihtsalt tüütu ja veidi riskantne võltsida, umbes nagu on tüütu ja riskantne võltsida omakäelist allkirja.

Kas digiallkirja õigsust saab füüsilisel paberil kuidagi teistmoodi tõendada?

Praktiliselt ei saa digiallkirja õigsust füüsilisel paberil tõendada. Teoreetiliselt oleks võimalus olemas, aga see tähendaks väga pikka tehnilist väljatrükki, mis peaks sisaldama kogu allkirjastatava faili detailset tehnilist, inimesele arusaamatut sisu, mida siis saaks teoorias paberilt arvutisse kopeerida, et seejärel kontrollitarkvaraga tegelikult kontrollida.

Kas digiallkirja on kunagi võltsitud, kas see on tehniliselt võimalik?

Jah, nagu teada, avastati mitte väga pikka aega tagasi ID-kaartide tarkvarast nõrkus, mis võimaldas suure arvutipargi olemasolul üpris pikaajalise ja kalli rehkenduse tulemusena võltsida teise inimese digiallkirja: seda küll eeldusel, et saadi teada tema avalik võti.

Praegu kasutusel oleva digiallkirjatarkvara kohta selliseid nõrkusi teada ei ole, ehk hetkel see ei ole tehniliselt praktikas võimalik.

Kas ajatemplit saab võltsida, kas seda on tehtud, on see tehniliselt üldse võimalik?

Ajatempel on põhimõtteliselt samuti lihtsalt üks digiallkiri, mille keskne server lisab täienduseks inimese poolt antud digiallkirjale, lisades sinna kellaaja. Selle võltsimiseks peaks teadma selle keskse serveri salajast võtit, mis on, arusaadavalt, väga kindlalt varjatud.

Oluline tähelepanek on siin see, et nii inimese antud digiallkiri kui keskse serveri ajatempli-digiallkiri on kaks eraldi digiallkirja ning kui kellegil õnnestuks võltsida neist ühte, siis see ei aita teda teise võltsimise juures.

Jällegi, sajaprotsendilist võltsimiskindlust ei saa olla ühelgi digiallkirjal, kuid praktiliselt on võltsimine ebareaalne. Sellise võimaluse tekkimine avastatakse kiiresti ning tarkvara parandatakse ära, täpselt nagu Eesti ID-kaardiga juhtus.

Kas Eestile sarnast digiallkirja lahendust kasutatakse ka mujal riikides?

Jah, Eesti digiallkiri järgib üle-euroopalist digiallkirja standardit eIDAS, kuigi praktilised rakendusviisid on eri riikides ja eri kasutusvaldkondades üpris erinevad. Eesti on niiöelda igapäevase digiallkirjastamise osas kindlasti Euroopas esirinnas, mujal kasutatakse seda oluliselt vähem.

Mis asi on digiallkirja konteiner?

Digiallkirja konteiner on lihtsalt kokkupakitud fail algse allkirjastatud dokumendiga ja kahe allkirjaga, kasutaja oma allkiri ja serveri ajatempli-allkiri, mille õigsust saab ID-kaardi tarkvara abil lihtsasti kontrollida.

Kui keegi näitab arvutist digiallkirja konteinerit märkega “kehtiv”, siis kas ma saan olla sada protsenti kindel, et see on kehtiv? DigiDoci lähtekood on ju avalik, kas tänu sellele saab igaüks luua endale meelepärase DigiDoc tarkvara ning lisada dokumentidele “kehtiv” märgise?

Põhimõtteliselt saaks kindlasti ehitada DigiDoci sarnase tarkvara, mis tegelikult midagi ei kontrolli, vaid lihtsalt näitab ekraanilt, et mistahes valeallkiri kehtib. Sestap saab digiallkirja korrektsuses olla päris kindel ainult juhul, kui oled ise oma arvutisse ametliku DigiDoc tarkvara laadinud ja sellega ise allkirja kontrollinud.

Kui kaua kehtib digiallkirjastatud dokument?

Ma ei ole vastava seadusepunkti osas täielikult veendunud, aga minu arusaama järgi piiramatu aja. Küll aga eksisteerib alati teoreetiline võimalus, et kunagi leitakse viis nii kasutaja digiallkirja kui keskse serveri ajatempli-allkirja võltsimiseks, mispuhul ei oleks vanad digiallkirjad enam päris usaldusväärsed ja need tuleks tuleviku uuema allkirjasüsteemiga üle-allkirjastada, näitamaks, et allkiri on antud enne võltsimisvõimaluse tekkimist.

Kui dokumendile lisatakse digiallkiri, siis kas sellele lisatakse automaatselt märge, et see on digitaalselt allkirjastatud või kuupäev, mil allkiri anti?

Ei, digiallkirjastamine ei muuda allkirjastatavat dokumenti mitte mingil viisil, ehk märget ei lisata. Ainus allkirjastamise kinnitus on allkirjafail ise, mille digiallkirjastamise tarkvara meile valmis teeb.

Kui mulle esitatakse paberil dokument, millele on väidetavalt digiallkiri antud, siis kuidas ma saan allkirja olemasolus veenduda?

Kui paberil on kirjas, et dokument on allkirjastatud digitaalselt, siis see ei anna vähimatki kinnitust, et allkiri tegelikult eksisteerib. Ainus viis allkirja olemasolus veenduda on saada kätte tegelikult digiallkirjastatud fail, mille digiallkirjastamise tarkvara on teinud.

Populaarsed lood mujal Geeniuses

Igal argipäeval

Ära jää ilma päeva põnevamatest lugudest

Saadame sulle igal argipäeval ülevaate tehnoloogia-, auto-, raha- ja meelelahutusportaali olulisematest lugudest.