Código-fonte da urna eletrônica: entenda o que é o sistema que garante a segurança do processo eleitoral no Brasil
Conjunto de comandos escritos em linguagem de programação pode ser verificado pela população antes das eleições
Postado em 23/04/2024
A urna eletrônica, máquina utilizada no processo eleitoral brasileiro desde 1996, conta com uma série de configurações e sistemas para seu funcionamento. Um desses sistemas é o código-fonte, que é responsável por ditar o funcionamento dos demais sistemas eleitorais contidos da urna. Esse código em linguagem de programação é essencial para a segurança das eleições e pode ser verificado pela população.
Códigos-fonte podem ser definidos como uma “série de algoritmos (instruções ordenadas e finitas que resolvem problemas) escritos em uma linguagem de programação para serem disponibilizados e interpretados pelos sistemas computacionais”, explica a professora de Ciência da Computação Patrícia Mocariello. Diversos dispositivos, como celulares, computadores e tablets dispõe de um código-fonte que comanda o funcionamento dos sistemas ali presentes.
Urnas eletrônicas também possuem seus próprios códigos-fonte. Eles são escritos na linguagem de programação C++, que é uma linguagem “moderna e bastante comum no desenvolvimento de software para computadores pessoais e sistemas embarcados”, afirma o Tribunal Superior Eleitoral (TSE), órgão este responsável por todas as etapas do processo eleitoral, inclusive pelas tecnologias e sistemas da urna. Semelhante ao que acontece em outros programas de computador, o código-fonte da urna possui instruções para controle do equipamento, garantindo, assim, mais segurança para o processo eleitoral.
Para a professora Patrícia, apesar da semelhança com outros sistemas, o código-fonte da urna eletrônica se difere dos demais em 3 pontos principais. São eles:
- Segurança: O código-fonte da urna eletrônica é tratado como altamente sensível, pois qualquer vulnerabilidade nele pode comprometer a integridade e a confidencialidade do processo eleitoral. Por isso, o acesso a ele é restrito e controlado;
- Requisitos de transparência: Embora o código-fonte precise ser seguro, também deve ser auditável e transparente para que terceiros possam revisar e verificar sua integridade e a ausência de falhas ou intenções maliciosas;
- Compliance com legislação e normativas específicas: O código-fonte da urna eletrônica deve seguir estritamente normas, regulamentos e leis específicos de cada país para garantir a segurança, a confiabilidade e a precisão do processo eleitoral.
Segurança de dados
O código-fonte da urna eletrônica também é fundamental para a segurança do processo eleitoral. Isso porque, ao ler a linguagem de programação, o código obedece a comandos previamente estabelecidos e testados para que não permita falhas.
De acordo com o TSE, dentro desse código-fonte, existe também um conjunto de barreiras de segurança para que apenas códigos autênticos da Justiça Eleitoral sejam executados. “Isso impossibilita que seja gerada, por um programador, uma outra versão do sistema”, acrescenta o Tribunal.
Testagem e verificação do código-fonte da urna
O TSE, antes de cada eleição, promove a abertura do código-fonte da urna eletrônica para verificação pela sociedade. São dois momentos de fiscalização: no Teste Público de Segurança da Urna (TPS), que acontece em datas específicas e é aberto para a sociedade civil, e na Verificação do código-fonte, onde apenas entidades fiscalizadoras são autorizadas a participar a qualquer momento até as vésperas da eleição.
Permitir essa verificação é fundamental para a transparência e efetividade das eleições. “Com a análise do código-fonte, as investigadoras e os investigadores buscam entender como o software da urna funciona, sobretudo, quanto ao modo como os votos são gravados e apurados. Além disso, busca-se também a compreensão dos mecanismos de segurança existentes, com vistas a identificar um possível ponto de falha ou que elemento que possa ser explorado durante o evento”, conclui o TSE.
Aos interessados em participar do TPS ou da Verificação, a professora Patrícia dá as seguintes dicas de pontos que devem ser observados pelos programadores:
- Integridade dos dados: Verificar que os votos e demais dados são mantidos íntegros e não podem ser alterados ou manipulados;
- Confidencialidade: Garantir que os dados dos eleitores e seus votos sejam protegidos de qualquer vazamento ou acesso não autorizado;
- Autenticidade: A checagem de que cada voto é registrado por um eleitor legítimo e que o processo de votação não pode ser manipulado.