Della tecnologia blockchain si parla ormai sempre più spesso, non solo in riferimento alle tanto chiacchierate criptovalute, ma anche in altri contesti, tra questi quello del voto elettronico; sono, infatti, varie le proposte avanzate per implementare un sistema di voto che si serva della tecnologia di cui parliamo[1], anche se non sono esenti da osservazioni critiche[2].

Ma procediamo con ordine: cos’è, in parole povere, la blockchain? Possiamo definirla preliminarmente come un «registro che raccoglie informazioni relative a transazioni, ordinate cronologicamente, e raccolte in unità dette blocchi.»[3] Tale registro è condiviso, distribuito e decentralizzato, ovvero si trova normalmente nella sua interezza su più dispositivi contemporaneamente (nodi). Le transazioni avvengono per mezzo di una coppia di chiavi: quella privata viene usata per firmare, mentre quella pubblica per verificare la firma. La blockchain si basa su cinque principi fondamentali[4]: database distribuiti, trasmissione peer to peer, trasparenza con pseudoanonimato, irreversibilità dei record e logica computazionale. Ciò vuol dire, in estrema sintesi, che stiamo parlando di un sistema di dati, inseriti da utenti che possono rimanere anonimi, verificabili da chiunque ma non modificabili, la comunicazione dei quali non ha bisogno di intermediari, poiché ogni nodo memorizza e trasmette le informazioni a tutti gli altri. Le comunicazioni e le creazioni di dati seguono un protocollo, una serie di regole comunemente accettate da tutte le parti.

Ma è mai stato utilizzato, durante elezioni ufficiali, un sistema di voto elettronico basato su questa tecnologia? Sulla base dei primi risultati che possiamo trovare sui motori di ricerca, sembrerebbe che il Sierra Leone abbia davvero fatto questo passo che molti attendevano, in occasione delle elezioni presidenziali svolte a marzo del 2018[5], utilizzando una software prodotto da una società svizzera. Ma la realtà, all’esito di una ricerca un po’ più approfondita, si scopre diversa.

Sul profilo Twitter ufficiale della Commissione Elettorale Nazionale (NEC) del Sierra Leone troviamo una prima smentita[6], in cui si precisa che è stato utilizzato un software sviluppato (in Sierra Leone) con linguaggio C++ per la creazione di un database Microsoft SQL, e che in alcun modo è stata impiegata la tecnologia blockchain. Si aggiunge, inoltre, che nessuno dei software utilizzati è open source. La fase interessata è quindi unicamente quella della registrazione e non anche quella di espressione del voto da parte dell’elettore, che si è svolta con le tradizionali procedure di voto “cartacee”[7].

In qualche modo, però, è vero che la blockchain è stata attrice delle procedure di registrazione del voto in Sierra Leone, anche se non di quelle “ufficiali”. Come?

Parallelamente alla registrazione dei voti svolta dal NEC, sono state effettuate altre registrazioni, senza alcun valore giuridico e quindi senza nessuna influenza sull’esisto delle elezioni, da parte di soggetti terzi, osservatori internazionali accreditati dalla stessa Commissione. Uno di questi osservatori era Agora (accreditata per partecipare allo spoglio di 280 seggi elettorali) che ha sviluppato un software per la registrazione dei voti basato sulla tecnologia blockchain. I rappresentati di Agora che hanno partecipato alla fase di spoglio si sono quindi limitati, senza nessuna interferenza con le procedure ufficiali, a inserire i dati annunciati dagli scrutatori del NEC nel loro sistema, per verificare poi la corrispondenza tra l’esito finale del conteggio effettuato manualmente con quello effettuato dal loro software. La differenza tra i due risultati si è rivelata minima, secondo un comunicato di Agora[8].

Il sistema di Agora[9], però, è stato testato solo in minima parte in Sierra Leone. Risulta, infatti, sacrificato, quasi inutilizzato, rispetto alla finalità per cui è stato progettato, ovvero per supportare tutta la procedura di voto, a partire dall’espressione della preferenza da parte degli elettori. Nel caso in esame è stato dimostrato che i voti, una volta inseriti nel database (si presume in maniera corretta) al termine dello spoglio manuale, non possono essere manipolati, ma questa è una caratteristica di ogni sistema blockchain, per cui non risulta esserci, con questo utilizzo, nessuna particolarità degna di nota. È solo utilizzando il sistema nella sua interezza, per ogni fase del voto, che questo risulta innovativo.

Ogni elettore che si identifichi correttamente può inserire un voto, firmato crittograficamente, sulla blockchain di Agora, la bulletin board. La particolarità del sistema sta nell’utilizzo di due tipi di nodi per garantire la trasparenza e la sicurezza dei dati: i consensus nodes e i citizen auditor nodes. I primi sono dei server indipendenti, che si monitorano a vicenda, ospitati da terze parti politicamente neutrali, che hanno il compito di processare in maniera corretta i voti inseriti dagli elettori, per mezzo del software di Agora; se una di queste parti dovesse alterare i dati, questi verrebbero rifiutati dalla blockchain e gli altri consensus nodes se ne accorgerebbero immediatamente. In sintesi, questi nodi conservano una copia della blockchain, ricevono i voti criptati dagli elettori e ne autenticano i dati assicurandosi che abbiano l’autorizzazione a votare, confermano i blocchi della blockchain (proposti da un nodo detto Oracle) e, infine, decifrano i voti anonimi al termine delle elezioni, creando un testo semplice che ne consente il conteggio. I Consensus nodes insieme formano la Cothority, che conferma le transazioni sulla bulletin board. Le parti che ospitano i server vengono scelte in base alla loro indipendenza e al loro impegno per la tutela dei diritti civili, tra ONG, Università, fondazioni e no-profit politicamente neutrali.

Altro step finalizzato a garantire la sicurezza è rappresentato dal controllo effettuato dai Citizen auditor nodes, che tutti insieme formano il Valeda Network. Il ruolo di questi nodi è paragonabile a quello degli osservatori elettorali per come li conosciamo nei nostri attuali sistemi di votazione “cartacei”, in questo caso hanno il compito di verificare che i voti vengano processati correttamente dai Consensus nodes. Citizen auditor node può essere chiunque in qualsiasi parte del mondo: chi fosse interessato a ricoprire questo ruolo può segnalarlo ad Agora, che sceglierà in modo casuale tra i candidati, dopo averne verificato l’identità e le competenze, coloro che entreranno a far parte del network, che si impegneranno poi con Agora stipulando un contratto.

Per incentivare la partecipazione di organizzazioni e cittadini sono previsti, per i nodes, dei compensi in gettoni chiamati VOTE, il cui valore in dollari statunitensi è calcolato, per ogni singola elezione, per mezzo di una formula predefinita.

Il sistema blockchain di Agora, essendo ottimizzato per il voto, non potrebbe non prevedere una fase di anonimizzazione dello stesso. Tale fase è infatti garantita grazie a un mixing network, ovvero un insieme di server che ri-crittografa una determinata serie di dati più volte: quando i voti vengono inviati attraverso il mixing network, ogni mixing node processa l’intera lista di voti crittografati e genera un nuovo elenco di schede anonime con accanto la dimostrazione a conoscenza zero[10] del mixaggio della bulletin board, rendendo così anche questa fase pubblica, trasparente e verificabile da chiunque.

Chiarito che utilizzare il sistema Agora solamente al termine delle consultazioni, come è stato fatto in Sierra Leone, non ha molto senso dal momento che si sprecano le potenzialità del sistema, in realtà questo sembra essere ben articolato e ottimizzato per il voto e potrebbe effettivamente portare dei benefici in termini di tempo, costi, segretezza e accessibilità. Questo a patto che sia utilizzato in un seggio elettorale presidiato, dal momento in cui, se fosse possibile votare in maniera non presidiata, si presenterebbero ulteriori problemi ai quali nemmeno la tecnologia più avanzata potrebbe porre rimedio, legati alla personalità e alla segretezza del voto[11].

Il sistema sembra infatti avere sotto controllo gli aspetti che riguardano la tutela della segretezza e dell’anonimità del voto, elementi di primaria importanza in qualsiasi moderna Costituzione, grazie ai due nodi e al meccanismo di anonimizzazione di cui abbiamo parlato. Alterare i dati sarebbe ipoteticamente possibile per i consensus nodes, che però per farlo dovrebbero modificare il software e mettersi d’accordo per utilizzare tutti la versione modificata; ciò però risulta improbabile e di difficile realizzazione sia per la modalità con cui le parti vengono scelte, sia a causa del successivo controllo da parte dei citizen auditors nodes. La difficoltà di alterare i dati, insomma, sembra dipendere molto sia dal numero che dalla “qualità” (intesa come indipendenza e serietà) delle parti scelte come nodi. Inoltre un elemento di non secondaria importanza è la possibilità data a ogni elettore di monitorare il proprio voto e verificare che non venga alterato, garantendo così un livello di sicurezza e trasparenza ancora più alto e una maggiore fiducia dell’elettore nel sistema, aspetto non di poco conto per uno Stato che desidera introdurre il voto elettronico nel proprio territorio[12].

Per ciò che riguarda gli attacchi perpetuati recentemente ai danni della blockchain di alcune criptovalute possiamo stare tranquilli, perché Agora non può essere soggetta a quel tipo di attacchi, i cosiddetti “attacchi del 51%”, ovvero casi in cui un soggetto riesce ad ottenere il controllo della maggiorparte della rete, controllando di fatto le transazioni. Questi attacchi possono riguardare, infatti, le blockchain proof of work, ovvero quelle in cui chiunque, in base alla propria potenza di calcolo, può creare dei blocchi, che nel caso di Agora invece abbiamo visto che possono essere creati solo dalla Cothority. Non possiamo certo dare per scontato, però, che in futuro non saranno possibili altri tipi di manomissioni del sistema.

C’è anche chi ritiene, però, che il vero problema non sarebbe dato dal modo in cui la blockchain “tutela” il dato, ma piuttosto dal modo in cui lo stesso dato arriva alla blockchain[13], ovvero ciò che succede nella memoria dell’elaboratore dal momento in cui clicchiamo sulla preferenza al momento in cui questa viene salvata sul sistema e memorizzata: come il dato viene preparato, processato e, solo dopo, salvato sulla blockchain.

Aldilà di tutto c’è un aspetto che non possiamo trascurare, ed è quello della verificabilità pubblica. Anche se fosse data a chiunque la possibilità di controllare il corretto funzionamento di un software, rendendolo open source, rimane il fatto che per poterlo fare servono delle competenze che non sono evidentemente alla portata di tutti. Tale verificabilità è sicuramente garantita, invece, dalle procedure del voto cartaceo, dato che consentono a chiunque (elettori, rappresentanti di lista e osservatori) di vigilare su qualsiasi fase del procedimento, assicurandosi che le urne e le schede non vengano manomesse né durante la votazione, né durante lo spoglio.

Tirando le somme, il sistema Agora sembra avere davvero ottimizzato la blockchain per il voto elettronico, ma rimangono le criticità che abbiamo evidenziato. Se pensiamo di sostituire il voto cartaceo con quello elettronico dobbiamo essere sicuri che questo garantisca un livello di sicurezza almeno pari se non superiore perché il gioco valga la candela. Il voto cartaceo non è esente da brogli, certo, ma i danni sarebbero limitati ad una piccola parte di schede o di seggi, mentre la manomissione o il malfunzionamento di un sistema di voto elettronico corrisponderebbe a una potenziale alterazione di tutti i voti in pochi secondi, il rischio sarebbe molto alto. Possiamo essere sicuri di avere tra le mani un sistema che, nonostante le criticità evidenziate, non possa, oggi o nel futuro, essere compromesso? Siamo sicuri di volere un sistema che non è verificabile da tutti gli elettori? Siamo sicuri che, nonostante la blockchain, non rimanga più sicuro e trasparente il voto cartaceo, pur con i suoi difetti?

A cura di Giulia Selis


[1] Tra queste v. (Di Ciollo, 2017) consultabile su https://www.jei.it/approfondimenti/item/490-voto-elettronico-rilievi-giuridici-e-tecnici-teorizzazione-di-un-modello-sperimentale-di-votazione-mediante-usodella-tecnologia-blockchain; (Ayed, 2017); (Liu & Wang, 2017) reperibile su https://www.jei.it/approfondimenti/item/490-voto-elettronico-rilievi-giuridici-e-tecnici-teorizzazione-di-un-modello-sperimentale-di-votazione-mediante-usodella-tecnologia-blockchain; (Cruz & Kaji, 2017).

[2] In proposito, sono interessanti gli aspetti evidenziati da (Gometz & Folarin, 2018, p. 326-328) e da Gianluca Orrù al link https://www.madeinitaly.cloud/il-voto-elettronico-molto-lontano-forse-impossibile/

[3] (Di Ciollo, 2017) consultabile su http://www.jei.it/approfondimenti/item/490-voto-elettronico-rilievigiuridici-e-tecnici-teorizzazione-di-un-modello-sperimentale-di-votazione-mediante-uso-della-tecnologiablockchain

[4] (Iansiti & Lakhani, 2017, p. 118)

[5] Per citare alcune notizie sul web: https://www.ilsole24ore.com/art/mondo/2018-03-17/in-sierra-leone-prime-elezioni-mondo-garantite-blockchain-190050.shtml?uuid=AEXMDpIE; http://www.beppegrillo.it/in-sierra-leone-la-prima-votazione-al-mondo-con-sistema-blockchain/;

[6] https://twitter.com/NECsalone/status/975773726703804419

[7] Le quali sono dettagliatamente spiegate sul sito del NEC al link http://necsl.org/Procedures.aspx

[8] Al link https://medium.com/agorablockchain/agora-official-statement-regarding-sierra-leone-election-7730d2d9de4e è reperibile una tabella riportante i dati, tuttavia la pagina web di Agorà dei risultati completi (https://www.agora.vote/sierraleone2018) non risulta più disponibile.

[9] Le informazioni dettagliate relative al funzionamento del sistema blockchain di Agora sono reperibili sul sito di Agora (https://www.agora.vote/) e nella pagina Medium di Agora (https://medium.com/agorablockchain)

[10] La dimostrazione a conoscenza zero, in crittografia, è un metodo che si utilizza per dimostrare che un’affermazione è vera, senza rivelare nient’altro oltre la veridicità.

[11] La cabina elettorale è ancora il modo migliore che abbiamo per tutelarci da occhi indiscreti, pressioni e minacce di terzi sul nostro voto: è, per ovvie ragioni, impossibile per lo Stato garantire la stessa riservatezza in qualsiasi altro luogo diverso la seggio.

[12] La Norvegia, per esempio, ha interrotto la sperimentazione del voto elettronico nel 2014 a causa della scarsa fiducia dei cittadini nel sistema di voto.

[13] Lo fa, in maniera un po’ colorita, Matteo Flora, lo stesso hacker che era riuscito ad entrare nel sistema del voto elettronico utilizzato dalla Lombardia per il referendum sull’autonomia nell’ottobre del 2017, al link https://player.fm/series/matteo-flora/blockchain-e-voto-elettronico-tutte-le-cate-che-vi-dicono-spiegate-bene