Uporaba kriptografije v internetu
Kazalo   
 

e-volitve

V javnosti prevladuje mnenje, da e-volitve predstavljajo podoben tehnični in varnostni problem kot elektronsko bančništvo, ki ga uporabljamo že več let, torej se jih da izpeljati brez problemov. Naj citiram dve od mnogih mnenj, dostopnih na internetu:

http://www.infomediji.si/s.nsf/vse/D9A037BF58EEDA77C1256E2A004B12E3
E-volitve povzročajo tudi nekatere skrbi. Mnogi se, recimo, bojijo, da bi jih bilo mogoče ponarediti. Saj vemo, hekerji so vsega zmožni. Možnost take ali drugačne goljufije je po eni strani pri e-volitvah res večja, saj se ni treba truditi s ponarejenimi volilnimi listki, krasti volilnih skrinjic ali podkupovati števcev, temveč je dovolj, da vdremo v volilni strežnik in z nekaj kliki priredimo rezultate. A to je tehnična podrobnost in prav nobenega teoretičnega zadržka ni, da ne bi mogli za varnost poskrbeti bolje kakor pri klasičnih volitvah.

http://www.lds-kp.net/index.php?page=zanim&id=37
Strah pred zlorabo je odveč. Kot je zapisal moj sogovornik na nekem popularnem portalu, kjer je v forumu o on-line volitvah večina bila za take rešitve, da so "Enkriptični algoritmi dandanes že tako močni, da če hočeš v realnem času spreminjati rezultate moraš imeti denarja kot je naš državni letni proračun za vojsko".

Pa je to res? Razčlenimo potek e-volitev in poglejmo, kje so problemi. Ali je kakšna razlika med tem, da volivec voli z nadzorovanega volišča (prek volilnega kioska) ali pa uporabi svoj domači računalnik in pošlje svojo glasovnico prek interneta? Zdi se, da pri nas večina izraz e-volitve razume predvsem kot volitve od doma. V tem prispevku bom za e-volitve z nenadzorovanih računalnikov prek interneta (Remote Electronic Voting over the Internet) uporabila izraz i-volitve.


POSTOPEK E-VOLITEV V TEORIJI

Volilni sistem mora izpolniti naslednje zahteve:

  • samo registrirani volivci smejo voliti,
  • vsak volivec sme voliti samo enkrat,
  • vsak glas mora biti zabeležen tako, kot je izbral volivec,
  • obstajati mora možnost, da se preveri, ali je bil glas pravilno zabeležen,
  • ni možno ugotoviti, kako je volil posameznik.

Razdelimo ga na naslednje stopnje:

  1. registracija volivca,
  2. volivec voli: preverjanje volivca in registriranje njegove odločitve,
  3. objava rezultatov.

(1) Pri sedanjem postopku se pred volitvami naredi volilni imenik po posameznih voliščih, kamor se volivci prepišejo iz centralnega registra državljanov. Volivec po pošti dobi povabilo na volitve z oznako volišča, kjer lahko voli, prav tako pa osebje na volišču dobi seznam volivcev za to volišče.
Pri elektronskih volitvah imamo centralni volilni imenik, kjer za vsakega možnega volivca kreiramo neko enolično identifikacijsko oznako ID, s katero se bo predstavil, ko bo volil. To oznako mu lahko pošljemo po pošti. Če bo volil z nadzorovanega volišča, je to pravzaprav dovolj.

Drug možen način pa je registracija po elektronski poti. Pred volitvami morajo državljani dobiti navodila, kako se registrirajo. Z ustreznim odjemalcem (pri internetnih volitvah je to brskalnik, lahko je terminal na volišču itd.) se povežejo na registracijski strežnik (1a), vnesejo zahtevane podatke o sebi, da strežnik lahko ugotovi (1b, 1c), ali imajo volilno pravico in da še niso registrirani. Če je vse v redu, volivec kreira par ključev. Javni ključ se vpiše v registracijski strežnik, zasebni ključ pa se shrani v napravi, ki jo je uporabil volivec pri registraciji (1d). Poleg tega se kreira enolična identifikacijska oznaka ID, ki se shrani v imenik (1e) in v volivčevo napravo (1f). Volivec dobi od strežnika obvestilo, da je postopek registracije uspel in da bo lahko volil. Registriranje volivcev mora biti končano pred volitvami. Volilni imenik mora biti na voljo volilni komisiji in predstavnikom strank, da lahko preverijo, da v njem ni podvojenih ali izpuščenih vpisov ali pa izmišljenih volivcev. Pravzaprav mora biti dostopen tudi volivcem, da lahko preverijo, da so vpisani.
Tu je še vprašanje, ali naj volivec kreira poseben par ključev za volitve tudi, če že ima neko digitalno potrdilo in ustrezen zasebni ključ.
Pred volitvami volilna komisija določi enolično oznako volitev = naključno generirano število V, ki trenutne volitve loči od prejšnjih.

(2) V času volitev delujejo volilni strežniki, na katere se povezujejo volivci s svojimi napravami (brskalniki, volilnimi terminali, ...) in glasujejo. Volilnih strežnikov je več vrst: strežnik za overjanje volivcev (označimo ga s SOV), glasovalni strežnik in strežniki, ki zakrijejo, od kod je kdo glasoval, da omogočijo anonimnost glasovanja (označujejo jih kot anonymizer ali pa posrednik, proxy). Strežnikov za overjanje volivcev je lahko več, recimo, da nekaj strank nadzoruje enega, druge stranke pa drugega, podatki na njih pa se morajo seveda ujemati.

Volivčeva naprava se prek posredniških strežnikov poveže s SOV in sicer pošlje ID (2a). Ta preveri, ali je volivec s to oznako vpisan v volilni imenik in ali še ni glasoval (2b). Če je vse v redu, shrani volivčev javni ključ in volivcu pošlje identifikacijo volitev V (2c). Potem volivec pripravi glasovnico (niz znakov v predpisanem formatu, označimo z g), kjer je identifikacija volitev, naključno generirano število in izbor kandidatov (volivčevo glasovanje). Naključno število služi temu, da volivec lahko kasneje prepozna svojo glasovnico. Zdaj mora z uporabo javnega ključa SOV pripraviti "zakrito" glasovnico, ki mu jo bo slepo podpisal SOV in ki bo služila kot vstopnica za glasovanje na glasovalnem strežniku. Poleg zakrite glasovnice pošlje tudi podpis njenega povzetka (2d). Strežnik za overjanje volivcev najprej preveri podpis z uporabo javnega ključa, ki pripada volivcu z identifikacijsko oznako ID. Če se ujema, slepo podpiše zakrito glasovnico, ta podpis vrne volivčevi napravi (2e) ter v volilnem imeniku označi, da je volivec z oznako ID glasoval (2f). Volivec zdaj odstrani zakritost svoje glasovnice v podpisu SOV in tako dobi glasovnico, ki mu jo je podpisal SOV. Ta podpis glasovnice in glasovnico prek posredniških strežnikov pošlje na glasovalni strežnik (2g). Volivec vidi obvestilo, da je bilo glasovanje uspešno. Glasovalni strežnik ni povezan s SOV, prav tako ne vsebuje podatkov, po katerih bi se dalo povezati volivca s podatki na SOV ali v volilnem imeniku.

Na volilnem strežniku tako nimamo oznake volivca. Sistem vmesnih strežnikov pa poskrbi, da se ga ne da identificirati po številki naprave, s katere je bila glasovnica poslana.
Jasno je, da morajo biti skrbno pripravljeni postopki za različne nepravilnosti (poskus večkratnega glasovanja, napačni ID, ...).

(3) Ko je glasovanja konec, se prečeše vse glasovnice, ki imajo veljaven podpis, in se pripravi rezultate volitev. Lahko se omogoči volivcem, da s pomočjo naključno generiranega sporočila v glasovnici na volilnem strežniku preverijo, ali je bila njihova glasovnica pravilno upoštevana. Glede tega so sicer mnenja deljena, ker bi na ta način volivci imeli dokaz, kako so glasovali, kar bi omogočilo prodajanje glasov.

Tak sistem v teoriji zadosti pogojem, ki smo jih našteli na začetku. Pri tem predpostavljamo:

  • da je bila programska oprema verificirana,
  • da je osebje, ki upravlja s strežniki, preverjeno,
  • da strežniki in programska oprema delujejo brezhibno,
  • da so povezave med posameznimi računalniki zaščitene,
  • da so strežniki dobro zaščiteni, da nanje ni mogoče vdreti,
  • da so naprave, s katerih volijo volivci, dobro zaščitene,
  • da imajo vsi volivci potrebno opremo (ni diskriminacije glede na ekonomski položaj).

KAJ PA PRAKSA?

Od zgornjih zahtev je vsaj zadnje tri težko ali nemogoče doseči, če govorimo o internetu in volitvah z domačih računalnikov, pri volitvah prek volilnih kioskov na voliščih pa opremo volilnih kioskov lahko nadzorujemo, poleg tega pa naj bi bile naprave povezane med seboj po privatnem omrežju, ki ga lahko dobro zaščitimo. Tako se izognemo več problemom interneta:

  • napadom DDOS (distributed denial of service),
  • lažnim strežnikom (web spoofing),
  • zavajanju volivcev z lažnimi sporočili (web phishing),
  • virusom in trojanskim konjem, ki bi okužili glasovalno napravo in spremenili glasovnico ipd.

To pa so problemi, za katere zaenkrat nimamo stoodstotne rešitve. Kot pravi Bruce Schneier (avtor Applied Cryptography in drugih knjig o uporabi kriptografije): A secure Internet voting system is theoretically possible, but would be the first secure networked application ever created in the history of computers.

Ronald Rivest, soavtor danes najbolj uporabljanega asimetričnega algoritma RSA, pravi, da kriptografija ni problem in da je bilo predlaganih veliko lepih kriptografskih volilnih postopkov, pač pa je problematičen vmesnik med volivcem in kriptografskim postopkom. Vsi predlagani postopki namreč predpostavljajo, da ima volivec varen računalnik, ki bo pravilno posredoval volivčevo izbiro med postopkom. Na osebne računalnike z Windowsi se ne moremo zanesti, ker jih je prelahko okužiti z virusi ali trojanskimi konji. Ker mora biti datum volitev napovedan vnaprej, bi bilo možno pripraviti in distribuirati virus, ki bi se sprožil na dan volitev - bodisi, da bi sesul uporabnikov računalnik, bodisi da bi preoblikoval njegovo izbiro. Nikakor ne drži trditev, da so i-volitve enak problem kot e-trgovina ali pa e-bančništvo. Pri nakupovanju prek interneta obstaja sledljivost in naročilo lahko prekličemo oziroma protestiramo, če pride do napake. Če gre pri neki bančni transakciji kaj narobe, imamo dnevniške zapise aplikacij in sistemov (loge), da ugotovimo, kaj je bilo narobe, kje je denar in popravimo. Če neke transakcije ne moremo narediti danes, ker bančni strežnik ni dostopen, jo bomo pač jutri. Pri volitvah tega ni oziroma ne bi smelo biti, ponavljanje ne pride v poštev. Sklicevanje na moč kriptografskih algoritmov je pa tako, kot bi na neka trhla lesena vrata montirali komplicirano ključavnico in bili prepričani, da nihče ne more noter. Po i-volitvah nezadovoljnim strankam ne bo težko dobiti strokovnjakov, ki bodo našli pomanjkljivosti v volilnem postopku in računalniški infrastrukturi, programski opremi ali nadzoru osebja, kar kažeta že prej navedeni mnenji Schneierja in Rivesta, nekaj drugih pa navajam v seznamu povezav.

Tako pridemo do zaključka, da so na državni ravni zaenkrat izvedljive le e-volitve iz nadzorovanega okolja (volišč). Pa še tu velik del strokovnjakov meni, da bi morale biti volilne naprave opremljene s tiskalniki, ki bi vsak oddan glas natisnili. Tako bi imeli v primeru, da pride do kakršnih koli težav ali pritožb, na voljo papirnate glasovnice, ki bi jih lahko ročno prešteli. V ZDA obstaja gibanje, ki se zavzema za to, da ne bi z uporabo nepreverjene tehnologije prišlo do zlorab volitev. Na njihovih spletnih straneh dobimo podatke o opremi volišč v različnih državah in problemih z njo na zadnjih volitvah 2004. Predvidene volitve prek interneta za vojaške uslužbence po svetu (projekt se je imenoval SERVE, kar je kratica za "Secure Electronic Registration and Voting Experiment") so februarja 2004 odpovedali zaradi hudih kritik strokovnjakov.

Angleška vlada se je ukvarjala z različnimi pilotskimi projekti glede e-volitev in v poročilu iz leta 2002 načrtovala možnost uvedbe i-volitev za leto 2006. Vendar so se septembra 2005 odločili te projekte začasno zamrzniti.

Tudi študija MID o izvedljivosti e-volitev priporoča postopno testiranje in uvajanje e-volitev z nadzorovanih volišč, za glasovanje s poljubne internetne točke (FAZA 2) pa navaja: "Po vseh dostopnih podatkih razpoložljive tehnologije niso na nivoju, ki bi nam omogočal informatizacijo volitev v smislu FAZE 2. Tehnične in procesne težave bi bile na sedanji razvojni stopnji prevelike in neobvladljive."

Seveda pa so i-volitve primerne za odločanje v ožjem obsegu, ki se ga da tudi ponoviti, če pride do problemov (univerza, podjetja, izbor popevk, lokalni referendumi, ...).

Nekoliko poseben primer je Estonija, ki je pri lokalnih volitvah 2005 uvedla možnost i-volitev. Pri tem so za identifikacijo volivca uporabili elektronsko osebno izkaznico, ki jo ima kar 800.000 Estoncev (vseh volivcev je en milijon). Pričakovali so, da bo vsaj dvajset odstotkov volivcev volilo prek interneta, saj naj bi tudi sicer precej uporabljali storitve e-uprave - n.pr. davčne napovedi za leto 2005 je elektronsko oddalo kar 76% zavezancev. Pri tem je zanimiva tudi odločitev, da je možno glasovati prek interneta le v obdobju, ki je namenjeno predčasnemu glasovanju (trije dnevi). Tako so se izognili problemom zaradi napadov na volilne strežnike - če bi do tega prišlo, bi volivci pač volili na klasičen način.
Volivec se je priključil na volilni spletni strežnik in se identificiral s svojo elektronsko izkaznico. Na računalnik se mu je naložil programček za volitve z volitvenega strežnika, na zaslonu se mu je pokazal seznam kandidatov. Izbral je svoje kandidate in tako tvoril elektronsko glasovnico, ki jo je s pomočjo prej naloženega programčka zašifriral z javnim ključem sistema za štetje glasov, vse skupaj pa podpisal s svojim ključem z elektronske izkaznice ter poslal na volilni strežnik. Po analogiji z glasovanjem po pošti: volivec svojo glasovnico zapre v kuverto, to pa vloži v drugo kuverto, na kateri je njegov naslov. Volilna komisija z naslova na zunanji kuverti izve, kdo je glasoval, ne ve pa, kako je glasoval, ker je glasovnica v zaprti kuverti.
Ko je bilo elektronsko glasovanje končano, so odstranili glasovnice tistih, ki ne bi smeli glasovati, in večkratne glasovnice ter obvestili volilne komisije po voliščih, kdo je že glasoval. Če se je tak volivec pojavil na volišču, so stornirali njegovo elektronsko glasovnico in je lahko volil na klasičen način. Ko je bilo volitev konec, so odstranili digitalne podpise s šifriranih glasovnic ter glasovnice na CD poslali sistemu za štetje rezultatov, ki jih je dešifriral s svojim zasebnim ključem in jih vključil v rezultate.
Kljub precej višjim pričakovanjem je volilo prek interneta le 1,85 odstotka volivcev. Poročilo najdete na strani http://www.vvk.ee/english/report2006.pdf


Še nekaj povezav:

  1. Avi Rubin: Security Considerations for Remote Electronic Voting over the Internet
  2. Rebecca Mercury: Stran o volitvah
  3. Zapisnik pogovora Rebece Mercury in Rossa Andersona s predstavniki angleške vlade
  4. Odgovor na študijo angl vlade E-Voting Security Study z analizo napak
  5. California Internet Voting Task Force:Final Report
  6. Vipul Ved Prakash Predstavitev sistema za volitve v Indiji
  7. Podatki o volitvah 2004 v Indiji - uporabili so prek milijon volilnih kioskov

, november 2004, dopolnjeno septembra 2006