evot-usr / proiect_legislativ

13 stars 0 forks source link

Probleme fundamentale cu sistemul descris in lege #2

Open gcbirzan opened 5 years ago

gcbirzan commented 5 years ago

Initial am doua mentiuni de natura non-tehnica:

O alta mentiune relativ tehnica (dar mai degraba legata de claritatea legii), in lege nu este explicata (si nici nu inteleg care este scopul) sigilarea urnei de vot electronic. Nu inteleg daca e vorba de semnarea sau criptarea datelor, care este scopul acestei operatiuni. Sunt doua posibilitati pentru motivarea acestei proceduri, si ambele trebuie implementate (dar legea nu le specifica pe ambele): certificarea faptului ca binarele si datele initiale ale 'urnei' (un nume oribil, apropos) nu au fost modificate si faptul ca dupa inchiderea urnelor nu s-au mai inregistrat voturi.

Daca este vorba de semnatura (cum presupun), atunci prezentarea cheilor nu este necesara, daca se foloseste un sistem de criptografie bazat pe chei publice. Dar, din nou, conceptul este prea vag pentru a ma putea pronunta.

Acum, la nivel inalt, vad urmatoarele probleme (voi elabora mai jos):

Pe rand, incep cu auditarea. In lege nu este prevazut niciun termen pentru cand trebuie pus la dispozitia publicului codul sursa (AEP poate sa-l schimbe cu saptamani inainte de alegeri). In lege este prevazut faptul ca acesta trebuie cerut in scris de la AEP, dar codul sursa ar trebui pus la dispozitia publicului din oficiu. In lege se spune ca sistemul are codul sursa deschis, dar pentru ca sistemul software nu este definit, se poate intelege absolut orice componenta, inclusiv sistemul de operare, sau doar anumite parti, dar acest lucru nu este explicit.

Avizul spre neschimbare (daca inteleg ce inseamna asta, adica dupa asta nu se mai pot opera schimbari) este o mare greseala, ce se intampla in cazul in care este descoperita o problema? Se reia toata procedura? Art 18 spune ca comisia de vot electronic "asigură implementarea măsurilor de remediere constatate în urma testării.", dar nu e specificat cand se face aceasta testare, si nici ca ei pot remedia problemele raportate de terte parti.

Acum, presupunand ca sursa este de incredere, in lege nu se specifica nimic despre cum poate sa fie auditat sistemul in sine, dupa ce a fost predat AEP. Art 22 spune ca se filmeaza, dar asta nu e deloc suficient (binarele instalate pot diferi de cele generate de codul sursa, un lucru care nu poate fi detectat cu o inregistrare video). Nu numai asta, dar nicaieri nu se specifica cum se poate verifica ulterior ca acest sistem nu a fost alterat.

Mai mult, o componenta esentiala a sistemului este cheia cu care se cripteaza voturile. Nu numai ca nu este specificat tipul de criptografie, dar, avand in vedere ca aceasta cheie este absolut critica pentru integritatea sistemului, nicaieri nu este explicat procedeul prin care este generata, cum e stocata...

Garantiile pentru verificarea corectitudinii votului sunt extrem de vagi. Cum poate un alegator sa verifice ca votul a fost inscris corect? Banuiesc ca, daca primeste un hash al votului criptat, il poate verifica ulterior, dar acest lucru nu este mentionat in lege. Cum poate un alegator sa verifce ca votul a fost numarat corect? Raspuns: nu poate, si aici ajungem la:

Corectitudinea numaratorii votului nu poate fi verificata. Deoarece secretul votului este esential, nu este posibila verificarea faptului ca operatiunea de la art 36 este corecta. Pentru a verifica semnatura trebuie sa avem acces la votul criptat, dar pentru a verifica ca votul a fost numarat corect trebuie sa avem acces la cheia de criptare pentru a putea decripta votul. Exista sisteme criptografice care asigura proprietatile necesare unui sistem de votare, dar formularea (si lipsa formularilor explicite) din lege nu este corecta in acest caz.

Secretul votului nu este asigurat. Sistemul cripteaza un vot iar alegatorul il semneaza. Dar, trebuie mentionat ca votul criptat trebuie sa fie diferit pentru fiecare vot, folosind un IV generat pentru fiecare vot (majoritatea metodelor de criptare nu au aceasta cerinta). Altfel, un vot pentru acelasi candidat va fi criptat in acelasi text.

La final. Sistemele de vot electronic pot sa fie sigure si verificabile, dar legea aceasta se bazeaza pe increderea in cei care opereaza sistemul de vot, un lucru care NU trebuie facut, mai ales in Romania.