Nos últimos anos, a Vocdoni executou votações na Vochain, a nossa blockchain L1 concebida especificamente para votação. Como qualquer blockchain, deu-nos algo poderoso: tudo é transparente, reproduzível e verificável. Qualquer pessoa pode auditar. Se algo for adulterado, pode ser detetado. O consenso é alcançado por uma maioria de nós honestos, que garantem que a rede continua a funcionar.
Esse modelo funciona e já sustentou eleições reais. Mas se o objetivo final é a tomada de decisões autónoma (em que os resultados podem desencadear ações com segurança), «auditável» continua a não ser o mesmo que «impossível de falsificar».
Porque as blockchains são, no fundo, máquinas sociais com segurança económica. Se o incentivo para fazer batota se tornar suficientemente grande, a teoria dos jogos começa a bater à porta.
Então perguntámo-nos: e se o escrutínio não fosse algo que se confia à rede, mas algo que a rede é criptograficamente forçada a fazer corretamente?
É essa a mudança da votação em blockchain para a votação criptográfica.
Como funciona?¶
O conhecimento zero é muitas vezes publicitado como «tecnologia de privacidade». E sim, a privacidade importa. Mas a propriedade verdadeiramente disruptiva é a computação verificada: é possível provar que se seguiu um conjunto de regras sem pedir a ninguém que confie na execução. O DAVINCI foi construído em torno dessa ideia: as provas não são um extra opcional. São elas que guardam a porta.
Em termos práticos: quem não consegue produzir a prova não pode atualizar o escrutínio.
O DAVINCI é um zkRollup focado em votação sobre o Ethereum, em que uma rede descentralizada de Sequencers agrupa votos e atualiza o estado da eleição, e o Ethereum só aceita essas atualizações se uma prova zkSNARK demonstrar que foram feitas corretamente.
Sem prova → sem atualização de estado → sem resultados falsos.
O Ethereum é a «camada de coordenação»
Um processo de votação começa como uma configuração onchain: regras, calendário e o compromisso do registo de eleitores (censo). É também no Ethereum que vive a raiz de estado válida mais recente da eleição, a fonte de verdade.
Os Sequencers fazem o trabalho - mas não lhes cabe «decidir»
Os Sequencers são operadores que recebem os votos, verificam-nos, agrupam-nos, calculam o novo estado e submetem uma prova ao Ethereum. Não usam um mecanismo de consenso para chegar a acordo sobre o escrutínio. Produzem provas criptográficas para lotes de votos e atualizam o escrutínio encriptado onchain.
A votação é sem gas para os utilizadores
Em vez de cada eleitor pagar uma taxa de transação, os custos são amortizados: os votos são agrupados e liquidados em lotes. É assim que se consegue votação sem gas sem sacrificar a segurança do Ethereum.
A privacidade vem da encriptação + desencriptação por limiar
Os boletins de voto são encriptados com encriptação homomórfica de limiar (ElGamal): os votos podem ser agregados enquanto ainda estão encriptados e nenhuma parte isolada os pode desencriptar. Só quando a votação encerra, e um número suficiente de frações independentes da chave é revelado, é que alguém pode desencriptar o escrutínio final.
A ausência de comprovativo (receipt-freeness) faz parte da mecânica
O DAVINCI foi construído para tornar a coação e a compra de votos mais difíceis ou impossíveis:
- os boletins são re-encriptados pelos sequencers (para que ninguém possa «provar» o seu voto mostrando o fator aleatório de ocultação).
- e os eleitores podem substituir silenciosamente o seu voto (conta o último voto emitido).
Disponibilidade de dados
O DAVINCI publica os dados necessários para as transições de estado através de blobs do Ethereum (EIP-4844) e liga-os ao passo de verificação onchain. É assim que outros sequencers conseguem verificar de forma independente e continuar a partir do mesmo estado partilhado.
O que faz dela «votação criptográfica»?¶
Não é apenas auditável, é de cumprimento garantido
A «votação em blockchain» tradicional dá transparência. O DAVINCI vai um passo mais além: torna o escrutínio correto um requisito criptográfico.
Sem pressupostos de maioria honesta para a contagem de votos
Não é preciso assumir que «a maioria dos nós é honesta» para confiar no resultado. O resultado só é aceite se a prova for validada no Ethereum.
A participação pode ser distribuída, por conceção
Os Sequencers podem pegar no último estado verificado, construir o seguinte e continuar a cadeia. Isso torna o sistema mais difícil de censurar e mais fácil de manter vivo, mesmo que alguns operadores desapareçam.
A conclusão¶
A privacidade e a segurança não podem ser «funcionalidades» na governação Web3; são a base. Sem privacidade, a votação deixa de ser democrática: se um participante consegue provar como votou, pode ser coagido ou subornado, e a governação transforma-se num mercado de pressão.
O DAVINCI é a nossa tentativa de corrigir isso, tornando a correção inegociável: sem escrutínio otimista, sem «confie no operador», sem pressuposto de maioria honesta para a contagem, apenas criptografia e o Ethereum a fazer cumprir as regras.
Foi concebido para eliminar os habituais impostos à participação: votação sem gas para os utilizadores, segurança de nível Ethereum para a liquidação e um papel de sequencer pensado para hardware comum (máquinas baseadas em CPU, não clusters de GPU), genuinamente aberto.
Mais importante ainda: o DAVINCI não é «o produto da Vocdoni». Somos os catalisadores, mas isto só se torna um padrão universal de votação se as comunidades que dele precisam ajudarem a defini-lo, a defendê-lo e a exigi-lo. Quem acredita que a governação deve ser privada por defeito, verificável por qualquer pessoa e impossível de falsificar pode juntar o seu nome ao Manifesto.