TrustLevel lança aplicativo de votação ZK na mainnet da Cardano
Participantes convidados podem votar sem uma carteira ou ADA, enquanto as cédulas e os resultados são registrados na Cardano. O aplicativo usa provas de conhecimento zero para verificar a associação ao grupo sem revelar qual membro votou.
By SongMarketCap
O aplicativo de votação ZK da TrustLevel está ativo na mainnet da Cardano e na rede de testes Preprod. O aplicativo de código aberto permite que organizadores criem votações para grupos convidados, com as cédulas verificadas e contabilizadas na blockchain.
Os eleitores recebem um link de convite e não precisam assinar uma transação ou pagar uma taxa de rede. O organizador configura o evento e cobre os custos de publicar o evento e de enviar os votos.
Como a votação ZK funciona na Cardano
Um organizador seleciona a rede, as opções de voto, o método de votação e a janela de tempo, depois convida os participantes por email. Cada convite contém um link privado, e os participantes devem se registrar antes de o evento ser publicado.
Durante o registro, o navegador do eleitor gera uma identidade criptográfica secreta. Um compromisso público derivado dessa identidade é adicionado ao grupo, enquanto o segredo permanece com o participante.
Ao votar, o navegador gera uma prova de conhecimento zero de que o eleitor pertence ao grupo registrado sem identificar o membro. Um marcador de uso único, conhecido como nullifier, impede que a mesma identidade vote duas vezes.
O serviço da TrustLevel envia a transação de voto usando sua própria carteira. O aplicativo oferece suporte tanto a votação de escolha única quanto a uma opção ponderada que permite aos participantes distribuir um número fixo de pontos entre as opções.
O que o aplicativo de votação mantém privado
O aplicativo usa uma versão do Semaphore, um protocolo de sinalização anônima de grupo, adaptado para a Cardano. Os contratos inteligentes verificam as provas, registram os votos e atualizam a contagem na blockchain.
A prova oculta qual membro registrado enviou uma cédula, mas a opção selecionada permanece visível na Cardano. O aplicativo não exibe resultados intermediários enquanto a votação estiver aberta; ainda assim, qualquer pessoa que inspecione a blockchain pode acompanhar a contagem.
A TrustLevel também identifica uma limitação no serviço hospedado. Seu backend recebe uma solicitação associada ao eleitor antes de receber o voto, portanto um operador que registre ambas as solicitações poderia correlacionar o participante a uma cédula. O projeto lista abordagens alternativas para lidar com essas solicitações como possíveis mitigações.
[NEWSBREAK]
Custos na mainnet e disponibilidade de código aberto
Segundo a TrustLevel, publicar um evento na mainnet exige aproximadamente 15 ADA bloqueados nos contratos do evento e cerca de 1.5 ADA em taxas. Os organizadores também pagam antecipadamente 1.3 ADA por eleitor registrado para as transações de voto. Qualquer parte não utilizada desse pagamento não é reembolsada.
O uso em Preprod é gratuito. Depois que um evento é publicado, suas opções, datas e a composição do grupo registrado não podem ser alteradas. Participantes que não tiverem se registrado até esse momento não podem votar.
O projeto recebeu financiamento por meio do Project Catalyst Fund 12. Seu código está disponível sob a licença Apache 2.0, permitindo que organizações executem sua própria instância do aplicativo.