quinta-feira, 22 de agosto de 2024

As urnas Eletrônicas no Brasil é baseado em Linux



As urnas eletrônicas são dispositivos usados para realizar a votação de forma eletrônica, garantindo a apuração rápida  dos votos. Aqui está um resumo de como elas funcionam, o sistema operacional usado e os protocolos de segurança envolvidos:

1. Componentes da Urna Eletrônica
  • Hardware: A urna eletrônica tem uma unidade de processamento, uma tela para o eleitor, um teclado numérico para a digitação do voto, e uma impressora que gera o registro digital do voto.
  • Software: A urna executa um software responsável por receber, processar e armazenar os votos.
 2. Funcionamento Passo a Passo
  • Preparação: Antes da eleição, as urnas são configuradas com as informações dos candidatos e eleitores. Um teste de integridade é realizado para verificar se estão operando corretamente.
  • Identificação do Eleitor: No dia da votação, o eleitor se identifica perante o mesário, que confirma seus dados no sistema e libera a urna para o voto.
  • Votação: O eleitor digita o número do candidato desejado na urna. A tela exibe a foto e o nome do candidato, permitindo a confirmação do voto. O processo se repete para cada cargo em disputa.
  • Encerramento e Apuração: Após o fechamento da votação, um boletim de urna (BU) é gerado com o resultado local. Esse boletim é enviado para o Tribunal Superior Eleitoral (TSE) por meio de uma rede privada.
3. Sistema Operacional Utilizado
  • Sistema Operacional: As urnas eletrônicas no Brasil utilizam um sistema operacional próprio, baseado em Linux, desenvolvido pelo TSE. Este sistema é altamente controlado, projetado para rodar exclusivamente o software de votação e bloqueia qualquer software externo.
4. Protocolos de Segurança
  • Criptografia: Todos os dados gerados e armazenados pela urna são criptografados, garantindo que apenas o TSE possa ler e processar os resultados.
  • Assinatura Digital: O software da urna é assinado digitalmente. Qualquer alteração no código desativa a urna automaticamente.
  • Testes Públicos: Antes das eleições, especialistas são convidados a tentar identificar falhas no sistema em eventos de teste público, o que aumenta a transparência e segurança do sistema.
  • Rede Privada: A transmissão dos votos ocorre através de uma rede privada e segura, sem conexão direta com a internet, reduzindo o risco de ataques externos.
  • Auditoria e Registro Digital: Cada voto é registrado de forma digital, permitindo auditoria após o término da votação.
4. Montagem das Urnas

O processo de montagem, instalação do software e configuração das urnas eletrônicas é detalhado e altamente controlado. Abaixo está uma descrição do processo:
  • Fabricação: As urnas eletrônicas são fabricadas por empresas selecionadas por meio de licitação pública. A produção segue especificações técnicas definidas pelo Tribunal Superior Eleitoral (TSE).
  • Componentes: A urna é composta por diversos componentes de hardware, como a unidade de processamento, teclado numérico, tela, bateria e impressora. Esses componentes são montados e integrados nas fábricas antes de serem entregues ao TSE.
 5. Instalação do Software
  • Desenvolvimento do Software: O software das urnas eletrônicas é desenvolvido pelo TSE e seus técnicos. Ele é projetado para realizar exclusivamente as funções de votação, garantindo simplicidade e segurança.
  • Carregamento do Software: Após a fabricação, as urnas são enviadas para os Tribunais Regionais Eleitorais (TREs), onde o software é carregado. Este processo é realizado em um ambiente controlado e seguro.
  • Assinatura Digital: O software carregado nas urnas possui uma assinatura digital do TSE. Isso garante que qualquer modificação não autorizada no código seja detectada, impossibilitando o funcionamento da urna.
  • Configuração Inicial: Técnicos do TSE e dos TREs instalam o software e configuram as urnas para a eleição. Isso inclui o carregamento dos dados dos candidatos, eleitores e partidos.
6. Configuração das Urnas para a Eleição
  • Carga das Urnas: Durante a chamada “carga das urnas”, os dados de candidatos e eleitores são inseridos nas urnas. Este processo é monitorado, e o acesso ao ambiente é restrito e registrado.
  • Testes e Auditoria: Após a carga, são realizados testes de integridade e de funcionamento. As urnas são ligadas e testadas para garantir que estão operando corretamente.
  • Lacração: Uma vez testadas e aprovadas, as urnas são lacradas com selos físicos e digitais que garantem que não haverá nenhuma alteração até o dia da eleição. Estes lacres são monitorados por representantes de partidos, Ministério Público e outros órgãos.
  • Distribuição: As urnas lacradas são transportadas para os locais de votação, onde ficam sob a guarda das autoridades eleitorais locais até o dia da eleição.
7. Quem Realiza a Configuração e Manutenção
  • Técnicos dos TREs: A configuração e a instalação do software são feitas por técnicos dos Tribunais Regionais Eleitorais. Eles recebem treinamento específico e atuam sob supervisão rigorosa.
  • Auditoria Independente: Durante o processo, partidos políticos, a Ordem dos Advogados do Brasil (OAB) e outras entidades podem acompanhar a auditoria das urnas.
  • Suporte no Dia da Eleição: No dia da eleição, técnicos ficam de prontidão para resolver qualquer problema técnico que possa surgir.
 8. Segurança do Processo
  • Ambientes Seguros: Tanto a carga quanto a configuração das urnas são realizadas em ambientes controlados e monitorados por câmeras.
  • Transparência e Acompanhamento: Todo o processo é acompanhado por representantes da sociedade civil e partidos políticos, garantindo transparência.
Este conjunto de medidas assegura que as urnas eletrônicas estejam prontas para operar.

9. Empresas que fabicam as urnas

As urnas eletrônicas utilizadas no Brasil são produzidas por empresas que vencem licitações públicas organizadas pelo Tribunal Superior Eleitoral (TSE). Abaixo estão as principais empresas que têm atuado na fabricação e configuração das urnas eletrônicas nas últimas décadas:

Positivo Tecnologia S.A.
  • Descrição: Uma das maiores fabricantes de equipamentos de informática do Brasil, a Positivo Tecnologia tem sido uma fornecedora importante de urnas eletrônicas desde as eleições de 2020.
  • Atuação: A empresa venceu licitações para a produção de um grande número de urnas eletrônicas e tem sido responsável por parte do processo de montagem e testes de qualidade.

Smartmatic International Holding B.V.
  • Descrição: A Smartmatic é uma empresa multinacional que desenvolve soluções tecnológicas para eleições, sendo responsável pela fabricação de parte das urnas eletrônicas usadas no Brasil em eleições passadas.
  • Atuação: Atuou em parcerias para a fabricação de urnas e fornecimento de software em eleições anteriores, embora sua participação tenha sido reduzida nos últimos anos.

Diebold Nixdorf Brasil
  • Descrição: A Diebold, uma empresa americana, foi a principal fabricante de urnas eletrônicas no Brasil por muitos anos, até que a Positivo e a Smartmatic assumiram um papel maior. No entanto, a Diebold continuou a fornecer suporte técnico e manutenção para as urnas existentes.
  • Atuação: Fabricou as urnas desde o início do processo de informatização do sistema eleitoral brasileiro, tendo sido a fornecedora exclusiva durante muitos anos.
TSE
  • Responsabilidade do Software e Configuração: Embora a fabricação seja realizada por empresas privadas, a instalação do software de votação e a configuração das urnas são de responsabilidade exclusiva do TSE, com apoio dos Tribunais Regionais Eleitorais (TREs). O TSE desenvolve, testa e assina digitalmente o software que será instalado nas urnas.
10. software

O software das urnas eletrônicas brasileiras é desenvolvido em diversas linguagens de programação, escolhidas conforme as necessidades específicas de cada componente do sistema. Abaixo estão as principais linguagens utilizadas:

Linguagem C
  • Descrição: A linguagem C é a principal utilizada no desenvolvimento do software das urnas eletrônicas. Ela é escolhida por ser uma linguagem de baixo nível, que permite um controle detalhado sobre o hardware da urna, garantindo eficiência e alta performance.
  • Uso: A linguagem C é utilizada no núcleo do sistema operacional e no desenvolvimento de componentes críticos do software de votação.
Linguagem Assembly
  • Descrição: Assembly é uma linguagem de baixo nível usada para programar componentes que requerem interação direta com o hardware, como drivers e rotinas de inicialização.
  • Uso: Embora usada em menor escala, Assembly é empregada em partes do sistema onde o controle direto sobre o hardware é necessário, como na interface com dispositivos de entrada/saída.
Linguagem Java
  • Descrição: Java é utilizada para componentes específicos, como interfaces gráficas e outras funcionalidades do sistema que beneficiam-se de uma linguagem de mais alto nível.
  • Uso: É usada para algumas interfaces de interação com o usuário e para módulos que não exigem interação direta com o hardware.
Linguagem Python
  • Descrição: Python pode ser usada em scripts auxiliares e ferramentas de teste, especialmente em processos de auditoria e verificação.
  • Uso: Aplicada em scripts de automação e na criação de ferramentas de suporte para o desenvolvimento e teste do software da urna.
11. Sistema Operacional Linux

Como mencionado, o sistema operacional das urnas é baseado em uma versão customizada do Linux, que suporta as linguagens mencionadas acima. Este sistema é desenvolvido pelo TSE para garantir segurança e confiabilidade.

12.Segurança e Controle

Todo o desenvolvimento e o código-fonte são  controlados pelo Tribunal Superior Eleitoral (TSE). O código é auditado, testado e assinado digitalmente.

O desenvolvimento e a manutenção do software das urnas eletrônicas no Brasil são realizados por uma equipe de programadores e engenheiros contratados pelo Tribunal Superior Eleitoral (TSE). Não há um único programador responsável; em vez disso, o trabalho é dividido entre vários profissionais especializados em diferentes áreas.

13. Equipe e Estrutura
  • Equipe do TSE: O TSE conta com uma equipe técnica dedicada à criação e manutenção do software das urnas eletrônicas. Essa equipe é composta por especialistas em segurança da informação, engenharia de software, e administração de sistemas.
  • Colaboração com Empresas: Em algumas etapas, o TSE pode colaborar com empresas especializadas em tecnologia, como Positivo Tecnologia e Smartmatic, que fornecem suporte técnico e consultoria.
14. Segurança e Transparência
  • -Controle: Todo o código-fonte do software é controlado e auditado. O TSE realiza testes de integridade e segurança para assegurar que o software funcione corretamente e não tenha vulnerabilidades.
  • Auditagem Pública: Em eventos de auditoria e testes públicos, o código e o funcionamento do software podem ser avaliados por especialistas independentes e representantes da sociedade, aumentando a transparência e a confiança no sistema.
Portanto, a responsabilidade pelo software das urnas é coletiva e envolve uma equipe especializada dentro do TSE, além de possíveis colaborações com empresas externas.

As chaves de criptografia usadas nas urnas eletrônicas brasileiras são gerenciadas com rigor para garantir a segurança e integridade do sistema eleitoral. Aqui está um resumo de como as chaves são gerenciadas:

15. Chaves de Criptografia
  • Chaves Públicas e Privadas: O sistema utiliza um esquema de criptografia assimétrica, que envolve pares de chaves públicas e privadas. As chaves públicas são usadas para criptografar dados, enquanto as chaves privadas são usadas para descriptografar.
Gerenciamento das Chaves

  • Tribunal Superior Eleitoral (TSE): O TSE é o principal responsável pelo gerenciamento das chaves criptográficas. As chaves privadas são geradas e armazenadas em ambientes altamente seguros e controlados pelo TSE. O TSE é responsável pela proteção e pelo uso dessas chaves durante todo o processo eleitoral.
  • Segurança Física e Digital: As chaves privadas são mantidas em dispositivos de segurança especializados, como módulos de segurança de hardware (HSMs), que oferecem proteção física e digital contra acesso não autorizado.
  • Procedimentos de Acesso: O acesso às chaves privadas é restrito e controlado por procedimentos rigorosos, incluindo autenticação multifatorial e auditorias regulares. Apenas pessoal autorizado e treinado tem acesso a essas chaves.
16. Auditoria e Transparência
  • Testes Públicos: Em eventos de auditoria pública, a segurança do sistema, incluindo o gerenciamento das chaves criptográficas, é avaliada por especialistas independentes e representantes de partidos políticos. Isso ajuda a garantir a transparência e a confiança no sistema de votação.
  • Procedimentos de Recuperação: Existem procedimentos detalhados para a recuperação e substituição de chaves criptográficas em caso de comprometimento, com a participação de auditores independentes para garantir a integridade do processo.
17. Uso das Chaves
  • Criptografia de Dados: As chaves são usadas para criptografar dados sensíveis, como votos e informações pessoais dos eleitores, garantindo que esses dados não possam ser acessados ou modificados por partes não autorizadas.
  • Assinaturas Digitais: As chaves também são usadas para gerar assinaturas digitais que garantem a autenticidade e a integridade dos dados.
Portanto, o controle e gerenciamento das chaves criptográficas são responsabilidade exclusiva do TSE.

A segurança das chaves criptográficas utilizadas nas urnas eletrônicas é projetada para ser extremamente robusta, visando minimizar a possibilidade de acesso não autorizado, seja interno ou externo. Aqui estão as medidas de segurança que ajudam a prevenir a invasão e o acesso não autorizado às chaves:

18. Segurança contra invasão 

Segurança Física
  • Armazenamento Seguro: As chaves privadas são armazenadas em dispositivos especializados chamados módulos de segurança de hardware (HSMs). Esses dispositivos são projetados para resistir a ataques físicos e manter as chaves criptográficas seguras.
  • Ambientes Controlados: Os HSMs e outros equipamentos críticos estão localizados em ambientes controlados e seguros, com acesso restrito apenas a pessoal autorizado. Esses ambientes são monitorados constantemente para prevenir acesso não autorizado.
Segurança Digital
  • Criptografia Avançada: O sistema usa criptografia avançada e protocolos de segurança para proteger as chaves criptográficas durante o armazenamento e a transmissão. A criptografia forte dificulta a quebra das chaves, mesmo que um invasor consiga obter uma cópia dos dados.
Segurança do Software 

O software das urnas eletrônicas é desenvolvido e mantido pelo Tribunal Superior Eleitoral (TSE), e é protegido por assinaturas digitais e técnicas de verificação de integridade. Qualquer tentativa de alteração no software é detectada, e a urna se torna inutilizável.

Segurança Operacional
  • Controle de Acesso: O acesso às chaves criptográficas é controlado por múltiplos níveis de segurança, incluindo autenticação multifatorial. Apenas pessoal altamente treinado e autorizado tem acesso às chaves.
Procedimentos de Segurança: 

Existem procedimentos rigorosos para a manipulação e o gerenciamento das chaves, incluindo auditorias regulares e testes de segurança para identificar e corrigir vulnerabilidades.

Segurança Contra Acesso Interno e Externo
  • Monitoramento e Auditoria: O TSE realiza auditorias internas e permite auditorias externas para verificar a integridade dos sistemas e dos processos. Essas auditorias ajudam a identificar e corrigir qualquer tentativa de violação.
Segurança de Rede

As urnas eletrônicas não estão conectadas diretamente à internet, o que reduz significativamente o risco de ataques externos. A comunicação entre as urnas e o TSE é realizada por meio de redes seguras e protegidas.

Resiliência e Resposta a Incidentes
  • Planos de Recuperação: O TSE tem planos de contingência para lidar com incidentes de segurança, incluindo a recuperação e substituição de chaves criptográficas comprometidas.
  • Testes e Simulações: O sistema é sujeito a testes de segurança e simulações de ataques para garantir que as medidas de proteção sejam eficazes.
Embora nenhuma medida de segurança possa garantir 100% de proteção contra todos os possíveis ataques, o sistema de urnas eletrônicas brasileiro adota uma abordagem abrangente para mitigar riscos e proteger as chaves criptográficas. 

Embora o sistema seja projetado para ser seguro e transparente, é importante reconhecer que a segurança de qualquer sistema depende da integridade e da ética das pessoas envolvidas. No entanto, as múltiplas camadas de segurança, controle e supervisão estabelecidas pelo TSE e pelos órgãos eleitorais visam minimizar significativamente o risco de manipulação, mesmo por autoridades de alto nível. O sistema é projetado para detectar e prevenir qualquer tentativa de burla, garantindo a confiança na integridade do processo eleitoral.

19. Recolhimento das Urnas
  • Transporte: No final do período de votação, as urnas eletrônicas são coletadas pelos responsáveis de cada seção eleitoral e transportadas para locais designados de forma segura. O transporte é realizado por equipes treinadas e geralmente acompanhadas por autoridades eleitorais e fiscais.
  • Acompanhamento e Segurança: O transporte das urnas é monitorado por representantes dos partidos políticos, Ministério Público e outros órgãos de fiscalização. A segurança é garantida para prevenir qualquer tentativa de violação ou interferência.
  • Lacração e Selagem: As urnas são lacradas com selos físicos e digitais antes do transporte. Esses selos são monitorados e verificados para assegurar que as urnas não tenham sido acessadas indevidamente durante o transporte.
20. Transmissão dos Dados
  • Cartões de Memória: As urnas eletrônicas armazenam os votos em cartões de memória. No final da votação, os cartões são retirados das urnas e transportados para os locais de apuração.
  • Apuração Centralizada: No local de apuração, os cartões de memória são inseridos em computadores especializados que realizam a contagem dos votos. Esses computadores são configurados para garantir a segurança e a integridade dos dados durante o processo de apuração.
  • Transmissão dos Dados: Além da coleta física dos cartões de memória, as urnas podem transmitir resultados preliminares através de uma rede segura. Esta transmissão é feita por meio de uma rede privada e protegida, sem conexão direta com a internet, para evitar ataques externos.
21. Segurança e Integridade
  • Criptografia e Assinatura Digital: Todos os dados de votos são criptografados e assinados digitalmente, garantindo que não possam ser acessados ou alterados sem a devida autorização. Qualquer tentativa de adulteração é detectada imediatamente.
  • Auditorias e Testes: O processo de apuração é sujeito a auditorias e testes públicos. Representantes dos partidos políticos e entidades de fiscalização podem acompanhar e verificar a integridade do processo.
  • Backup e Recuperação: O TSE realiza backups regulares dos dados e tem procedimentos para recuperação em caso de falhas. Isso assegura que os dados de votos não sejam perdidos ou comprometidos.
Durante o processo de backup das urnas eletrônicas, diversas falhas podem ocorrer, mas o sistema está projetado para minimizar e lidar com esses problemas de forma eficaz. Aqui estão alguns tipos de falhas que podem acontecer durante o backup e como são trata

22. Falhas de Hardware
  • Falhas de Disco: Se o dispositivo de armazenamento usado para o backup (como um disco rígido ou SSD) falhar, pode ocorrer perda de dados.
  • Mitigação: O sistema realiza backups em múltiplos dispositivos e locais, e utiliza tecnologias de redundância para garantir que dados não sejam perdidos.
  • Falhas de Conexão: Problemas de conexão entre a urna e o dispositivo de backup podem interromper o processo de backup.
  • Mitigação: Verificações e validações contínuas garantem que qualquer problema de conexão seja detectado e corrigido antes que o backup seja considerado concluído.
23. Falhas de Software
  • Erro de Software: O software de backup pode apresentar falhas ou bugs que impedem a criação ou restauração adequada dos backups.
  • Mitigação: O software é testado e auditado rigorosamente antes do uso. Existem procedimentos para corrigir falhas e restaurar backups a partir de cópias anteriores.
  • Problemas de Integração: Falhas na integração entre o software de backup e o sistema da urna podem afetar a eficácia do backup.
  • Mitigação: A integração é cuidadosamente planejada e testada para garantir a compatibilidade e a funcionalidade adequadas.
24. Erros Humanos
  • Erros de Procedimento: Erros cometidos durante o processo de backup, como falha na execução de comandos ou na configuração de opções de backup.
  • Mitigação: Procedimentos operacionais padrão são seguidos rigorosamente e supervisionados para garantir a correta execução do backup.
  • Falta de Verificação: A falta de verificação dos backups pode levar a problemas não detectados até que seja necessário restaurar os dados.
  • Mitigação: Os backups são verificados regularmente para garantir que sejam completos e restauráveis.
25. Problemas de Segurança
  • Comprometimento dos Dados: Se os dados de backup forem comprometidos, isso pode levar à perda ou adulteração dos dados.
  • Mitigação: Os backups são criptografados para proteger a integridade e a confidencialidade dos dados. O acesso aos backups é restrito e controlado.
26. Falhas de Comunicação
  • Problemas na Transmissão de Dados: Se os dados forem transmitidos para o local de backup por meio de uma rede e houver problemas na comunicação, isso pode resultar em falhas de backup.
  • Mitigação: A transmissão de dados é realizada em redes seguras e privadas, com verificação de integridade e procedimentos de recuperação para lidar com falhas de comunicação.
27. Procedimentos de Recuperação
  • Planos de Contingência: O TSE possui planos detalhados para lidar com falhas de backup, incluindo a recuperação de dados a partir de backups alternativos e a restauração de informações a partir de outras fontes.
  • Testes Regulares: Testes de recuperação são realizados regularmente para garantir que os backups possam ser restaurados com sucesso em caso de necessidade.
Embora várias falhas possam ocorrer durante o processo de backup, o sistema de urnas eletrônicas brasileiro é projetado para lidar com essas situações por meio de redundância, criptografia, verificações rigorosas e procedimentos operacionais. Essas medidas ajudam a garantir a integridade e a disponibilidade dos dados críticos, mesmo em caso de problemas.