Olha só que legal, eu recebi uma resposta para o relatório de auditoria independente que eu protocolei na ouvidoria do TSE. Para quem não faz ideia do que eu estou falando, há alguns dias eu fiz um relatório analisando os Boletins de Urna do primeiro turno das eleições e esse relatório eu enviei para a ouvidoria do TSE, e também fiz o vídeo, que deu bastantes views, falando sobre essa analise dos BUs. Se você não leu o post onde eu explico o processo para a realização dessa auditoria, eu vou deixar ele linkado aqui:

Primeiro eu queria muito agradecer à equipe do TSE por ter lido meu relatório, feito uma análise e enviado uma resposta para todos os pontos que eu coloquei no relatório, muito bacana o trabalho de vocês. Eu vou deixar o email de resposta linkado na integra no final do post, e vou comentar alguns trechos aqui:

“Inicialmente cumprimenta-se o requerente pela iniciativa e pelo trabalho realizado. Ficou demonstrado que houve substancial esforço na compreensão dos arquivos, desenvolvimento de soluções, coleta e análise de dados, motivo pelo qual faz-se necessário reconhecer a benéfica contribuição para o fortalecimento da credibilidade do processo  eleitoral brasileiro, embora haja algumas inconsistências no relatório, muito provavelmente motivadas pelo conhecimento incompleto do relator. Seguem as considerações específicas sobre itens observados.

“Quanto à amostra:

“O relatório indica que foram analisadas 470.992 urnas no primeiro turno das eleições. Porém, o total de seções neste pleito foi de 472.075, uma diferença de 1.083 seções. Segundo o próprio autor, essa diferença pode ter ocorrido em razão das ferramentas não terem capturado a integralidade dos dados, o que não prejudica a conclusão dos trabalhos, mas explica algumas diferenças numéricas apontadas ao final do documento.”

Concordo 100%, inclusive essa foi a minha conclusão lá do relatório. Eu expliquei que, pela quantidade de urnas, eu acredito que a gente não tenha pegado todas as seções, mas pegou a maioria delas, suficiente para gerar um relatório consistente, e o TSE está confirmando essa informação.

“Quanto aos eleitores que votaram em trânsito:

“O relatório é assertivo quando diz que a diferença entre o comparecimento apresentado no cabeçalho da consulta de BU e o comparecimento por cargo se trata de eleitores votando em trânsito. Contudo, é necessário fazer alguns esclarecimentos. Pode votar em trânsito quem está fora do seu domicílio eleitoral no dia da eleição e solicitou à Justiça Eleitoral dentro do prazo determinado. Sendo assim, o eleitor pode votar em trânsito em outra Unidade da Federação, ou dentro da sua própria UF. No primeiro caso, o eleitor vota apenas para o cargo de Presidente da República. O segundo caso se aplica quando o eleitor se deslocará para outro município, mas permanecerá dentro do seu Estado de origem. Nessa situação, o eleitor vota para todos os cargos de Presidente, Governador, Senador e Deputados. Essa informação dos eleitores votantes em trânsito de dentro e de fora da UF não consta dos BUs, motivo pelo qual possivelmente o requerente não demonstrou no relatório. Sendo assim, nas páginas de 8 a 10, são calculadas, a partir da amostra obtida, as diferenças entre o comparecimento para o cargo de Presidente e para os demais, inferindo-se que essa diferença se trata de votantes em trânsito. Porém é mais preciso dizer que a diferença se dá em razão dos votantes em trânsito oriundos de outras UFs, conforme já explanado.”

Então, o que eles estão falando aqui, é que existem duas situações para voto em trânsito e meu relatório previu um tipo apenas, que é quando a pessoa está votando em trânsito em outro estado. No relatório existe uma diferença nos números entre o número de votos para Senador, Deputados e Governador, e os para Presidente. Essa diferença a gente considerou votos em transito em geral, e aqui ele está especificando que esses votos são só de quem votou em trânsito em outro estado, mas faltou quem estava votando em trânsito dentro do próprio estado, por exemplo, se eu sou de Vila Velha e solicitei votar na Serra, que são cidades dentro do mesmo estado, isso também é voto em trânsito, mas o meu relatório não consegue pegar isso, porque não está em nenhum local dos BUs, então não tem como saber qual, de fato, é a quantidade total dos votos em trânsito.

Próximo ponto: Quem leu o meu relatório sabe que a gente tinha encontrado uma inconsistência no número de Serial FC de algumas urnas, e ele vai falar sobre esse tema aqui:

“Quanto ao número de Séria da FC:

“O campo “numeroSerieFC” diz respeito ao identificador gerado para a mídia de carga. Trata-se de valor aleatório criado para identificar a geração de uma mídia de carga utilizada na preparação de múltiplas urnas. Por isso, é esperado que vários BUs façam referência ao mesmo “numeroSerieFC”. As mídias de resultado não recebem qualquer tipo de identificador, pois são apenas mídias formatadas para a gravação dos resultados finais. As mídias de votação, utilizadas como área de backup pelas urnas, também possuem seriais de identificação, mas o seu valor não é expresso no boletim de urna. No relatório, página 11, consta que foi verificada inconsistência no número de séria da FC em 10.013 BUs. Contudo, é importante destacar que não havia nenhum erro no dado do boletim de urna, tratava-se apenas de uma formatação ilegível na página em razão do charset utilizado na decodificação, conforme conclui o próprio relatório na página seguinte.”

Essa inconsistência aconteceu quando a gente foi pegar os boletins do site do TSE, e o que eles estão falando aqui é que realmente tinha um problema na codificação, que chamaram aqui de “charset utilizado na decodificação”. Então existia de fato um erro na hora de ler os Boletins de Urna, esse número estava vindo quebrado em alguns casos, erro que foi corrigido no dia 11, se não me engano, e a gente consegue ter a confirmação, que não é um problema sério, mas que estava acontecendo no site do TSE. Como os dados que a gente utilizou vieram do site do TSE, esse erro foi detectado na auditoria, e está aqui confirmada a correção pela equipe do TSE.

Continuando, no meu relatório eu fiz uma consideração técnica de que não é qualquer pessoa que consegue auditar, em termos gerais foi isso que eu falei, que não é um processo fácil. E aqui eles respondem o seguinte:

“Quanto às considerações técnicas:

“Os obstáculos técnicos que foram enfrentados durante a presente auditoria têm mais relação com a dimensão continental do Brasil e do seu eleitorado do que com formato de arquivos ou os meios de acesso. É preciso compreender que a totalização dos votos de 471.829 seções eleitorais não é tarefa trivial e, naturalmente, esses dados irão demandar um volume muito grande armazenamento e processamento. Afirmar que auditar a totalização está ao alcance apenas de “técnicos altamente capacitados” é ignorar a extrema dificuldade que qualquer pessoa teria para, por exemplo, coletar e auditar resultados em papel espalhados pelos milhares de cartórios eleitorais de todo o país. Em qualquer cenário, com ou sem voto eletrônico, uma auditoria desse porte requer pessoal com conhecimento especializado e recursos tecnológicos e financeiros.”

Eu não entendi para que reafirmar que auditar a totalidade está ao alcance apenas de técnicos altamente capacitados, porque é exatamente a conclusão que eles chegaram também. Aqui no final eles colocam “requer pessoal com conhecimento especializado e recursos tecnológicos e financeiros”, que foi exatamente o que eu falei, precisa de pessoas qualificadas para fazer a auditoria. E concordo plenamente que é pelo volume de informação, são muitas seções, muitos votos, precisa de um computador bom para poder processar isso, e precisa ter tempo para poder fazer, então, é exatamente o que eu falei, mas com outras palavras.

“Quanto às conclusões:

“O software da urna mantém o registro fiel da digitação feita pelo eleitor na urna. Esses dados são mantidos nos arquivos de registro digital do voto (RDV). O software da urna também mantém um registro cronológico de eventos (arquivo de log em formato texto). Ambos os arquivos foram projetados para fornecer trilhas de auditoria, ao mesmo tempo em que preservam o sigilo da votação. Esses arquivos podem ser obtidos no endereço https://dadosabertos.tse.jus.br/dataset/resultados-2022-arquivos-transmitidos-para-totalizacao. Ademais, o software da urna pode ser exaustivamente auditado, tanto o seu código-fonte quanto o seu processo de compilação e assinatura digital. E essa auditoria foi efetivamente realizada, tanto nas dependências do TSE quanto nos laboratórios de três universidades públicas brasileiras – USP, Unicamp e UFPE. Portanto, a urna foi projetada para ser completamente auditada, produz e trilhas de auditoria e foi efetivamente verificada nestas eleições.”

Vamos para esse último ponto: Fazer auditoria de código-fonte, processo de compilação e assinatura digital, a gente está falando que essa auditoria foi até um certo ponto, até gerar o executável do software que vai pra urna. Porém, quem conhece um pouco de segurança da informação, sabe que é possível injetar DLLs e códigos de script posteriormente à compilação, que é o processo que a agente chama de injection. Então simplesmente fazer uma auditoria, no meu ponto de vista, da compilação e da assinatura digital do software, não garante 100% da integridade do processo como um todo, porque ainda existe a possibilidade de fazer um injection no código compilado posteriormente, e isso poderia influenciar diretamente na geração dos BUs. Até mesmo quem gosta de games sabe que existem sistemas que fazem manipulação de memória, por exemplo, os dados são previamente armazenados em memória antes serem enviados efetivamente para a mídia que vai fazer o backup dessas informações. Então, por exemplo, nos jogos a gente tem os famosos os sistemas de cheat, que conseguem mudar a alocação de memória em tempo de execução. Esse mesmo processo de alteração de dados de memória também poderia ser feito, então é uma auditoria que, para mim, atende até uma parte importante, auditar o código-fonte, mas existem outros mecanismos que podem ser utilizados por fora. Por isso que eu não tenho 100% de confiança para bater o martelo e afirmar que está tudo correto, porque existem outras formas de poder manipular dados em memória e incluir injections dentro de arquivos compilados posterior a essa auditoria e à assinatura digital. Obviamente, como eu sempre tento deixar claro, não seria um processo fácil, demandaria ter pessoas dentro da organização para poder fazer essa manipulação com conhecimento da estrutura de alocação. A gente poderia entrar a fundo em vários pontos, dependendo de qual linguagem de programação que está sendo utilizada para fazer esse software, se a alocação da memória é sequencial, enfim, uma série de questões, mas não é um processo fácil, demandaria ter pessoas dentro, entendo o processo, para poder fazer esse tipo de mudança. Em todo caso, eu ainda vou manter o posicionamento de que eu, André, não tenho como confirmar 100% da integridade, porque eu não fiz a auditoria da votação em si, de todo o processo, eu só fiz a auditoria dos BUs, que são gerados pelo sistema depois que ele já está em produção. Eu ainda acho que teria várias formas de monitorar isso com um processo mais assertivo, por exemplo, vendo a integridade do sistema em tempo real, não sei se já existe isso. Mas o meu ponto de vista é que deveria existir outro sistema fazendo um backup desses logs, um sistema open-source, feito por outro dispositivo que não seja a urna, para a gente conseguir bater os dados. O fato de ter só um log, só um BU, me incomoda um pouco, porque a gente não consegue cruzar as informações, então a gente não consegue afirmar que o resultado está 100% correto. Acaba que a gente só fazer a análise em um único arquivo de log, então isso, pra mim, é um pouco prejudicial ao processo de uma forma geral.

Mas, de novo, quero agradecer à equipe do TSE, muito obrigado pela resposta, por ter lido o meu relatório e pelo elogio que vocês mandaram aqui no começo, que eu achei muito bacana, “cumprimenta-se o requerente pela iniciativa e pelo trabalho realizado. Ficou demonstrado que houve substancial esforço na compreensão dos arquivos, desenvolvimento de soluções, coleta e análise de dados, motivo pelo qual faz-se necessário reconhecer a benéfica contribuição para o fortalecimento da credibilidade do processo eleitoral brasileiro,…” Muito obrigado!

Se você estiver gostando do conteúdo, compartilhe com seus amigos, e me siga também no Twitter https://www.twitter.com/Andrehrferreira. Eu vou ficando por aqui, valeu!

O texto resposta original do TSE na integra está disponível em: https://drive.google.com/file/d/1e_LQJ9EfQd5LAGQ9ec6Si4RpyQ4vENm8/view

Este post é baseado no conteúdo do vídeo “TSE respondeu meu relatório de auditoria”: