Porque votar online é muito mais difícil do que fazer operações bancárias online
O seu banco permite-lhe verificar cada transação. O seu voto desaparece por design — e no momento em que alguém tenta corrigir isso, entrega aos compradores de votos o recibo que sempre desejaram.
É março de 2019, e em algum lugar dos escritórios dos Correios Suíços em Berna, está a ser tomada uma decisão que parece um triunfo de transparência democrática. A autoridade postal federal suíça e o seu fornecedor espanhol, a Scytl, estão prestes a publicar o código-fonte completo do seu sistema de votação pela internet — aquele que estava previsto para referendos nacionais vinculativos. Qualquer pessoa pode lê-lo. O público pode verificá-lo. Os engenheiros estão orgulhosos.
Seis semanas depois, três investigadores independentes — Sarah Jamie Lewis, Olivier Pereira e Vanessa Teague — publicam um artigo com um título emprestado de Magritte: Ceci n'est pas une preuve. "Isto não é uma prova."
Tinham encontrado uma porta das fundações enterrada na mistura criptográfica do sistema. A matemática gerou uma "prova" de que todos os votos tinham sido contados corretamente. A prova foi verificada. Passou em cada verificação. E era uma mentira — porque qualquer pessoa que conhecesse os valores da porta das fundações poderia gerar uma prova com aspecto perfeitamente válido para uma mistura que tivesse alterado os votos. Todo o sentido da afirmação de "verificabilidade universal" do sistema era que não precisava confiar em ninguém. Essa afirmação era falsa.
Os Correios Suíços e a Scytl reconheceram a descoberta. O sistema foi suspenso.
Esta é a versão mais aguçada do problema. Mas não é a única. E não é sequer a mais difícil. O problema mais profundo com a votação pela internet não tem nada a ver com criptografia. Tem a ver com uma restrição de design que antecede os computadores em 170 anos.
Porque é que o seu banco e a sua urna são construídos de forma diferente
Quando verifica o saldo da sua conta bancária, está a ler um número que o seu banco quer que veja. Quando contesta uma transação, o seu banco produz um registo — com carimbo de tempo, atribuível a si — e pode verificar se corresponde. Pode ligar ao seu banco. Pode mostrar o registo a um advogado. Todo o sistema é construído em torno de um pressuposto: a transação é rastreável até si.
É exatamente o que um voto não pode ser.
O voto secreto — inventado na Austrália na década de 1850 e adotado nas democracias ao longo do século seguinte — não foi uma cortesia de privacidade. Foi um sistema de segurança. A Comissão Eleitoral Australiana regista a lógica claramente: porque as pessoas votavam em público, eram vulneráveis a intimidação e coerção. A solução foi um boletim uniforme, impresso pelo estado, marcado em privado, sem qualquer ligação entre o papel e a pessoa que o marcou. A Grã-Bretanha formalizou o mesmo princípio na Lei do Voto de 1872, terminando a era da votação aberta especificamente para colapsar o mercado dos compradores de votos. Um tribunal federal dos EUA expressou-o em linguagem moderna clara em Rideout v. Gardner (2016): as reformas do voto secreto foram adotadas para "combater a compra generalizada de votos e a intimidação de eleitores" — porque um comprador não pode executar uma compra que não pode verificar.
Aqui está a colisão estrutural: um recibo bancário torna uma transação comprovável; um recibo de voto torna um voto comprável.
Se pudesse fotografar o seu boletim marcado e enviá-lo a alguém para provar como votou, teria entregue a cada empregador, chefe político, autoridade religiosa, ou operário de envelope com dinheiro exatamente o mecanismo de execução que precisam. O tribunal em Rideout rejeitou uma proibição de "selfies" de voto com base na Primeira Emenda — mas reconheceu o mecanismo explicitamente. A fotografia restaura a prova de compra.
Então, quando alguém propõe votação pela internet e diz "vamos dar aos eleitores um recibo para verificar se o seu voto foi contado", está a propor, no mesmo fôlego, uma infraestrutura de compra de votos. E quando diz "vamos torná-lo anónimo para que ninguém possa provar o seu voto a um terceiro", está a propor um sistema onde o eleitor não pode confirmar independentemente se a sua escolha foi registada. Não pode ter ambos. A física não o permite.
Esta é a tensão fundamental. Tudo o resto é uma variação neste tema.
A experiência de 48 horas que matou um projeto piloto
Em setembro de 2010, a Junta de Eleições do Distrito de Colúmbia decidiu executar um sistema de devolução de boletins pela internet para eleitores no estrangeiro e militares. Antes de o implantar para boletins reais, abriram-no a testes públicos. Boa intuição.
Uma equipa da Universidade de Michigan liderada por J. Alex Halderman encontrou uma vulnerabilidade de software e ganhou controlo quase completo do servidor piloto em aproximadamente 48 horas. Podiam alterar cada voto que tinha sido emitido. Podiam ver boletins secretos. Como demonstração, programaram o sistema para tocar a canção de luta da Universidade de Michigan depois de cada voto simulado. A intrusão passou despercebida aos funcionários durante dias.
D.C. abandonou o plano. O artigo revisado por pares foi publicado em Financial Cryptography 2012.
A lição que os funcionários tiraram foi: a votação pela internet falhou um teste de segurança. A lição mais profunda é o que esse teste provou ser possível: quando a segurança de um sistema depende de software oculto à revisão adversarial, a única maneira de saber se se sustenta é deixar os adversários tentarem quebrá-lo. Washington fez a coisa certa ao abrir o projeto piloto. O resultado foi uma falha detetada e não uma eleição roubada.
A maioria das implementações não é testada desta forma. A maioria simplesmente entra em operação.
280.000 votos já emitidos antes de alguém notar o problema
Março de 2015. Nova Gales do Sul está no meio de uma eleição. O sistema iVote online do estado já recolheu aproximadamente 280.000 votos quando J. Alex Halderman e Vanessa Teague se sentam para analisar o sistema em funcionamento do exterior.
Encontram que o iVote carrega código de um servidor de análise externo através de uma ligação vulnerável às fraquezas TLS conhecidas na altura — o tipo de falhas sendo ativamente exploradas nesse ano sob nomes como FREAK e Logjam. Um atacante de rede posicionado entre um eleitor e o servidor poderia ter manipulado votos e comprometido a privacidade do voto. Encontram também que o serviço de verificação de votos por telefone do iVote — a funcionalidade concebida para permitir aos eleitores confirmar o seu boletim — é em si suscetível a manipulação.
A revisão de segurança pré-eleitoral das autoridades tinha aprovado o sistema. Os investigadores encontraram estes problemas durante uma eleição em direto, depois de um quarto de milhão de votos já estarem dentro. Uma correção foi implementada enquanto a votação ainda estava em andamento.
A análise revisada por pares foi publicada em E-Vote-ID 2015. A Comissão Eleitoral de NSW contestou o âmbito do risco, como as autoridades tendem a fazer.
Note-se que o mecanismo de verificação realmente era: um serviço telefónico que poderia ele próprio ser manipulado. Este é o problema do recibo na sua forma mais concreta. Não pode verificar se o seu voto foi registado corretamente interrogando o mesmo sistema que poderia tê-lo alterado. Qualquer recibo gerado por um sistema comprometido é um recibo para a mentira, não para a verdade. A única verificação significativa é aquela conduzida por um terceiro independente que possa inspecionar o mecanismo — não o resultado do mecanismo em si.
A porta das fundações na prova
Regressamos à Suíça em 2019. O que torna esse caso tão esclarecedor não é que o sistema fosse quebrado de forma óbvia. Foi quebrado de uma maneira que era matematicamente indistinguível de correta.
Os investigadores — Lewis, Pereira e Teague — descobriram que o mixnet do sistema usava um esquema de compromisso da porta das fundações para a sua prova de mistura. Um mixnet é como os sistemas de votação pela internet tentam preservar o anonimato: os votos são misturados através de múltiplas fases para que a entrada e a saída não possam ser ligadas. O sistema gera então uma prova criptográfica de que a mistura foi realizada honestamente e nenhum voto foi alterado.
A prova foi verificada. A matemática estava correta. E a porta das fundações significava que um iniciado que conhecesse os valores da porta das fundações poderia gerar uma prova perfeitamente válida para uma mistura que tivesse alterado votos.
Isto não é uma fraqueza teórica. É o que "verificabilidade universal" parecia num sistema agendado para referendos nacionais vinculativos. A análise publicada forçou os Correios Suíços e a Scytl a reconhecerem a falha e suspenderem o sistema.
O episódio oferece-lhe a versão mais difícil do problema do recibo. Porque mesmo que deixássemos de lado a compra de votos — mesmo que imaginássemos um mundo onde um recibo não seria usado para coagir ninguém — o próprio recibo poderia ser uma prova de uma contagem que nunca aconteceu, e não há maneira de o eleitor saber a diferença. A "prova criptográfica que pode verificar você mesmo" revelou exigir um doutoramento em matemática para reconhecer como falsa.
O Tribunal Constitucional Federal da Alemanha articulou o padrão em 2009 quando proibiu computadores de votação eletrónica cujo funcionamento interno apenas peritos conseguiam avaliar: os passos essenciais da votação e da determinação do resultado devem ser examinávels por cidadãos comuns, sem conhecimento especializado. Uma prova criptográfica que passa na verificação enquanto oculta votos alterados é precisamente o que esse padrão foi concebido para excluir.
Estónia: o sistema em que uma nação confia, e o que os investigadores realmente encontraram
A Estónia é o país mais frequentemente citado como prova de que a votação pela internet funciona. Tem um sistema i-voting nacional desde 2005. Milhões de estonianos o têm utilizado. É verdadeiramente pioneiro.
Em 2014, uma equipa de investigação independente — Springall, Finkbeiner, Durumeric, Kitcat, Hursti, MacAlpine e Halderman — observou o funcionamento do sistema durante as eleições municipais de outubro de 2013 e examinou o software cliente publicado e a configuração do servidor. Encontraram sérias fraquezas de segurança operacional e procedimental: práticas laxistas capturadas em vídeos oficiais, lacunas na arquitetura do software, e uma conclusão de que um atacante bem-dotado — ou um iniciado desonesto — poderia plausivamente comprometer a integridade dos votos ou a privacidade do eleitor sem deteção.
O seu artigo ACM CCS 2014 recomendou que a Estónia descontinuasse o sistema. As autoridades eleitorais estonianas contestaram as conclusões. O sistema continua em funcionamento.
Essa disputa é em si o ponto. Duas partes credenciadas com acesso ao mesmo sistema chegaram a conclusões opostas sobre se era seguro. Em sistemas de boletim de papel, este argumento pode ser resolvido: abra as caixas seladas, conte novamente os boletins, compare. Num sistema de votação pela internet com propriedades fortes de anonimato, o passo "conte novamente" não existe. Não há uma pilha de boletins para recontar. Há apenas o resultado do software, e a questão de se o confia.
A Noruega tentou votação pela internet em 2011 e 2013. Os ensaios foram descontinuados em 2014 depois de descobrir que a participação não aumentou e que a confiança de que os votos não foram alterados não poderia ser assegurada. O argumento da conveniência — a razão principal pela qual alguém propõe votação pela internet — não se concretizou empiricamente. E o argumento da verificabilidade desmoronou pela mesma razão que sempre desmorona: não pode auditar de forma independente o que não existe.
A assimetria real
O seu banco mantém um livro-razão. O livro-razão é rastreável até si. Se algo correr mal, pode comparar os seus registos aos registos do banco e aos registos de um árbitro. A cadeia de custódia corre diretamente da transação ao seu nome.
Um sistema de contagem de boletins funciona na direção exatamente oposta. O boletim deve ser permanentemente separado da identidade do eleitor antes de ser contado. A cadeia de custódia corre da caixa selada até ao resultado, com o nome do eleitor em parte nenhuma da sala de contagem.
Esses dois requisitos — verificação independente do que foi contado e rastreabilidade permanente de quem votou no quê — empurram um contra o outro com uma força que nenhuma arquitetura de software conseguiu ainda dissolver.
Os sistemas baseados em papel conseguem uma trégua imperfeita: o boletim físico é o registo verificado pelo eleitor, marcado em privado, depositado anonimamente, armazenado numa caixa selada, e contável por qualquer pessoa que possa olhar para um pedaço de papel. A Comissão Korthals Altes de 2007 do governo holandês chamou a isto "votar com confiança" — e depois recomendou regressar a ele, a partir de sistemas eletrónicos, porque o papel é o que a transparência e a verificabilidade realmente parecem na prática. Os Países Baixos têm utilizado papel contado manualmente desde então.
Os sistemas de votação pela internet não encontraram a trégua. O recibo que prova que o seu voto foi contado é também o recibo que prova como votou. A prova de que nenhum voto foi alterado depende da criptografia que a maioria dos eleitores não consegue avaliar — ou, como a Suíça descobriu, pode ser falsificada por um iniciado com conhecimento matemático que o eleitor nunca terá.
O vilão aqui não é um fornecedor, um partido ou um governo. O vilão é a exigência impossível: prove a contagem sem provar o eleitor. Esse é o problema que nenhum software conseguiu resolver, e é porque a analogia bancária falha nos fundamentos.
O que realmente tornaria isto verificável
Isto não é um argumento de que a votação pela internet nunca pode ser melhorada. É um argumento sobre o que "melhorado" teria de significar.
O caso suíço mostra que publicar código-fonte é necessário mas não suficiente — o código era público, e a falha ainda exigia três criptógrafos para encontrar. O caso de NSW mostra que a certificação pré-eleitoral não é suficiente — a falha foi encontrada durante a eleição por pessoas de fora que o processo de certificação não tinha incluído. O caso de D.C. mostra que testes adversariais abertos funcionam, mas apenas se o teste for realizado antes de votos reais estarem em jogo, e apenas se as jurisdições estiverem dispostas a matar um sistema quando o teste falhar.
O caso de Estónia mostra que mesmo opiniões de peritos contestadas não podem ser resolvidas da forma como uma recontagem de papel pode. E o caso de Suíça mostra que uma "prova" verificável pode ser uma prova de uma ficção.
O que tornaria a votação pela internet verificável — genuinamente verificável por alguém outro que o fornecedor, a autoridade ou um criptógrafo na folha de pagamento — exigiria no mínimo: código-fonte publicado sujeito a revisão adversarial contínua; recibos criptográficos que provem inclusão sem provar escolha, verificados contra um quadro de avisos público que qualquer eleitor pode interrogar; e um mecanismo de auditoria independente que não dependa do mesmo sistema que está a auditar. Os investigadores estão a trabalhar nessas propriedades. Nenhuma delas existe num sistema nacional implementado hoje que tenha sobrevivido a escrutínio adversarial sem encontrar uma falha crítica.
Até que façam, a comparação bancária é instrutiva exatamente pela razão errada. O seu banco pode dar-lhe um recibo porque a sua transação nunca foi concebida para ser secreta. O seu voto foi. Isto é uma funcionalidade, não um erro — e é a razão pela qual a votação online é muito mais difícil do que parece.
O que ainda não é independentemente verificável: se algum sistema de votação pela internet ao vivo em produção hoje pode resistir a um ataque de um iniciado bem-dotado sem deteção. Os sistemas que foram analisados por investigadores independentes — Estónia, NSW, D.C., Suíça — cada um produziu descobertas que as autoridades contestaram ou corrigiram. Nenhum sistema nacional de votação pela internet foi sujeito ao tipo de testes adversariais abertos e contínuos que permitisse a um cidadão comum — não um criptógrafo, não um funcionário do governo — confirmar se a contagem estava correta.
O que o tornaria verificável: publicação obrigatória de código-fonte público, quadros de avisos públicos operados independentemente, acesso contínuo a testes adversariais em equipa vermelha, e procedimentos de auditoria que não passem pelo sistema a ser auditado. Esses são os padrões que vale a pena exigir.
Veja como lacunas de verificabilidade aparecem em diferentes sistemas e países →
Leia a versão de dois minutos do problema da votação pela internet →
Fontes
- Lewis, Pereira, Teague — Ceci n'est pas une preuve (porta das fundações Correios Suíços/Scytl), 2019
- Wolchok, Wustrow, Halderman, Prasad — Attacking the Washington, D.C. Internet Voting System, Financial Cryptography 2012
- Halderman, Teague — The New South Wales iVote System: Security Failures and Verification Flaws in a Live Online Election (arXiv:1504.05646)
- Springall et al. — Security Analysis of the Estonian Internet Voting System, ACM CCS 2014
- Norwegian Ministry of Local Government and Modernisation — Internet voting trials (via Internet Archive)
- Bundesverfassungsgericht, Judgment of 3 March 2009, 2 BvC 3/07 and 2 BvC 4/07 (English translation)
- Adviescommissie inrichting verkiezingsproces (Commissie Korthals Altes), Stemmen met vertrouwen, 27 September 2007
- U.S. Court of Appeals for the First Circuit — Rideout v. Gardner, No. 15-2021 (Sept. 28, 2016)
- Australian Electoral Commission — A short history of voting and the secret ballot
- UK primary legislation — Ballot Act 1872