A16z rilascia un sistema di voto anonimo per Ethereum



Il fondo di venture capital Andreessen Horowitz, noto anche come A16z, ha pubblicato una libreria Solidity che può essere utilizzata per il voto anonimo su Ethereum. Denominata “Cicada”, la libreria impedisce che la scelta di un singolo votante sia nota prima della fine delle votazioni. Se combinata con sistemi di appartenenza a gruppi a zero-knowledge come Semaphore, consente anche di rendere l’identità del votante permanentemente non conoscibile, secondo un blog post del 24 maggio di Michael Zhu, ingegnere di A16z.

Siamo entusiasti di annunciare Cicada: un nuovo blocco per il voto privato on-chain.

Cicada si basa sui time-lock puzzle, un tipo di crittografia che consente agli utenti di criptare valori segreti che possono essere decifrati solo dopo un determinato periodo di tempo, ha dichiarato Zhu.

Tali puzzle esistono dal 1996. Ma prima del 2019, avrebbero richiesto agli utenti di rivelare i loro valori segreti una volta trascorso il periodo di tempo. Nei sistemi di voto, ciò avrebbe potuto causare problemi con gli utenti che inviavano voti e poi andavano offline, impedendo a tutti i voti di essere conteggiati.

Nel 2019, i crittografi Giulio Malavolta e Aravind Thyagarajan hanno proposto il concetto di time-lock puzzle “omomorfico”. Questo permette di sommare i puzzle per produrre un puzzle finale molto più facile da risolvere rispetto alla somma dei singoli puzzle. La soluzione dell’enigma finale rivela solo la somma dei singoli valori senza rivelare i singoli valori che compongono la somma.

Secondo il post di A16z, Cicada utilizza questi puzzle omomorfi, consentendo il conteggio dei voti anche se gli utenti vanno offline.

Nel tentativo di trasferire il sistema di Malavolta e Thyagarajan sulla blockchain, i ricercatori di A16z hanno incontrato un ostacolo nella creazione di un sistema di voto equo: Ogni scelta doveva essere codificata come un valore booleano di “1” o “0”. Ciò significa che gli aggressori potevano cercare di aumentare il loro potere di voto codificando in modo errato il voto, ad esempio codificando “100” come valore.

Per risolvere tale problema, Cicada richiede agli elettori di inviare una prova di validità del voto a zero knowledge insieme a ciascuna scheda, spiega il post. La prova dimostra che il voto sia stato codificato correttamente, ma senza rivelare il contenuto del voto.

Cicada previene la conoscenza dei voti solo mentre il sondaggio è in corso. Una volta che il “sondaggio è chiuso” o il periodo di blocco temporale è passato, chiunque può determinare il contenuto di un voto forzando la soluzione del puzzle. Tuttavia, A16z ha suggerito che il problema possa essere risolto combinando Cicada con sistemi di appartenenza a gruppi a zero-knowledge come Semaphore, Semacaulk o prove di stato a zero-knowledge. In tal caso, la forzatura bruta dell’enigma rivelerà solo che il voto è stato espresso da un elettore idoneo, ma non rivelerà le credenziali utilizzate per dimostrare l’idoneità dell’elettore.

Come esempio, Zhu ha fornito un link a un contratto campione prodotto con Cicada basato anche su Semaphore, al fine di dimostrare l’eleggibilità dell’elettore.

I sistemi di voto sono da tempo una componente delle organizzazioni autonome decentralizzate (DAO), gli organi di governo che spesso gestiscono le applicazioni blockchain. Nella maggior parte dei casi, però, le DAO utilizzano i token per rappresentare i voti, il che significa che i singoli utenti possono avere un’influenza maggiore se possiedono un gran numero di token. Ad esempio, il 22 maggio, un aggressore ha preso il controllo di Tornado Cash, esprimendo voti supplementari per una proposta malevola e utilizzandola per prosciugare tutti i fondi del contratto di governance. L’attaccante si è poi offerto di restituire il controllo agli utenti.

Il fondatore di Waves, Sasha Ivanov, ha sostenuto che le DAO dovrebbero adottare un sistema di voto più democratico se si vuole evitare attacchi alla governance come questi.
Traduzione a cura di Walter Rizzo





Fonte: https://it.cointelegraph.com/news/a16z-releases-anonymous-voting-system-for-ethereum

Back to top button