Início » Antivírus e Segurança » Microsoft ElectionGuard: uma iniciativa open source que pode revolucionar o voto

Microsoft ElectionGuard: uma iniciativa open source que pode revolucionar o voto

Ou: trocando o chapéu de alumínio pela criptografia homomórfica

Gilberto Soares Filho Por

Eu não sou muito chegado a teorias da conspiração, até porque elas vão contra meu credo básico na Navalha de Occam, que a grosso modo diz que “a proposição que tiver o menor número de suposições tende a ser a verdadeira”, mas confesso que certa vez senti um desconforto ao votar em nossa urna eletrônica.

Em 2014, ao teclar “Confirma”, surgiu uma barra de progresso na tela da urna, coisa que eu nunca havia visto antes, e só depois de alguns segundos surgiu a mensagem de “FIM”. A explicação que recebi foi a de que algumas urnas tinham mais de dez anos de vida (hardware defasado, portanto) e a barra de progresso havia sido incluída naquele ano, substituindo a tela em branco entre a confirmação e o final.

Por mais que meu lado racional dissesse (e diga) que a explicação faz sentido, o fato de que nossas autoridades dificultam a auditoria do código da urna (e o fato de ela ter código fechado) é algo que sempre me incomodou. O TSE já anunciou que abriria o código este ano ou antes das eleições de 2022, mas sinceramente, duvido muito.

Entra a criptografia homomórfica

Não vou fingir ter conhecimento prévio deste tipo de criptografia — até ler sobre o assunto no final do mês passado, nunca tinha ouvido falar dela, mas é uma tecnologia fantástica.

Um dos maiores entraves ao uso mais amplo de criptografia é a impossibilidade de tratar os dados enquanto estão criptografados. E, dependendo do tamanho da base, descriptografar, tratar e criptografar novamente pode resultar em um consumo excessivo de recursos. Nós vemos o resultado desses dados legíveis em servidores e “nuvens” mal configurados ou comprometidos em vazamentos online que atingem a casa das dezenas ou até mesmo centenas de milhões de credenciais de acesso, números de cartão de crédito e muito mais.

A criptografia homomórfica, tal como a assimétrica, trabalha com o conceito de chave pública e privada, mas além disso ela traz uma tecnologia que possibilita a execução de funções computacionais dentro da base de dados, sem que, entretanto, se veja o que está sendo tratado. E só o proprietário da chave privada poderá “ler” o resultado.

Complicado? Um exemplo que o próprio criador da tecnologia fornece ajuda a visualizá-la de forma mais clara.

Imagine o porta-luvas de um carro. Você pode abri-lo, pode enfiar suas duas mãos e mexer no que está dentro, mas não pode ver nem tirar nada.

Indo um pouco além, imagine que você sabe que dentro do porta-luvas existem peças de lego, algumas quadradas e outras retangulares. O dono do porta-luvas pede que você monte torres com oito peças quadradas e torres com dez peças retangulares. Quando você terminar a montagem, pode avisar ao dono do porta-luvas, e ele usará a chave privada para abrir, ver, tirar e fazer o que bem entender com elas. Grosso modo, é assim que a criptografia homomórfica funciona.

Uma tecnologia perfeita para votação

A beleza do sistema de votação homomórfico é que o voto fica criptografado, garantindo que ninguém o verá. A totalização pode ser feita sem que o operador saiba quem está recebendo votos, enquanto a integridade dos dados do seu voto está garantida pela criptografia, já que o totalizador não consegue modificar os dados e, para fechar com chave de ouro, o eleitor recebe uma chave verificadora, que pode usar para saber se seu voto foi contabilizado.

A Microsoft testou seu sistema ElectionGuard numa votação para escolher juízes de uma corte superior na cidade americana de Fulton, no estado do Wisconsin, que envolvia apenas quinhentos eleitores. E transcorreu com sucesso.

Mais do que a máquina de votação em si, no caso um aparelho que usa sensores do Xbox e um tablet Surface, o processo em si é brilhante. A máquina pode computar o voto ou simplesmente gerar um cartão impresso, com um código QR, que deverá ser depositado em uma urna, que por sua vez fará a leitura e só então computará o voto. A cédula, anonimizada, pode ser utilizada posteriormente para auditoria do processo ou até mesmo recontagem de votos.

O software, que tem código aberto, está publicado neste GitHub. Você pode se aprofundar no assunto na Eset, Fast Company (inglês) e Baffle (inglês).

Mas nem tudo são flores

Escalar pode ser um problema para essa tecnologia e, talvez por isso, a Microsoft tenha escolhido uma eleição de menor importância, com poucos votantes, para testar o sistema em ambiente real.

A criptografia homomórfica ainda é muito lenta e exige uma grande quantidade de memória para funcionar. Os esquemas de base de dados têm que ser criados com vistas ao tipo de requisição que se precisará fazer, e o sistema ainda apresenta limitações quando se opera com mais de um esquema distinto.

Mas não poderia se esperar algo diferente de uma tecnologia que consegue fazer algo tão impressionante.

Comentários da Comunidade

Participe da discussão
8 usuários participando

Os mais notáveis

Comentários com a maior pontuação

Jhonny (@jokalokao)

Até que enfim uma empresa grande pra bancar um projeto desse

Danílio Costa da Silva (@Daniliocs)

Achei bem interessante, mas esbarra num problema grande: custo de implantação. Se nós mantemos até hoje urnas de 10 anos atrás, provavelmente precisaríamos de todo um novo conjunto de hardware e treinamento para os funcionários. É um custo muito alto.

Gilberto Soares Filho (@knuttz)

Sem dúvida alguma Danilo… mas é aquela coisa, é algo que ainda está nos seus primeiros passos. Pode ser inviável agora, até mesmo pelo custo de processar os dados que é bem mais alto dentro desta tecnologia. Mas em alguns anos isso muda. Cinco, dez, não sei, mas muda.

Marcos Oliveira (@marcosoliveira)

A história da barrinha é verdade mesmo. Eu trabalhava na Justiça Eleitoral (atualmente tô licenciado, então ainda “sou de lá”) e me lembro desses questionamentos.
Atualizações são feitas em toda eleição. É a barrinha foi colocada justamente pra evitar a impressão de um “travamento” da Urna. Mas no fim gerou mais desconfiança!!! hehe

ochateador (@ochateador)

Interessante seria ficar testando por vários anos em ambientes pequenos (até dois mil eleitores) para ir melhorando o processo/sistema, com foco especial na otimização de recursos.
Isso permitiria que hackers, crackers e autoridades conferissem o processo em busca de brechas. Quando o processo estiver otimizado para rodar em equipamentos simples e baratos, aí seria legal ampliar os testes para rodar em dois ou mais locais simultaneos e ver como que fica (exemplo: cinco unidades do sindicato recebendo votos para uma nova direção).

Gilberto Soares Filho (@knuttz)

Os EUA são o local perfeito para isso, os caras votam em tudo, até juiz e xerife… Acho que este caminho que você falou é o que eles seguirão, pelo menos é o mais lógico.

Fábio Laurindo (@Fabio_Laurindo)

Muita memória pra funcionar? Código Windows vista kkkk

Meikson (@Meikson)

toda vez eu lia criptografia homofóbica

ochateador (@ochateador)

Mas aí o povo nem reclama.
Testa aqui no brasil e veja se o povo que está no poder a 40 anos não destrói a máquina. Se destruir é porque o sistema é bom