Auditoria simultânea durante votação eletrônica

No processo de criação de sistemas de votação eletrônica, é necessário usar a auditoria paralela. Este é um análogo dos observadores em eleições comuns.


Existem várias maneiras de organizar uma auditoria paralela:


  1. usando criptografia
  2. usando confirmação de papel
  3. usando controle de áudio
  4. ou até tecnologia de gravação dupla (em mídia e papel eletrônicos).

A professora Rebecca Mercury, criadora do conceito de VVPAT (Auditoria em cédulas de papel certificadas pelos eleitores), justifica a eficácia da impressão de uma cédula de papel para posterior confirmação pelo eleitor antes da contagem final (posteriormente, esse método foi chamado de "Método de Mercúrio"). Para ser finalmente confirmado, o voto deve ser confirmado pelo eleitor sem o uso de meios visuais ou de áudio. Por exemplo, se um eleitor usa um scanner de código de barras para confirmar sua escolha, essa voz não pode ser considerada confirmada, pois, na verdade, não é o eleitor que a confirma, mas um dispositivo eletrônico.


Os sistemas de votação de passagem dão aos eleitores recibos assinados que podem ser levados para casa. Essas receitas não permitem que você descubra exatamente como o eleitor votou, mas permite que você verifique se a votação foi contada, para descobrir o número total de votos e os resultados da votação.


Nos sistemas de votação eletrônica, esse pode ser um determinado GUID, informando qual, na conta pessoal, o eleitor pode verificar para quem seu voto foi lançado. Ou uma chave privada gerada, possivelmente uma única, com a ajuda da qual o eleitor pode descriptografar apenas a voz de uma coruja.


Os sistemas de auditoria também podem ser usados ​​para detectar problemas e fraudes no equipamento. No caso de uso do sistema VVPAT, a cédula é o documento principal e os votos eletrônicos são usados ​​apenas para cálculos preliminares. Para uma auditoria bem-sucedida de um dispositivo de votação, é necessária toda uma sequência de eventos, que é desenvolvida, descrita e é sua implementação que é monitorada por observadores internacionais (embora não apenas isso).


Nas eleições atuais, uma auditoria paralela foi realizada imprimindo dados da fila no servidor antes de gravar no blockchain, ou seja, foi iniciada por uma autoridade centralizada e o usuário não teve a oportunidade de verificar se seu voto foi contado, a capacidade de visualizar o resultado de sua votação e controle se sua voz foi levada em consideração corretamente, os eleitores não confirmaram seu voto sem o uso de meios eletrônicos.


Nosso esquema restaurado se parece com isso (comentários, sugestões são bem-vindas):


imagem


  1. interface do usuário e formulários de boletim
  2. anonymizer (localizado no lado DIT) no código no github estava ausente
  3. gerador de boletim informativo
  4. transferência de dados para auditoria paralela (a transferência é do servidor DIT, antes que os dados entrem na ogiva):
    4.1.monitores instalados nos PECs
    4.2 Imprimir dados em uma fita (impressa) - quem votou
  5. gravação de dados na ogiva
    5.1 segunda fita impressa é criptografada impressa durante a votação

Assim, podemos dizer que a auditoria de ponta a ponta não foi realmente realizada. Além disso, o uso de impressoras para duplicar dados descriptografados da fila no servidor DIT deixa a possibilidade de os administradores de sistemas do EG comparar o resultado da votação e o eleitor.


Uma explicação deve ser feita aqui: o DIT alega que houve um atraso no servidor, que foi projetado para reduzir ao mínimo ou eliminar completamente a possibilidade de corresponder os dados do eleitor (perfil no portal mos.ru) e o resultado do seu voto. No entanto, no decorrer do estudo, consideramos que esse atraso não era grande o suficiente e deixa, embora uma probabilidade baixa e tangível de comparar dados antes de gravar no blockchain.


A entropia depende do tempo com precisão de um segundo e das coordenadas de um clique do mouse.


userEntropy = Math.floor( (e.clientX + e.clientY) * (Math.floor(new Date() / 1000)) ); 

As coordenadas de clique estão sempre em algum lugar na área do botão correspondente. Mesmo levando em consideração que a página pode ser desaparafusada para cima e para baixo e o botão muda verticalmente, ainda é uma zona de, digamos, 1000x200 pixels. É fácil determinar o tempo exato até o segundo, como sabemos quando uma pessoa votou. O registro das ações do usuário e o envio de votos não foram cancelados. Assim, pode ser reduzido a várias centenas de valores possíveis.


Mesmo se, por exemplo, não soubermos o tempo de votação do usuário i, a votação inteira durará 12 * 3600 = 433200 segundos. Total total de 1000x200x43200 ~ 8,5 bilhões. Em um laptop simples, você pode classificar os valores prováveis ​​para cada usuário em algumas dezenas de minutos.
Mudamos o laptop para o servidor e a gpu e obtemos uma mágica que reduz a entropia para 0.


Portanto, podemos argumentar que os administradores do portal DEG, se estiverem interessados, poderiam facilmente comparar os dados do eleitor com o resultado do seu voto.


Oksana. Coordenador do grupo técnico.

Source: https://habr.com/ru/post/pt481524/


All Articles