Pós-Graduação em Ciência da Computação “Análise de segurança em Sistema Eletrônico de Votação Baseado em Mixnet” Por Anísio André Santos Júnior Dissertação de Mestrado Universidade Federal de Pernambuco [email protected]www.cin.ufpe.br/~posgraduacao RECIFE, AGOSTO/2010
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Santos Júnior, Anísio André Análise de segurança em sistema eletrônico de votação
baseado em mixnet / Anísio André Santos Júnior - Recife: O
Autor, 2010. 100 folhas : il., fig. Dissertação (mestrado) Universidade Federal de Pernambuco. CIn. Ciência da computação, 2010. Inclui bibliografia e apêndice. 1. Ciência da computação. 2. Teoria da computação. I. Título. 004 CDD (22. ed.) MEI2010 – 0183
Aos meus pais,
Aos meus irmãos,
Ao meu avô Edil P. Damásio (in memoriam).
AGRADECIMENTOS
A Deus por sempre me abençoar na realização dos meus sonhos.
A minha família pela confiança, apoio e amor incondicional me proporcionando tantos
momentos felizes, tornando assim o meu caminhar mais leve e suave.
A minha namorada Patrícia Souza pela compreensão diante de minha ausência, dedicação e
apoio.
Aos meus queridos tios Luís Carlos, Augusto Muniz, Delma Boaventura e Raelma Menezes
pelos incansáveis conselhos e apoio durante o mestrado.
A meu irmão Marcelino pelo incentivo na realização do mestrado.
Ao meu orientador professor Dr. Ruy José G. B. de Queiroz, por aceitar a orientação desta
dissertação, e conduzir meu desenvolvimento com sapiência, paciência e dedicação.
Aos Drs. Kleber Tunes e Marcos Benício P. Batista pela confiança e apoio durante os meus
estudos.
A Dra. Rosa Maria Silva dos Santos pelas fortes e sabias palavras de estimulo e confiança.
Aos meus amigos, Wagner Pimentel, Ângela Rita, Adroaldo, Rosy, Rosa e Yuri pelas
importantes contribuições dadas no decorrer desses dois anos e meio.
Aos professores da graduação, pelos conselhos e incentivos em especial a Fabrício Faro,
Bowen (2007) exigiu uma revisão geral de todas as DREs com certificação para o uso no
Estado. Quatro equipes foram constituídas e no curso de dois meses, analisaram três dos
quatro sistemas, produzindo um relatório. Nestes sistemas foram encontradas
vulnerabilidades, tornando-os inseguros nas eleições públicas. Em contrapartida, o estado da
Califórnia cancelou as certificações dos quatro sistemas. O relatório aponta dois fatores que
possibilitam a inadequação do uso dos DREs no processo de votação.
1) As DREs não conseguiram funcionar de maneira adequada durante as eleições.
2) As DRE's não podem ser verificadas de forma independente para a operação adequada. Um
software malicioso poderia ser inserido sem deixar vestígios, alterando assim o resultado da
eleição.
Para atenuar esses dois fatores, uma análise minuciosa das DREs deve ser feita, priorizando a
confiabilidade, a segurança e a introdução de novos sistemas de votação com medidas
criptográficas.
3.3.1 Registro do eleitor independente verificável e voto impresso conferível pelo eleitor
32
Alguns dos relatórios mencionam a possibilidade da materialização dos votos para atenuar ou
até mesmo, se possível, resolver muitos dos problemas inerentes aos DREs. Mercuri (2000)
propôs a adição do Voter Verifiable Paper Audit Trails (VVPAT) para os DREs, no qual um
pedaço de papel é impresso na cabine de votação, na presença do eleitor. Ele verifica se o
registro está correto com a sua escolha e então deposita em uma urna lacrada e sem
transparência para uma eventual necessidade de recontagem manual como objetivo de
fiscalizar o registro. Observa-se que a integridade da recontagem depende da segurança na
prevenção desde o momento em IVVR deixa as mãos dos eleitores até chegar nas mãos das
autoridades competentes no processo de recontagem.
De acordo com as “Voluntary Voting System Guidelines” (VVSG) nomeadas e apontadas,
como uma consequência da Help America Vote Act (HAVA), os Independent Voter
Verifiable Records (IVVRs) são generalizações do VVPATs (ELECTION ASSISTENCE
COMMISSION – EAC, s.d). O registro pode não ser necessariamente feito de papel ou pode
ser marcado pelo eleitor com uma digitalização óptica do voto, e em seguida ser lido pela
urna. Os sistemas com IVVR são classificados pelo VVSG (2007) como sendo independentes
de software, os erros no software do sistema de votação podem ser determinados através da
auditoria.
3.4 Sistema eletrônico de votação baseada em criptografia
Dentre as várias técnicas de criptografia utilizadas na votação eletrônica para garantir a
integridade, privacidade do sistema e lisura no processo eleitoral, o uso dos contadores
homomórficos, as assinaturas cegas e a mixnet apresentam maior credibilidade. Na seção a
seguir serão conceituadas cada uma dessas técnicas.
3.4.1 Contadores homomórficos
33
Com base em Benaloh (1996) a aplicabilidade da criptografia homomórfica tem nos últimos
anos sido foco de estudos para a utilização em sistema de votação, as cédulas em purotexto
nunca são visíveis exceto para o eleitor. As criptografadas são divulgadas e agregadas em um
formulário criptografado.O registro é então decriptografado.
Estes sistemas necessitam de tipos especiais de esquemas de criptografia homomórfica e
contadores homomórficos, que permitem o cálculo da contagem dos votos criptografados.
Uma função é dita homomórfica em relação a onde é a operação de adição e é
a operação de multiplicação se Em particular, se é uma função
criptografica, e são os votos e uma operação. O registro criptografado é obtido através
da aplicação aos votos criptografados. Em um esquema de encriptação homomórfica é
possível verificar se a contagem criptografada é computada honestamente, pois todas as
cédulas criptografadas são públicas. Usando contadores homomórficos, o eleitor tem a opção
de a qualquer momento verificar o adequado registro da votação bem como se o contador
homomórfico está correto.
Propostos Shamir1 (1979, apud BENALOH, 1986, 1987), os contadores homomórficos foram
utilizados em protocolos de voto. Para distribuir a autoridade de quem tem permissão para
decriptografar os contadores, o autor supracitado utilizou uma técnica de compartilhamento
secreta, usada para calcular o valor de cada cédula em purotexto pelo contador. Como os
sistemas de votação homomórfica não produzem cédulas em purotexto, é difícil adaptá-los às
regras de contagem.
Nós contadores homomórficos é difícil provar que o voto criptografado (x) é uma
criptografia de um voto válido. Para melhor compreensão vamos supor uma eleição com dois
candidatos e com dois votos possíveis, -1 e 1, o eleitor que atribuiu o voto deve provar que a
cédula codificada contém 1 ou -1, caso os valores sejam diferentes destes. Entende-se que
houve duplicação do voto. A prova e generalização são complexas para uma apuração de
grande porte.
1 SHAMIR, A. How to share a secret. Communications of the ACM, v, 22, p. 612–613, 1979.
34
No esquema de Belanoh, foram feitas melhorias para o endereço de comprovação do
compartilhamento secreta (SCHOENMAKERS, 1999). Recentemente, Adida propôs um
modelo simplificado para as eleições baseadas em cédulas de papel (ADIDA, 2006).
3.4.2 Assinaturas cegas
Criada por Chaum (1982), as assinaturas cegas permitem ao usuário a assinatura digital de
uma mensagem por uma entidade, sem que a mesma saiba o conteúdo assinado. De acordo
com Fujioka (1992), as assinaturas cegas foram inventadas para proteger a privacidade nas
transações financeiras eletrônicas. Chaum (1982) diz que, nos protocolos de voto as
assinaturas cegas necessitam de:
• Uma função pública de assinatura como o sistema criptográfico Rivest Shamir Adleman
(RSA), de tal forma que só a parte autorizada possa produzir uma assinatura , e todos
possam verificar a sua validade;
• uma função e sua inversa , que seja comutativa com ; em outras
palavras . Quando é aplicada sobre ,
não comunica qualquer informação sobre .
Para que um canal de comunicação anônimo e um esquema de assinatura cega estejam
disponíveis, é necessário que antes do dia da eleição: 1) o eleitor preencha um voto e atribua a
ele um número de série escolhido de maneira aleatória, indicando a cédula com o anexo
número de série ; 2) o eleitor , aplica ; 3) posteriormente o eleitor assina
digitalmente , com sua chave privada e envia assinando para a autoridade
eleitoral; 4) a autoridade eleitoral verifica a assinatura e se o eleitor já votou na eleição em
curso; 5) a autoridade eleitoral assina para obter e envia de volta
para o eleitor; 6) o eleitor aplica para obter ,
; 7) o eleitor fiscaliza a assinatura da autoridade eleitoral em que é válida;
35
Durante o dia da eleição, usando um canal anônimo, o eleitor envia , à urna, em
seguida, a urna examina que a assinatura da autoridade eleitoral é válida. Posteriormente, as
urnas verificam que não foi lançado por meio da fiscalização do número de série da cédula
e, finalmente a urna contabiliza .
Os sistemas de votação baseados em assinaturas cegas são mais adequados para a votação
remota, pois a interação entre o eleitor e o sistema central de eleição é realizada em diferentes
momentos. Se as interações foram realizadas ao mesmo tempo, indicará que a autoridade
eleitoral estará em conluio com a urna, podendo determinar a correspondência entre a
assinatura dos votos e a assinatura cega dos votos, colocando assim em risco à privacidade.
A aplicabilidade das assinaturas cegas nos sistemas de votação proporciona
privacidade incondicional, pois não releva informações sobre a votação em si.
Entretanto, a integridade desse sistema só é garantida se o adversário possui
limitações computacionais; caso contrário posse ser quebrado o algoritmo de
assinatura (POPOVENIUC, 2009, p. 36).
3.4.3 Mixnets
A mixnet é um método que permite a um emissor X enviar uma mensagem anônima a um
receptor Y de uma forma segura, ou seja a garantia de que o receptor irá receber sem
descobrir a sua origem.
Proposta por Chaum (1981), a mixnet é um método anônimo de troca de mensagens que pode
ser utilizado para as eleições. O eleitor atribui o seu voto que é criptografado com chaves
públicas diferentes, uma para cada mix na mixnet. A ordem em que mistura os votos é inversa
ao processo em que as chaves foram utilizadas para garantir que a primeira mistura seja
aquela cuja chave foi usada na última encriptação. O eleitor em seguida, autentica-se a um
boletim público, sendo colocado neste a cédula criptografada.
A mixnet é composta por um conjunto de mix (misturadores), ligados em série, de
tal forma que a saída de um mix torna-se a entrada do próximo mix. O primeiro mix
lê as cédulas criptografadas e remove o primeiro nível de criptografia usando sua chave privada, embaralha todas as cédulas processadas, e os tornam disponíveis para
o próximo mix e para o público, através da publicação no site da autoridade eleitoral
(CHAUM, 1981)
36
Posteriormente, cada mix parcialmente decripta todas as cédulas e as embaralha. Observa-se
que as informações são mantidas em segredo, um voto não pode ser revelado a partir da
entrada no primeiro mix e nem com a saída do último. A figura 6 apresenta uma visão geral
da mixnet.
Figura 6 - Visão geral do processo
FONTE – WIKIPEDIA2, 2008.
Vale salientar que o uso dos números aleatórios durante a criptografia é imprescindível para
assegurar que, um adversário não encripte cada mensagem de saída com a chave pública do
conjunto, localizando a mensagem de entrada correspondente.
Chaum (1981) pressupõe a existência de um sistema de encriptação de um par de chaves,
sendo uma chave pública e uma chave privada tal que, para qualquer mensagem ,
, onde denota a cifragem de usando a chave . Para um único
mix e uma única mensagem, , a entrada é e a saída é , onde é obtido
decriptando a entrada
e removendo o valor aleatório . A saída de pode
ser da mesma forma, , e vários mixes podem ser encadeados.
A entrada pode ser construída de tal forma que as mensagens são conduzidas por um certo
número de mixes, antes de receber a mensagem em purotexto. Neste caso, as mensagens de
(1981), este tipo especial de mixnet foi chamado de decryption onion mixnet, porque cada mix
remove uma camada de entrada, decriptando antes e misturando a saída. Oberva-se que diante
disso a carga cresce a cada entrada no mix, e, para solucionar o problema do aumento nas
mensagens que não são tratadas pelo esquema de criptografia assimétrica, Park (1994) propõe
um re-mixnet criptográfico, no qual cada mix executa uma recodificação; terminado esse
processo, uma decodificação parcial recupera as mensagens. Para isso é utilizado o esquema
de encriptação El Gamal (1985), pois através deste é possível re-criptografar sem
conhecimento prévio da chave privada. De acordo Popoveniuc (2009) é aplicado um esquema
de criptografia híbrido, onde a carga é criptografada usando uma chave secreta simétrica
sendo esta criptografada com a chave pública do mix.
3.4.3.1 Corretude
Os números aleatórios não são escolhidos pelos eleitores, nem lhe são disponibilizadas após a
votação. O eleitor pode garantir que seu voto foi codificado através de processo de escolha.
Em relação à corretude decriptográfica, várias técnicas foram desenvolvidas tais como: a
prova de conhecimento zero – (ZKP), que permite autenticar uma determinada informação
sem revelar o seu conteúdo (GOLDWASSER, 1989). Autores como Goldreich (1991) diz que
“a ZKP prova que o lote de entrada do mix decriptografa o lote de saída, sem revelar
informações sobre os votos”. Essa propriedade pode ser usada no processo de apuração
determinando o total de votos, sem saber em qual candidato o eleitor votou.
Noar (1995) pontua que a verificação parcial aleatória (RPC), consiste em verificar ligações
aleatórias entre os valores de entrada e saída do mix sem a revelação das informações. O mix
revela as informações necessárias para verificar se, as entradas solicitadas vão determinar
diferentes saídas. Assim o auditor pode analisar a saída e os números aleatórios e
recriptografá-los com a chave pública para verificar a corretude do processo.
38
3.4.3.2 A mixnet e suas propriedades
Segundo Chaum (1981), a mixnet é uma autoridade distribuída; cada mix ou um conjunto de
mixes estão sob o controle de diferentes entidades. Caso todas as entidades sejam corruptas
podem levar à reconstrução do caminho completo de uma entrada criptografada para uma
saída em texto claro. Entretanto, se pelo menos uma entidade executa corretamente as
criptografias não é possível associar as entradas da mixnet com as correspondentes saídas.
A mixnet só publica as chaves públicas de cada mix sem participar da construção de
sua entrada. Se uma única entidade cria a entrada da mixnet, ela é capaz de rastrear a
mensagem através de toda mixnet. Isso ocorre porque cada mix transforma a entrada
de uma maneira determinística, e a entidade que criou a entrada vai saber como cada
mensagem é vista na fase da transformação (POPOVENIUC, 2009)
Chaum (1981) afirma que os caminhos da mix são dinâmicos apresentando a vantagem de que
um lote de entrada pode ser processado várias vezes pela mesma mix, produzindo diferentes
ordens de saídas, sem a necessidade de uma nova configuração antes do tempo. Não existe
vinculação entre o formato da cédula e as chaves públicas da mixnet, o que facilita a
aleatoriedade na escolha dos outros parâmetros.
3.5 Sistemas de votação com verificabilidade baseado em mixnet
É imprescindível para a lisura do processo de votação fornecer ao eleitor um recibo para que
ele possa verificar e usar em caso de conflito de interesses. Popoveniuc (2009) diz que o
sistema pode se recusar a dar um recibo, ou até mesmo dar um recibo que é diferente da
cédula. Portanto, para minimizar ou solucionar esses problemas os sistemas de votação devem
permitir ao eleitor um recibo que seja:
Sempre Disponível: o sistema fornece ao eleitor um recibo sem identificar se o mesmo foi
mantido ou não. Para garantir a segurança dos sistemas de recibos é necessário que uma
parcela dos eleitores mantenha e verifique os seus recibos. Assim, estes estão disponíveis para
todos os eleitores e o sistema de votação não deve ser capaz de distinguir entre os eleitores
quais mantiveram ou não o recibo.
39
Suficiente: nenhuma informação além da contida no recibo é necessária para a resolução do
conflito de interesses Os recibos se tornam públicos e os leitores podem verificar se os
mesmos foram postados de maneira correta.
3.5.1 Sistema de votação baseado em criptografia visual
Proposto por Chaum (2004), o sistema de votação baseado em criptografia visual permite ao
eleitor a contraprova do seu voto resguardando a privacidade e garantindo que estes sejam
incluídos na apuração.
A urna eletrônica é composta por uma interface de tela sensível ao toque que o eleitor pode
usar para selecionar seus candidatos favoritos, e uma impressora especial. Depois que o
eleitor escolhe o seu candidato, a tela mostra um resumo e são impressas duas camadas
transparentes. Os eleitores verificam que as duas camadas sobrepostas expressam o voto
atribuído. Para a construção das cédulas é utilizada a criptografia visual (NOAR, 1995).
Qualquer imagem em preto e branco que tem a suficiente redundância pode ser usada pelo
sistema.
O eleitor opta por manter uma das duas camadas e fiscaliza enquanto a outra é destruída. É
impressa sobre a camada escolhida informações adicionais. Após o dia da eleição, qualquer
eleitor pode acessar o site da autoridade eleitoral, entrar com o número de série do seu voto, e
verificar se o recibo foi postado no site.
3.5.1.1 Entendendo o sistema de votação baseado em criptografia visual
A criptografia visual utiliza a mixnet tradicional. Segundo Chaum (2004) cada administrador
gerencia uma ou mais mix. Cada mix possui um par de chaves , onde é a chave
pública e é a chave privada. Suponhamos que há apenas uma máquina de votação, com três
pares de chaves ( , ), ( ,
) e ( ,
), onde ( , ), é o par de chaves utilizado pela
40
urna eletrônica para assinar o recibo, , é um par de chaves associada com a camada
superior, e com a camada inferior.
O voto impresso consiste em duas camadas criptografadas que representa a imagem na
camada superior para o número de série s, e , a imagem inferior. Quando sobrepostos,
essas imagens produzem o voto, = , onde representa a função. Cada pixel
em ou é representado por quatro pixels impressos. A associação de um grupo de
sub-pixels, com um super-pixel especial, quando dois super-pixels são sobrepostos, resultam
em uma função super-pixel.
Cada camada, e contém super-pixeis alternativos pseudo-aleatórios e encriptados.
Os pseudo pixels aleatórios são escalonados em uma unidade na outra camada do recibo.
representa a camada superior ou inferior, com . , representa um bit
pseudoaleatório da camada , a metade dos bits na imagem .O seu tamanho é metade da
imagem da cédula. Os bits pseudo-aleatórios são gerados pela adição das contribuições de
todos os administradores, a contribuição de cada administrador é gerada por uma
descendência distinta, e as descendências são geradas pela urna eletrônica, utilizando o
número de série do recibo (CHUAM, 2004).
Seja uma função para a apuração com número de série , o i-ésimo administrador da
descendência da camada é:
) (1)
A seqüência pseudoaleatória utilizada na camada é:
) (1.1)
onde é produz um número fixo de bits de uma dada de descendência.
Em ambas as camadas na parte inferior são impressas três fitas, idênticas nas duas
camadas ao número de série do recibo e duas fitas representam os compromissos
assumidos pela urna eletrônica para as descendências das fitas pseudo-aleatórias nas
duas camadas. Elas contêm uma sequência geral de fitas com outras dentro dela
como nas mixnets, as descendências necessitam dos administradores para gerarem
quantidade necessária de bits pseudoaleatórios em cada uma das duas camadas
(CHAUM, 2004, p. 46).
41
=
(1.2)
Onde = nulo e a cédula tem impressão neles
e
O eleitor escolhe uma das camadas ou . A impressão acontece apenas na camada
mantida, , que pode ser usada para verificar a formação adequada de todas as
descendências utilizadas para construir o bit pseudoaleatório na camada escolhida. O eleitor
não pode decifrar o recibo para comprovar como ele votou, porque a camada que possui
contém o voto criptografado. Mesmo usando o bit pseudoaleatório ela não abri, , é
gerada usando , onde representa a camada complementar. É importante salientar
que, essas descendências não podem ser abertas. O recibo, portanto, não viola a exigência de
que o sistema de votação proporciona privacidade involuntária.
O bit pseudoaleatório deve ser visto como uma assinatura no número de série, caso ele tenha
sido gerado pelas descendências. Ou seja, se é a seqüência impressa pela urna,
após o eleitor fazer a escolha da camada, o eleitor poderá verificar se:
e se
= (1.3)
isto é, se é a assinatura de com a chave privada
Observa-se que, os recibos são assinados digitalmente pela urna eletrônica, para que um
eleitor alterando o recibo seja detectado.
Declarados corretos os recibos, os administradores executam o mixnet decifrando os votos.
Encerrado o processamento das cédulas criptografadas, o total de votos é publicado e os
resultados eleitorais provisórios são declarados (CHAUM, 2004). Se é uma imagem da
cédula de saída da mix, a mix calcula . O resultado da decodificação tem duas partes.
A primeira parte é usada pela mix para a decodificação da imagem de entrada. A segunda faz
parte do próximo administrador.
=
(1.4)
´ (1.5)
42
onde, , a imagem do recibo e é a código impressa no recibo.
De acordo com Chaum (2004) a última fase envolve a auditoria dos administradores. De
maneira aleatória, metades das mensagens vão para o primeiro mix e são abertas
estabelecendo uma correspondência entre a entrada e a saída do mix. Para o próximo mix a
outra metade dos votos serão abertos. Assim, no final das duas primeiras mixes, após a
auditoria, uma simples mensagem de saída pode ser rastreada até exatamente a metade dos
votos de entrada.
Quando o i-ésimo mix é solicitado para "abrir" uma mensagem, o mix demonstra que foi
corretamente construída a partir de . A mix fornece a imagem correta
correspondente . Após todo o processo a eleição é certificada.
=
(1.6)
a saída foi devidamente calculada apartir de .,
3.5.1.2 Vantagens e desvantagens da votação baseada na criptografia visual
Podemos citar como pontos importantes na utilização do sistema acima citado:
1) Não existe distinção para o conteúdo do voto desde que as imagens sejam pretas e brancas.
A fonte usada para imprimir o texto na cédula ou as imagens deve possuir redundância
suficiente para que as mesmas sejam interpretadas com coerência. Isso ocorre porque as
cédulas são construídas descodificando os recibos que contêm apenas metade dos pixels da
imagem.
2) A ordem dos nomes dos candidatos na cédula pode ser fixa ou variável entre as cédulas.
Ambas as situações podem ser atendidas pela cédula baseada em criptografia visual sem
causar interferência em qualquer parte do processo.
3) A criação do recibo é automática, a cédula é composta por duas partes simétricas, e
qualquer uma pode ser um recibo.
43
4) Proteção das chaves privadas da urna eletrônica, a posse das chaves privadas favorecerá o
conhecimento dos bits pseudoaleatórios utilizados na construção de voto. É imprescindível
que estas chaves privadas sejam destruídas após o encerramento da votação.
5) Facilidade na resolução dos conflitos de interesse, caso exista incompatibilidade entre o
recibo mantido e o postado no site eleitoral, de posse do recibo o eleitor, tem uma prova
consistente de que no mínino ocorreu um erro, necessitando só apresentar o recibo para
notificar o problema.
Desvantagens da votação com base na criptografia visual:
1) A urna eletrônica utilizada pelos eleitores conhece as seleções em purotexto que os
mesmos fizeram. Esta possui informações que podem associar o eleitor ao voto.
2) Os eleitores não estão familiarizados com a interface de votação em duas camadas.
3) A verificação por parte dos eleitores é um processo difícil. Este deve verificar se todos os
nomes dos candidatos estão corretos, que fonte, tamanho e estilo foram utilizados para a
impressão. Deve verificar se o seu recibo foi corretamente postado no site da autoridade
eleitoral, analisando se cada pixel em seu recibo coincide com a imagem postada.
4) O tamanho das urnas, a quantidade de candidatos que podem ser selecionados em cada
eleição, o recibo impresso, exigi que a resolução de impressão seja alta o que demanda alto
custo.
5) Não possui registro permanente dos votos expressos o que exclui o processo de recontagem
manual.
3.5.2 Prêt à voter
Segundo Chaum (2005a) no Prêt à Voter não existe uma ordem fixa em relação aos nomes
dos candidatos em todas as cédulas, a posição da marca ao lado de um candidato favorito
torna-se a criptografia do voto. Além disso, os votos criptografados podem ser transformados
44
em votos de purotexto usando um mixnet que é muito semelhante ao utilizado pelo sistema de
votação baseado em criptografia visual.
O voto é formado por uma única folha de papel com uma perfuração vertical. À esquerda da
perfuração é apresentada uma lista dos candidatos em uma ordem permutada. O eleitor faz
uma marca ao lado do nome do candidato favorito à direita da perfuração.
Após a marcação, o lado que contém o nome dos candidatos é separado e destacado, o lado
direito é digitalizado tornando-se público. O eleitor fica com o lado direito sendo este o seu
recibo, sendo possível verificar se a versão pública do recibo coincide com a versão física.
Caso não seja o seu recibo é uma prova irrefutável de que no mínimo houve algum erro.
3.5.2.1 Entendendo o Prêt à Voter
A mixnet no Prêt à Voter consiste em mixes, cada uma com um par de chaves ,
onde é a chave pública correspondente à chave privada . Para gerar as cédulas e imprimi-
las em primeiro lugar, é necessária uma autoridade de impressão confiável. Esta autoridade
tem um par de chaves . Seja , a lista de candidatos na cédula.
Considere uma única cédula. Para cada mix na mixnet, a autoridade de impressão gera um
valor pseudoaleatório e utiliza para criar uma permutação
(1.7)
Onde é o conjunto de permutações de tamanho e é uma regra pré-estabelecida
associada entre o valor aleatório e uma permutação. Todas as permutações são compostas em
conjunto
(1.8)
Onde representa o operador de composição. A permutação resultante é aplicada à lista de
candidatos , resultando em uma lista de candidatos permutada , que é impressa no lado
esquerdo da cédula.
45
Se . é um par de chaves assimétricas da entidade gerando a descendência,
, onde é uma função segura e é o número de série da cédula,
pode ser comprovado que as descendências são construídas de uma forma determinística, e as
descendências em si não constituem um canal secreto. As descendências são introduzidas em
uma entidade criptográfica.
= (1.9)
Onde nulo. A entidade criptográfica é assinada para obter , e impressa no lado
direito da cédula. Esta é utilizada pela mixnet para decriptar o recibo. O número de série da
cédula é suficiente para identificar publicamente a cebola (cada mix remove uma camada de
entrada, decriptando antes e misturando a saída), que não dependem do voto lançado, mas da
ordem dos candidatos na cédula.
Chaum; Ryan; Schneider (2005a) afirmaram que “para garantir que a permutação dos
candidatos na cédula seja coerente com a informação prestada à mixnet, uma auditoria de
impressão é executada. Cada eleitor pode escolher duas cédulas, uma para auditoria, e outra
para marcar e emitir”. Para as cédulas auditadas a mixnet torna pública todas as
, a ordem dos candidatos no lado esquerdo da cédula é obtida
através da aplicação .
Depois que todas as cédulas são lançadas, os recibos tornam-se públicos. Os eleitores
verificam os seus recibos no site da autoridade eleitoral, a mixnet decriptografa os votos. A
entrada para a mixnet consiste de pares na forma onde são os valores
codificados, posições dos candidatos escolhidos. O mix é transformado permutando as
entradas antes de reproduzi-las.
A entrada para mix é e a saída é . A saída de é
construída decriptando e removendo a
(2)
Onde representa remover a sequência a partir do início da primeira cadeia,
é obtido calculando o inverso da permutação obtida a partir da e
compondo-a com
46
(2.1)
Observe-se que, a composição da permutação não possui a propriedade comutativa, a ordem
em que as permutações são compostas deve ser considerada. Como no sistema de votação que
utiliza a criptografia visual, as mixes são auditadas. Cada mix é necessário para demonstrar o
processamento correto das metades das entradas e saídas
= (2.2)
3.5.2.2 Vantagens e desvantagens do Prêt à Voter
Chaum; Ryan; Schneider (2005a) afirmam que a cédula Prêt à Voter trata as principais
práticas baseadas em criptografia visual, tais como, impressão de alta resolução e os
problemas de alinhamento, tendo como vantagens:
1) Os tipos mais comuns de disputas de eleições são suportadas pela cédula Prêt à Voter, sem
qualquer modificação.
2) A criação do recibo é automática, a parte do papel que o eleitor faz a marca torna-se o
recibo após ter sido separada da lista de candidatos e digitalizada. A verificação do recibo
ocorre da seguinte forma, o eleitor verifica se as posições marcadas no recibo são as mesmas
que no boletim eleitoral. A resolução de conflito de interesses é fácil, uma vez que o eleitor
esteja de posse do seu recibo.
3) As cédulas podem ser impressas em papel com qualquer tipo de impressora, o scanner
necessário no local de votação pode ser de baixa resolução. A impressão das cédulas pode ser
feita off-line, evitando qualquer interferência no procedimento de votação. O custo do sistema
é baixo, porque um único scanner é suficiente por zona eleitoral.
4) O scanner, não associa os números de série aos leitores. Por essa razão, o scanner não pode
calcular um registro independente e relatório ao final do dia, nem a recontagem manual pode
ser iniciada em caso de conflito de interesse ou suspeita de fraude.
Como desvantagens, são citadas:
47
1) Uma cadeia de custódia é estritamente necessária para assegurar o desvinculo entre as
cédulas em branco e os recibos, como tal revelaria uma correspondência entre os números de
série e os votos. Depois que o eleitor recebe a cédula e expressa seu voto, a cadeia de custódia
não é mais necessária. O recibo sem informações sobre a função criptográfica correspondente
não revela informações sobre o voto.
2) A ordem aleatória dos candidatos é essencial para que o eleitor exerça o seu voto. Este
requisito pode entrar em conflito com regulamentos específicos. Algumas jurisdições impõem
estilos de voto múltiplo, onde a ordem dos candidatos é diferente para compensar o fato de
que alguns estudos indicam que o candidato que aparece na parte superior tende a obter mais
votos exclusivamente com base na posição.
3) Alguns eleitores tendem a associar as posições geométricas marcadas com votos para um
determinado candidato localizado na parte superior. Observa-se que a aleatoriedade dos
candidatos irá interferir nesta associação.
3.5.3 Punchscan
Proposto por Chaum (2005c), a cédula Punchscan consiste de duas folhas de papel
sobrepostas. Segundo Popoveniuc (2006), a página superior da cédula possui furos, e as
informações na página inferior podem ser lidas através dos furos. Esta corresponde às opções
ou ao nome dos candidatos. Cada opção tem um símbolo que lhe é atribuído, e a atribuição
dos símbolos de respostas varia de cédula para cédula. Na página inferior da cédula, existe
uma lista de símbolos, em uma ordem distinta de cédula para cédula, independente da ordem
na página superior. Para melhor compreensão ver (FIG 7).
48
Figura 7- Modelo de cédula Punchscan
FONTE - SHEN, 2008., p. 24
A parte superior e inferior das cédulas estão alinhadas, quando são sobrepostas para cada
pergunta na cédula, os símbolos a partir da página inferior são visíveis através dos buracos
feitos na página superior O eleitor faz uso de uma caneta especial que tem um diâmetro maior
que o furo da página superior para selecionar os seus candidatos, quando atribui o seu voto
são marcadas ambas as páginas.
3.5.3.1 Descrição do processo eleitoral
Segundo Popoveniuc (2006) as três fases do processo eleitoral no sistema de votação
Punchscan são caracterizadas por:
Fase pré-eleitoral: esta fase pré-eleitoral permite a instalação das eleições e das provas de
integridade. Durante esta fase as cédulas são geradas, impressas e auditadas. Além disso, a
informação que permite a recuperação da escolha de uma página da cédula é gerada e
controlada. A ordem cronológica é a seguinte:
A.1 A autoridade eleitoral gera cédulas e as mantém seguras.
49
A.2 A autoridade eleitoral gera e compromete-se com a informação necessária para
decriptografar uma página da cédula, quando a outra foi eliminada.
A.3 Os candidatos desafiam a autoridade eleitoral e pedem para ver algumas das
cédulas, juntamente com as informações de [A.2].
A.4 A autoridade eleitoral fornece as cédulas solicitadas, e abre os compromissos aos quais
estão associados, eliminando-as.
A.5 Os candidatos fiscalizam no intuito de assegurar que os compromissos sejam consistentes
às cédulas abertas.
Dia da eleição: os eleitores vão aos seus locais de votação, autenticam-se como eleitores
legítimos, e obtém uma cédula com os funcionários eleitorais.
E.1 O eleitor vai a uma urna lacrada.
E.2 Sem ver a ordem dos símbolos de cada página, o eleitor compromete-se com a página.
E.3 O eleitor usa a caneta especial para marcar o furo que tem o símbolo associado com o seu
candidato favorito nas urnas.
E.4 O eleitor separa as duas páginas, mantém a escolhida em [E.2] e elimina a outra.
E.5 A página escolhida é digitalizada, e as posições das marcas são registradas e publicadas.
Fase pós-eleitoral: a eleição é auditada e são realizadas provas para garantir a integridade da
eleição.
D.1 Qualquer eleitor pode acessar o site da autoridade eleitoral, digitar o número de série de
sua cédula, verificar se a mesma foi postada e se é semelhante à página que ficou sob sua
posse.
D.2 A autoridade eleitoral processa todas as cédulas para produzir versões parcialmente
decriptografadas.
50
D.3 Os candidatos verificam as transformações das cédulas originais para a forma
parcialmente decriptografada, e algumas das transformações da forma parcialmente
decriptografada para o purotexto.
D.4 A autoridade eleitoral responde aos desafios feitos pelos candidatos em [D.3].
D.5 Os candidatos fiscalizam a resposta da autoridade eleitoral para terem certeza da
coerência com os compromissos assumidos na fase pré-eleitoral [A.2] e com a informação
pública em [D.2]. A figura a seguir ilustra três etapas importantes em uma eleição que utiliza
o sistema de votação Punchscan.
Figure 8 - Fases da eleição no Punchscan
FONTE – CHAUM 3, (s.d)
1) Auditoria pré-eleitoral: Duas tabelas são postados online, com o conteúdo de cada tabela
criptografada (retângulos azuis). Escolhe aleatoriamente as linhas da primeira tabela para a
decodificação (números 2,3,6,7,9 dos votos, apresentado após a seleção com o azul
removido). Isto revela detalhes da cédula (Exemplos mostrados com "X" vermelho) que teria
3 www.punchscan.org
51
sido impresso essas linhas não foram auditadas. As linha das tabelas são, então,
decriptografadas (1,3,4,5,9, azul removido) para revelar o que teria sido as transformações
correspondentes ao acaso na apuração dos resultados. Qualquer pessoa pode, então, verificar
que, se uma marca no lado esquerdo de uma votação for um voto para o Fred (ex: cédula de
0002) a linha induz a uma seta azul em forma de S e uma seta de inversão do laço (para o
ponto laranja da coluna que muda para um ponto roxo quando se torna o resultado), essa
marca deveria ter resultado em uma votação para "Joe" (ex.: cédula de "0009") que inclui
duas setas diretas ou duas setas de inversão.
2) Verificação do local de votação: os votos não decifrados em auditoria (número da cédula 1,
4, 5, 8 no exemplo) são impressos e fornecidos a cada eleitor no local de votação.
A- Cabine de votação: o eleitor usa uma caneta com uma tinta especial para marcar o símbolo
através do orifício que corresponde ao símbolo rotulado na escolha do seu candidato ("Fred"
no exemplo dado). O pincel marca com tinta colorida tanto a página superior quanto a inferior
através do buraco.
B- Fragmento: uma das duas páginas é escolhida pelo eleitor (a folha superior mostrada como
branca, no exemplo), é cortada pelo eleitor
C- Digitalizar, verificar, lançar: o eleitor, em seguida, examina a página e compara com a sua
imagem digitalizada, a marca verde no visor indica as marcas de tinta reconhecida a menos
que o eleitor tenha estragado a cédula e tente novamente digitalizar a imagem lançada. O
eleitor mantém a página como um recibo, mas não revela o voto
3) Auditoria pós-eleitoral: Os resultados são afixados. Auditoria é ao acaso, ou decriptografa
o lado esquerdo ou direito da tabela da segunda linha (no exemplo seria direita, esquerda,
direita, esquerda). Qualquer um pode verificar que os pontos verdes estão na mesma posição
que a coluna com os pontos laranja ou pontos roxos correspondentes direto para as setas e em
lados opostos das setas de laço. Aleatoriedade na auditoria, assegura com uma alta
probabilidade o registro das marcas e que estas estão registradas corretamente, mas sem
vinculação dos resultados para cédulas.
4) Verificando em casa: para verificar se o voto foi postado corretamente, o eleitor pode
acessar o site eleitoral e digitar o número de série do seu recibo. A imagem e as marcas devem
estar nas mesmas posições como no recibo de papel.
52
3.5.3.2 Descrição das funções no Punchscan
Popoveniuc (2006) afirma que, no sistema de votação Punchscan, a autoridade eleitoral e os
auditores desempenham papéis importantes para o correto cumprimento do processo eleitoral.
Entretanto, a autoridade eleitoral e os auditores são a mesma entidade, assim, somente as
auditorias internas são realizadas, e apenas aqueles com privilégios especiais são capazes de
verificar a corretude das auditorias. Em uma eleição usando Punchscan existe uma
delimitação clara entre os auditores e a manipulação das cédulas. É necessário que os
candidatos se tornem auditores para fiscalizar se a eleição ocorreu com transparência.
O eleitor chega ao local de votação e autentica-se como um eleitor legítimo. Ele recebe uma
caneta especial e uma cédula, e antes de vê-la, compromete-se com a página que vai ser
mantida. Ele entra em uma cabine de votação, escolhe seus candidatos favoritos fazendo uma
marca com a caneta sobre o furo que tem o símbolo associado ao seu candidato. De posse da
sua página sendo a outra eliminada, sai do local de votação. Caso queira pode verificar o seu
voto acessando o site da autoridade eleitoral e digitando o número de série do seu recibo. Não
são necessárias outras verificações do eleitor.
A autoridade eleitoral na fase pré-eleitoral decide pelo formato cédula canônica (a cédula
canônica é aquela em que no lado esquerdo existe uma marca para um voto "Sim"). A qual é
utilizada para recuperar as escolhas dos eleitores, depois de ter a página da apuração
destruída.
A autoridade eleitoral compromete-se em gerar pelo menos duas vezes o número de cédulas necessárias na eleição tornando público tal compromisso, entretanto as
cédulas permanecem em segredo. Também gera e compromete-se com a informação
necessária para recuperar a intenção de um eleitor de uma página da cédula. A
autoridade eleitoral divulga todas as informações sobre um percentual significativo
dos votos. Isso permite aos candidatos fiscalizarem os compromissos e garante que
todas as cédulas sejam geradas de acordo com as informações que são necessárias
para decriptografá-las a partir das informações parciais. (POPOVENIUC, 2006)
Após a eleição, os postos da autoridade eleitoral decifram parcialmente as cédulas. Para
provar que tanto as decriptografias (parcial e final) foram executadas corretamente para cada
votação, a autoridade eleitoral vai revelar como foi feito o procedimento que transformou o
voto em uma cédula parcialmente decriptografada ou como transformou uma cédula parcial
decriptografada em um purotexto.
53
Os candidatos podem desempenhar o papel de auditores, desafiando a autoridade eleitoral
durante as fases pré-eleitoral e pós-eleitoral, e verificando que as respostas são consistentes e
transparentes com os compromissos.
3.5.3.3 Aplicabilidade do Punchscan na votação
A eleição consiste em uma única disputa binária: o voto dos eleitores "Sim" ou "Não". A
autoridade eleitoral decide que, na página superior canônica, o símbolo "A" é associado ao
"Sim" na página superior e "b" ao "Não". No outro tipo de página superior os símbolos
permanecem os mesmos, entretanto o valor binário é permutado. A autoridade eleitoral decide
também que a ordem é "a" b "na página superior. Existem dois tipos de páginas inferiores:
uma cédula canônica, com "a" seguido por "b", e uma virada (a virada é aquele em que no
lado esquerdo existe uma marca para um voto "Não"). Qualquer página superior pode ser
combinada com qualquer página inferior para produzir um voto. Os quatro tipos de cédulas
são igualmente prováveis.
A cédula canônica é aquela em que no lado esquerdo existe uma marca para um voto "Sim".
A virada eleitoral é aquele em que no lado esquerdo existe uma marca para um voto "Não".
Uma página superior canônica é combinada com uma página inferior virada resultando em
uma cédula virada. A decodificação do voto depende apenas em saber se a cédula inteira é
virada ou canônica. As cédulas canônicas, das páginas superiores e inferiores são
representadas por zero, e as outras por um.
Sendo "Sim" para zero, e "não" para um. Fazer uma marca no lado esquerdo será denotado
zero,enquanto no lado direito por um. Este é o voto criptografado. Para decifrar o voto
criptografado, é necessário saber se ele vem de uma cédula virada ou de uma cédula canônica.
No Punchscan, essa informação é ainda dividida em dois: flip / operações não-flip
para cada cédula. Quando combinadas, estas operações transformam a página
de votação em cédula canônica. As informações são divididas de uma forma que a metade
torna-se pública para fins auditoriais. A relação existente entre as páginas da cédula e as
informações utilizadas para a recuperação é:
54
(2.4)
A autoridade eleitoral faz compromissos públicos para as cédulas e . Os
candidatos escolhem a metade dos votos de forma aleatória, e a autoridade eleitoral torna
públicas as cédulas solicitadas junto com e para cada cédula. Qualquer um pode
verificar que a equação se verifica que "Top" e "bottom"
correspondem aos valores das cédulas impressas. Apenas as cédulas que não se tornaram
públicas na fase da pré-eleição serão usadas nas eleições.
Durante a fase das eleições, a autoridade eleitoral publica todas as páginas marcadas como
votadas pelos eleitores. Após a eleição é publicado o estado intermediário das cédulas
(embaralhadas) e a decriptografia das cédulas mais embaralha
. Estes são os compromissos com os valores de e utilizados na
decodificação da metade das cédulas de votação.
Durante a fase pós-eleitoral, a autoridade eleitoral é solicitada a abrir ou , mas
nunca os dois desde a abertura, pois permitiria a associação de uma cédula de votação para o
correspondente decifrado. Ademais, é necessário que as cédulas estejam parcialmente
decriptadas e que as decriptografadas estejam em uma ordem aleatória.
3.5.3.4 Vantagens e desvantagens da cédula Punchscan
A cédula Punchscan tem várias semelhanças com a votação baseada em criptografia visual e a
cédula do Prêt à Voter. Entretanto, como acontece com o CVV, possui duas partes, e somente
quando as partes são sobrepostas a votação é visível. Além disso, no CVV, o eleitor pode
escolher qualquer uma das partes como contraprova. Por outro lado, Popoveniuc (2006)
afirma que o problema de alinhamento no Punchscan é mais prático do que no CVV. Suas
vantagens são:
1) A criação do recibo é automática, o eleitor simplesmente separa as duas páginas e mantém
uma. A verificação do eleitor e a resolução de conflito de interesses são mais fáceis de
55
resolver, pois o eleitor só precisa verificar se o furo correto aparece marcado no site e se a
ordem dos símbolos em seu recibo é a mesma postada no site.
2) O sistema de votação e administração eleitoral é prático, e o custo é baixo, independente do
número de seções eleitorais, a zona eleitoral só precisa ter um scanner, um computador e um
picotador de papel.
3) O Punchscan pode produzir cédulas mantendo a ordem fixa dos nomes dos candidatos em
todas as cédulas. Isto pode ser uma exigência se as regras da jurisdição eleitoral determinam
que a lista de candidatos deva ser ordenada em um modo pré-determinado.
Podemos citar como desvantagens do Punchscan: 1) o formato da cédula Punchscan não
suporta facilmente pressão na escrita (marcar a cédula imprimindo força); 2) necessidade de
uma rigorosa cadeia de custódia das cédulas antes de chegar às mãos dos eleitores para
proteger a privacidade dos mesmos; 3) a recontagem manual não é possível, pois não há
nenhum voto em texto claro que fique mantido em nenhum lugar; 4) produzir as cédulas é
caro, uma vez que duas páginas são necessárias para a votação, as páginas superiores
precisam ser perfuradas com extrema precisão e ambas as páginas devem ser impressas em
impressoras especiais que permitam a utilização de papel pré-perfurado e respeitem as
coordenadas exatas dadas pelo computador.
56
4 VERIFICAÇÃO DOS VOTOS COM BASE NA MIXNET
Na analise dos processos que envolvem uma eleição existem dois papéis principais
desempenhados pelos componentes do sistema, o front-end que produz as cédulas e interage
com os eleitores e back-end que registra os votos de uma forma publicamente verificável. O
front-end transforma uma entrada do voto de um eleitor em um voto criptografado, enquanto
o back-end faz o caminho inverso. A verificabilidade é possível para ambos os componentes.
O front-end é a parte do sistema que garante aos eleitores o registrado dos seus
votos, já o back-end é a parte que garante que todos os votos sejam contabilizados
conforme coletados, e que pode ser verificado por qualquer pessoa, diferentemente
do front-end que só o eleitor pode verificar (POPOVENIUC,2009)
O autor supracitado ressalta que um sistema de votação segue algumas etapas no que diz
respeito a sua estrutura funcional tais como: 1) o back-end é iniciado; 2) o back-end dá todas
as informações necessárias para o front-end; 3) o front-end é iniciado; 4) tanto o back-end
como front-end são verificados quanto à exatidão; 5) o front-end imprime as cédulas e as
distribui para os locais de votação; 6) as cédulas são montadas; 7) as cédulas são entregues
aos eleitores que expressam o seu voto. O front-end prova que os votos foram impressos de
maneira correta; 8) cada voto é desmontado e o recibo produzido é entregue ao eleitor, o
recibo é a criptografia do voto. A criptografia é correta se e somente se o voto impresso for
correto; 9) o front-end envia o recibo para o back-end e este publica os recibos; 10) os recibos
apresentados pelo eleitor são confrontados com os recibos publicados; 11) os processos de
back-end decriptografam os recibos e publicam as cédulas em purotexto; 12) o back-end
prova que os recibos publicados decriptografam as cédulas em purotexto.
Na etapa um, o back-end pode secretamente gerar chaves, alguns dados da eleição e publicar
autorizações para o mesmo. Cada back-end tem que especificar a implementação dessa etapa.
Na etapa dois, suponhamos a existência de um canal privado utilizado pelo back-end para
enviar todos os dados necessários para o front-end. Estes dados podem ser públicos, como as
chaves públicas do back-end, ou não. Caso esses dados sejam publicados posteriormente
podem resultar na quebra da privacidade de alguns votos.
57
Na etapa três, o front-end pode gerar algumas chaves secretas ou dados, com base nas
informações confidenciais que recebeu na etapa dois, podendo publicar alguns compromissos
para ele. Cada front-end tem que especificar a implementação dessa etapa.
Em um cenário em que o front-end tem que gerar dados na etapa três, com base nos dados que
recebeu do back-end na etapa dois, há a possibilidade de que o front-end pode ignorar
completamente os dados que recebeu do back-end, e decide por gerar de maneira aleatória
alguns dados. Isso pode ter conseqüências graves para a integridade do sistema. Para
assegurar que isto não aconteça, a etapa quatro é imprescindível. É a primeira auditoria do
sistema e a verificação desta deve ser feita de forma pública, é importante que qualquer
indivíduo verifique através do site da autoridade eleitoral e se convença que a prova é
irrefutável. Tanto o front-end quanto back-end podem participar desta etapa, pois o intuito
maior é provar a garantia na corretude da configuração do sistema.
A natureza da comunicação entre o front-end e do local de votação pode variar de acordo com
cada sistema, independente da escolha do canal de comunicação, quer seja um canal de
comunicação privado com o objetivo de garantir o sigilo dos votos, ou simplesmente um
canal público, sendo que todos os front-end devem especificar o canal usado, caso as cédulas
sejam formadas por diversas partes. Estas serão montadas na etapa seis.
A etapa cinco é importante, pois trata da escolha dos eleitores. Nesta etapa, eles podem
receber uma cédula específica ou escolher aleatoriamente em uma pilha de cédulas
disponíveis. A cédula é o instrumento de encriptação do voto, que obtida pelo eleitor deve ser
feita de acordo com os dados gerados pelo front-end na etapa três. Como as cédulas foram
impressas após a seleção, na etapa quatro, os dados impressos podem ser corrompidos. A
regularidade da verificação garante que todos os votos foram impressos de forma correta.
Cada front-end especifica como o eleitor pode verificar se a sua cédula foi corretamente
impressa.
Na etapa oito, a informação que irá se tornar o recibo do eleitor é separada do resto da cédula.
Esta informação é codificada na cédula, e torna-se a o recibo permanente do eleitor. As outras
partes da cédula são cuidadosamente eliminadas pelo eleitor. Cada front-end deve especificar
como as cédulas são desmontadas, e como deverão ser marcadas.
58
A etapa nove é realizada pelo front-end e back-end. O front-end envia todos os recibos ou as
cópias coletadas para o back-end, que em seguida pública-os no site da autoridade eleitoral.
Na etapa dez, qualquer indivíduo que tenha acesso a um recibo válido pode verificar os
registros no site e ver que todas as informações sobre o recibo estão corretas.
Na etapa 11, o back-end processa todos os recibos no quadro de boletins, recebe as cédulas
em texto claro e publica-as de modo que qualquer registro pode produzir os resultados das
eleições. O back-end também pode produzir dados intermediários e torná-los públicos.
Apenas os resultados do processamento das cédulas em purotexto e os dados intermediários
são tornados públicos no site da autoridade eleitoral. Como o processamento do recibo é
secreto, o back-end pode afirmar falsamente que um conjunto de cédulas em purotexto
representa o conjunto de entrada de recibo.
A etapa 12 fornece uma prova de que, o conjunto de cédulas em purotexto é obtido
decriptografando o conjunto dos recibos públicos. Os dados publicados por intermédio do
back-end na etapa 11, e os dados publicados pelo back-end no início, na etapa 1, podem ser
utilizados para esta finalidade, durante a verificação é importante que os recibos não estejam
associados à cédula em purotexto.
De acordo com Popoveniuc (2009) Ao invés de verificar o material de votação, cada eleição
é controlada de forma individual.
Os dados necessários para verificar a eleição estão disponíveis no site da autoridade eleitoral,
qualquer pessoa pode desempenhar a função de auditor, sem a necessidade de privilégios
especial. Tendo assim um máximo nível de transparência.
É importante que as verificações de integridade não tenham que ser feitas em um único
momento. As verificações podem ocorrer a qualquer momento, os auditores podem verificar o
site eleitoral e ver que os dados são consistentes. Segue um modelo matemático para a
funcionalidade de cada um dos dois componentes segundo o autor supracitado.
Associada a cada cédula, com identificação pelo número de série, uma função criptográfica,
ou seja, o front-end implementa um mapeamento , onde é o conjunto de
votos em purotexto, o conjunto de números de série de voto, e o conjunto de votos
59
criptografados. A função criptográfica deve ser de fácil compreensão para os eleitores, por
exemplo, pode ser simplesmente uma cifra de substituição.
O voto criptografado é o recibo que os eleitores mantêm no final do processo de votação. Para
que aconteça a decodificação do recibo pelo back-end de maneira correta é necessário que
exista uma correspondência entre o número de série e a função criptográfica deve ser
conhecida pelo back-end. Como o eleitor não sabe que o back-end é uma função que
criptografa o seu voto, o front-end deve provar ao eleitor de que usa a função criptográfica na
impressão das cédulas comunicando ao back-end. Isso é chamado de auditoria de impressão.
Observa-se que o recibo mantido em posse do eleitor não deve conter qualquer indicio de
como o eleitor atribui o seu voto.
O back-end decifra um conjunto de votos verificando através de um mapeamento
sendo a inversa de ainda que seja incorreto matematicamente. No voto em
purotexto não vai estar incluso o número de série da cédula utilizada para votar. O back-end
deve ser verificável, ou seja, ninguém deve convencer-se de que o mesmo transformou
corretamente o conjunto de entradas de recibos em um conjunto de saída de votos em
purotexto. Ademais nenhuns dos recibos devem ser omitidos, injetado ou modificados.
60
5 COMPONENTES DO SISTEMA DE VOTAÇÃO
5.1 Back-ends
O Back-end entidade desempenha um papel imprescindível para o bom funcionamento do
sistema de votação, pois este garante a integridade e privacidade no processo da eleição e
consequentemente para o sigilo do voto.
5.1.1 Mixnet do tipo cebola como back-ends
As etapas que certificam a verificabilidade dos votos em uma mixnet do tipo cebola
correspondem a:
1) O back-end é iniciado, cada mix na mixnet do tipo cebola gera um par de chaves
assimétricas, .
2) O back-end entrega todas as informações necessárias para o front-end: sendo que cada mix
envia para o front-end sua chave pública, através de um canal público
4) Tanto o back-end e front-end são verificados quanto à regularidade, entretanto, essa
verificação não é necessária, pois todas as informações para a decriptografia são realizadas
pelos recibos.
5-10) Envio dos recibos do front-end para o back-end.
11) Nos processos do back-end os recibos produzem os dados intermédios e as cédulas em
purotexto, para uma recibo especial onde =
, é a
cédula criptografada, decriptografado pelo back-end, obtém-se a ,
61
calcula-se e temos como saídas em uma
ordem permutada no site da autoridade eleitoral.
12) O back-end prova que os recibos publicados são equivalentes às cédulas em purotexto,
pois cada mix demonstra individualmente que fez a decriptografia correta, transformando
corretamente a carga útil
5.1.2 Vantagens e desvantagens Mixnets do tipo cebola como back-ends
A mixnet do tipo cebola tem como vantagem compor todos os tipos de cédulas. O back-end
não é responsável pela produção de todas as informações iniciais sobre o estilo da cédula, por
este motivo não depende do front-end. Os detalhes da eleição podem ser especificados após o
back-end ter iniciado.
Antes das eleições não existe a necessidade de verificação visto que a configuração em si é
muito simples. A permutação executada por cada mix é gerada de forma dinâmica.
A principal vantagem é que o back-end é uma entidade distribuída. Cada mix pode operar de
forma independente dos outros, mas nenhum mix pode associar um recibo de entrada a uma
cédula em purotexto. Cada mix utiliza técnicas avançadas de criptografia para transformar as
cédulas. Além disso, uma mixnet usa criptografia assimétrica, que pode ser muito ineficiente,
para as eleições de grande porte, um back-end do tipo cebola pode levar um longo tempo para
produzir um registro.
5.2 Mixnets do tipo Punchscan
Nas seções a seguir serão apresentadas e demonstradas por Popoveniuc (2009) as provas de
integridade e privacidade do back-end do tipo Punchscan, assim como as variações do back-
end original que tratarão das seguintes questões: a influência dos parâmetros de configuração
62
da integridade e da privacidade, a compensação entre eles, a geração da verificação parcial
dos registros, auditorias de privacidade.
5.2.1 Modelo matemático
Segue a descrição do modelo para uma disputa única. Seja o conjunto ordenado de
candidatos em um disputa especial, e a cardinalidade do conjunto. Sendo que a
ordem dos candidatos no conjunto é a mesma em que aparece na cédula. Seja
onde é um voto nulo.
Assumimos que há "cédulas virtuais" para começar, indexados os elementos da cédula
indexando o conjunto. Indica o conjunto de números de 0 a . Seja o número de
candidatos que o eleitor pode escolher em .Seja ... , vezes o produto
cartesiano de com ele mesmo. Condições normalmente serão colocadas no para obter ,
o conjunto de todos os votos possíveis, por exemplo, para uma disputa não-cumulativa, exceto
Ø, nenhum candidato pode aparecer mais de uma vez em um voto válido, e
onde indica o p-ésimo componente de
Se e simbolizam funções bijetivas sobre os índices de votação, e
,com e sendo embaralhados. O back-end do tipo Punchscan pode ser
visto como listas operando todas as possibilidades que o eleitor pode escolher as cédulas.
Supomos que não existem restrições sobre os votos, e estes são compostos de escolhas de .
O back-end executa duas operações, e , sendo funções bijetivas, consistindo de uma
bijeção que não afeta o voto nulo, e um embaralhamento.
é uma
função bijetiva; para alguma função bijetiva , e se, e
somente se , onde o índice subscrito simboliza o componente -ésimo do vetor.
Observa-se que na bijeção, os votos nulos indicados por 0 sempre são mapeados para 0.
; tal que para alguma função
bijetiva e se, e somente se
Definição 16 (back-end do tipo Punchscan) é um back-end do tipo Punchscan se
e somente se: 1) e são aleatórios (ou pseudoaleatórios), e independente; 2) e são
63
independentes ; 3) e são independentes . O back-end tem uma entrada
modificada de acordo com a composição das regras estabelecidas e saídas de todos os
resultados em uma ordem embaralhada, e .
5.2.2 Mixnets do tipo Punchscan como back-ends
O back-end do tipo Punchscan implementa as etapas pelas quais é responsável na verificação
dos votos baseado em mixnets:
1) O back-end é iniciado: back-end do tipo Punchscan calcula secretamente e
e publica no site da autoridade eleitoral os compromissos para as funções
: , :
, onde simboliza o conjunto ordenado de
para todo e simboliza um compromisso.Para cada função comprometida, os
compromissos são publicados na ordem ascendente do índice .
2) O back-end dá todas as informações necessárias para o front-end, o back-end fornece
PunchScan para o front-end.
4) Tanto o back-end e front-end são verificados quanto à correção, um sub-conjunto de
índices é gerado de forma pública. Para cada , o back-end publica no site da
autoridade eleitoral , e .
5-10) O front-end envia os recibos votados para o back-end.
11) Nos processos do back-end os recibos produzem os dados intermediários e as cédulas de
purotexto: para todas os recibos , o back-end calcula secretamente ,
, classifica ambas saídas pelo primeiro índice das mesmas, e publica no site da
autoridade eleitoral todos os SPBB , e .
12) O back-end prova que os recibos publicados são equivalentes as cédulas em purotexto:
para todas as pós-imagens de (pré-imagens de , uma escolha é feita
exatamente para abrir um dos compromissos: (pré-imagem) ou , (pós-imagem). O
64
back-end, em seguida, abre o compromisso, e revela também a pré ou pós-imagem nessa
respectiva ordem.
5.2.3 Propriedades de integridade e privacidade
As provas para a integridade e garantia de privacidade do back-end do tipo Punchscan, podem
ser caracterizadas como:
Teorema um: (Auditoria um). Seja o número total de votos, e o número de cédulas que
são formados incorretamente. Se cédulas são escolhidas aleatoriamente na etapa quatro, a
probabilidade de não detectar qualquer uma das cédulas formada incorretamente é menor
que
(APÊNDICE).
Corolário um: Seja o total dos votos, e o número de votos que são formados
incorretamente. Se
cédulas são verificadas na etapa quatro, a probabilidade de não
detectar qualquer uma das cédulas formada incorretamente é menor que
.
Prova. Se , então, e . No Teorema um, tomamos.
. Daí
resulta que a probabilidade de não detectar qualquer uma das cédulas formadas
incorretamente é tal que
Suponhamos que 30 células são formadas incorretamente, então a probabilidade de não
detectar qualquer destas, quando metade das cédulas são verificadas é menor que uma em um
milhão, independentemente do número total de cédulas. Nota-se que não é o número de
cédulas que vão ser usados na eleição, mas o número total de cédulas que são inicialmente
comprometidas. Neste sentido, o máximo número de cédulas que podem ser utilizadas na
eleição é .
65
A demonstração anterior nos mostra que, de fato, a probabilidade de uma apuração
inconsistente não ser detectada pode ser tão pequena, escolhendo os valores adequados para o
número total de cédulas , e o número de urnas auditadas, .
Corolário dois: Dado , 0 < <1, os valores de e pode ser escolhido de forma
que: (APÊNDICE).
Teorema dois: (Auditoria 4) Se o back-end não calcular , ou de
maneira correta para cédulas na etapa 11, a probabilidade de que todos os registros no site
da autoridade eleitoral sejam consistentes no final do protocolo é
(APÊNDICE).
No que se refere às demonstrações das propriedades de privacidade de acordo Popovenuic
(2009), podemos citar:
Teorema três: Se os compromissos são perfeitamente ocultados e nenhuma informação é
revelada ao adversário computacionalmente ilimitado pelo back-end do tipo Punchscan
durante a etapa um.
Na etapa dois, duas categorias de informação podem ser divulgadas: 1) Qualquer uma das
duas funções é comprometida; 2) A relação entre as funções.
A ordem em que os compromissos são publicados é fixa e determinada e a relação entre as
funções é mantida oculta.
Teorema quatro: A etapa quatro não revela qualquer informação sobre as cédulas não
declaradas.
Prova. Seja . Como , e são independente , então revelando
, não é revelada qualquer informação sobre . Porque ambos e são
permutações pseudoaleatórias, mostrando algumas das pós-imagens das funções e mantendo
as funções ocultas.
Lema cinco: Para qualquer par de bijeção e bijeção tal que
66
Prova. Se então . Logo fazendo temos que
sempre existe porque é uma bijeção e, portanto, admite inversa.
A seguir são apresentados os resultados sobre a relação entre a privacidade do protocolo e o
número de pré e pós-imagens verificadas na etapa 12.
Lema seis: Se na etapa 12 a escolha requer que o compromisso com a seja aberto para todo
, nenhuma informação é revelada sobre a correspondência entre qualquer recibo e
.
Prova. Devido ao compromisso apenas um dos e são abertos, segue-se que função
não é revelada. A prova segue então diretamente do Lema 5. A mesma afirmação
pode ser feita quando todos são revelados.
Lema sete: Se na etapa 12 a escolha imprevisível requer que o compromisso com seja
aberto para um único , e para todo o resto, o recibo com o número de
série pode ser associado a um voto de purotexto.
Prova. . Como é uma permutação, também é conhecido.
Portanto, o recibo com o número de série está associado ao voto de purotexto conhecida a
posição
Na literatura clássica sobre voto uma variação do ataque acima é conhecida como
ataque, onde um adversário sabe votos e o registro, dessa forma, sabe o n-ésimo voto.
Lema oito: Suponha que na etapa 12 a escolha imprevisível requer que o compromisso para
seja aberto para os valores de , , onde é o número de cédulas expressas.
Então a privacidade de qualquer uma das cédulas correspondente, de acordo com a
definição cinco é . E qualquer uma das outras cédula é – (APÊNDICE).
Teorema nove: Suponha que, na etapa 12 a escolha imprevisível requer que o compromisso
para seja aberto para os valores de , , onde é o número de cédulas
expressas. Então nenhuma votação criptografada pode ser atribuída a uma cédula em
purotexto .
67
Prova. Do lema oito, o tamanho mínimo possível do conjunto privacidade é . No pior dos
casos, há pelo menos dois votos em purotexto que estão associados com um voto
criptografado .
Definições para a compreensão do teorema 10 é o conjunto de
cédulas criptografadas que contêm 0 em um determinado conjunto de posições,
denotada por . Seja o conjunto de cédulas em
texto claro “decodificado” que contêm 0 no conjunto das posições denotadas por
Teorema dez: Se a integridade verifica todos os passos, então um elemento da
só poderia ter vindo de um elemento da
Prova é uma conseqüência direta do fato de que tanto e não
alteram as entradas zero, nem a sua posição.
Em particular, se | UE (UndervotePattern) | = 1 para algum valor de UndervotePattern, então,
o recibo pode ser atribuído a uma cédula em purotexto.
5.2.4 Vantagens e desvantagens
A única primitiva criptográfica utilizada é uma função compromisso usada apenas na etapa
um do protocolo, todo o back-end pode ser explicado aos indivíduos que não estão
familiarizados com primitivas criptográficas, criptografia, decriptografia ou assinatura digital.
O back-end do Punchscan é extremamente eficiente. Na prática, os milhões de votos
criptografados podem ser transformados em cédulas de purotexto em minutos, utilizando um
computador doméstico.
Todos os dados utilizados pelo back-end do Punchscan é deterministicamente gerado. Isso é
necessário para corrigir os dados em etapas subseqüentes do protocolo. A aplicação back-end
do Punchscan oferece flexibilidade na escolha do modo específico pelo qual os dados são
gerados de forma determinística. Tais como, e podem ser simples versões da cifra de
68
mudança, em vez da cifra de substituição. Os compromissos podem ser implementados
usando qualquer um dos vários tratamentos.
Uma das desvantagens é a centralização do back-end. No exato momento em que os dados do
back-end são gerados a máquina da geração dos dados pode ser vista como uma entidade
centralizada.
5.2.5 Generalização do back-end do Punchscan
Segundo Popovenuic (2009) o back-end do Punchscan pode ser considerado como vários
pares de funções,
. Esses back-ends são todos configurados e utilizados para a mesma
eleição, proporcionando maior reforço de privacidade e reforçando propriedades de
integridade. Introduzindo pares na forma
, cada um associado com uma mistura
e
e com as funções
e
Observa-se que neste primeiro momento a análise é feita quando todos os pares
mapeiam a mesma entrada para a mesma saída. Neste aspecto, o autor cita algumas definições
que evidenciam tal argumento:
Definição 17: (back-end do Punchscan com múltiplas tabelas de decriptografia vinculadas).
Seja um back-end do Punchscan de acordo com a definição 16. Define-se um back-end do
Punchscan com múltiplas tabelas de decriptografia vinculada como um conjunto de back-end
do Punchscan , com cada mistura associada a
e
, e as funções
e
, tal que
Segundo a definição 17, cada função mapeia a mesma entrada para a mesma saída, ou seja,
cada recibo é mapeado para o mesmo purotexto na mesma posição.
Definição 18: (Punchscan back-end com múltiplas tabelas de decriptografia desvinculada)
Seja um Punchscan back-end de acordo com a definição 16. Defini-se um Punchscan
back-end com múltiplas tabelas de decriptografia desvinculada como um conjunto de back-
69
end do Punchscan , tal que, , tal que tal que
Cada função produz a mesma saída em termos de votos decifrados, mas ordenados de
forma diferente para cada back-end. Em seguida, as etapas do protocolo foram modificadas,
de modo a utilizar todos os . Várias possibilidades podem ser consideradas tais como:
• Compromissos relativos à linha: para cada na etapa 12, e para cada , qualquer
ou
, é revelado, mas nunca ambos, como anteriormente. Portanto, a
escolha de qual transformação parcial a auditoria faz é diferente para cada cédula, de cada
• Compromissos relativos à coluna: para cada na etapa 12 ou todo
é revelado, mas
nunca ambos. Para cada conjunto de transformações , a escolha de qual transformação
parcial a auditoria faz é a mesma para todas as cédulas.
Caso a segunda opção seja escolhida na etapa um não há necessidade de calcular os
compromissos separados para e
. Em vez disso, calcula-se os
compromissos para o par de funções
, que são publicados
separadamente, para todos Os compromissos são publicados separadamente para as
funções e
para todo . Isso reduz o número de compromissos para quase metade
melhorando a eficiência da operação
5.2.6 A influência dos parâmetros de configuração na integridade e privacidade
Neste, há quatro casos possíveis: compromissos relativos à linha com tabelas de
decriptografia vinculada, compromissos relativos à linha com tabelas de decriptografia
desvinculado, compromissos relativos à coluna com tabelas de decriptografia vinculadas e
compromissos relativos à coluna com tabelas de decriptografia desvinculada.
A etapa um do protocolo, não tem qualquer influência sobre a privacidade do sistema como
foi provado pelo Teorema quatro, e a probabilidade de não detectar um engano é mínima,
70
como provado pelo corolário dois, na etapa 12 do protocolo é analisado qual o impacto sobre
a integridade e privacidade.
Teorema 11. Para um back-end do Punchscan, com vinculado ou desvinculado nas tabelas
de decriptografia com compromissos relativos à linha e cédulas lançadas, suponhamos que
existem cédulas para que o back-end calcule incorretamente . Então, a
probabilidade de que os registros no site da autoridade eleitoral sejam consistentes no final do
protocolo é
(APÊNDICE).
Teorema 12. Para um back-end do Punchscan, com vinculado ou desvinculado nas tabelas
de decriptografia com compromissos relativos à coluna e cédulas lançadas, suponhamos que
existem cédulas para que o back-end não calcule corretamente . Então, a
probabilidade de que os registros no site da autoridade eleitoral sejam consistentes no final do
protocolo é
(APÊNDICE).
A garantia de integridade não depende do número de cédulas fraudadas, mas apenas de um
único parâmetro que pode ser corrigido antes da eleição. No entanto, para qualquer nível de
garantia de integridade, pode-se escolher o parâmetro de tal forma que o nível de
integridade seja garantido. Por exemplo, se queremos executar uma eleição com 99,9% de
garantia para que o resultado seja calculado corretamente a partir dos dados publicados,
devemos tomar
, aproximadamente 99,9%.
Teorema 13. Para um back-end do Punchscan, com vinculado ou desvinculado nas tabelas
de decriptografia com compromissos relativos à coluna e cédulas lançadas, a privacidade de
qualquer uma das cédulas no final do protocolo é (APÊNDICE).
Consideramos que o back-end do Punchscan inicia com as tabelas de decriptografia
vinculadas, então , ou seja, a ordem das saídas para todos os é a
mesma. Suponhamos que para cada auditoria a integridade é metade de transformações, e
está totalmente aberta; implicitamente a outra metade do também está aberta. Seja
o
conjunto das pré-images de que é aberto, e
o resto das pré-images de
. Podemos
deduzir que é a entrada que mapeia a saída plenamente revelada por
.
71
Para as eleições de grande escala é recomendada a utilização dos compromissos relativos à
linha, as tabelas de decriptografia desvinculadas e manter baixo entre 1 e 3, para que a
degradação de privacidade seja baixa e a integridade elevada, mesmo para uma pequena
margem. Uma margem de 0,01% significaria mais do que uma margem de 100 votos, o que
poderia traduzir-se em fraude pelo menos em 50 votos. Isto representa uma garantia de
integridade de pelo menos
.
Para uma eleição de pequeno porte recomenda-se o uso dos compromissos relativos à coluna
com entre 20 e 30. Garantindo um nível máximo de privacidade e um nível suficiente de
integridade
. Por exemplo, se , teria uma garantia de integridade de
,
aproximadamente 99,9999%.
5.3 Front-ends
As cédulas produzidas pelo front-end na etapa cinco no capítulo quatro, estão
situadas em duas categorias. Na primeira, as cédulas simétricas têm duas ou mais
partes com a mesma quantidade de informação, e qualquer uma das partes pode
recuperar o voto. Assim que as duas partes estão devidamente definidas, o eleitor confirma a criptografia do seu voto. Na segunda, as cédulas assimétricas são aqueles
que têm duas ou mais partes, onde a quantidade de informação é distribuída de
maneira desproporcional entre elas, sendo que uma parte específica recupere o voto.
O eleitor analisa as duas partes da apuração para confirmar que a voto criptografado
representa a sua cédula (POPOVENIUC, 2009)
Definição 19 (cédula simétrica). A cédula simétrica é a que tem partes e, quando a
combinação das partes do voto em purotexto é válida, uma única parte ou uma combinação
de partes menor que , não revela nenhuma informação sobre como o eleitor votou. Neste
aspecto, qualquer peça pode tornar-se um recibo.
Definição 20 (cédula assimétrica). Uma cédula assimétrica é a que tem partes e, quando a
combinação das partes do voto em purotexto é válida, uma única parte ou uma combinação
de partes menor que , não revela nenhuma informação sobre como o eleitor votou. Deste
modo, uma parte escolhida sempre torna-se um recibo.
72
Para garantir que as cédulas foram impressas corretamente na etapa cinco, utillizou-se a
técnica conhecida por corte-e-escolha do protocolo sobre o conjunto de cédulas disponíveis
no local de votação e distribuiu aos eleitores. Essa técnica funciona para cédulas simétricas e
assimétricas escolhendo-se aleatoriamente uma amostra dos votos de todas as cédulas. Estas
cédulas escolhidas estão claramente marcadas como auditadas ou danificadas, o front-end é
requisitado para abrir todos os compromissos assumidos que estão relacionados com as
cédulas escolhidas. Se os compromissos não são abertos corretamente, a auditoria das cédulas
é a prova evidente de erro.
Há dois problemas principais com a utilização da técnica de corte-e-escolha. Primeiro, ela
pode ser usada para montar um “ataque de negação de serviço”, indisponibilizando o sistema
e dessa forma comprometendo o processo eleitoral (MOORE; VOELKER; SAVAGE, 2001).
Os auditores podem solicitar a verificação da regularidade de impressão das cédulas que não
estão mais disponíveis para votação. Em segundo lugar, um auditor interno não pode ser
capaz de realizar uma auditoria de impressão em todos os locais de votação.
Teorema 14. (Erro de impressão em cédulas) Seja o número de cédulas disponíveis para os
eleitores em um local de votação, dos quais são impressas incorretamente. Se as cédulas
são escolhidas aleatoriamente de forma uniforme as cédulas e verificada a regularidade de
impressão, a probabilidade de que todas as cédulas sejam impressas de maneira correta é
min
.
Prova: decorre diretamente do lema 19. A segunda técnica só se aplica às cédulas simétricas.
Porque o voto é formado por muitas partes, todas contendo a mesma quantidade de
informações representando o recibo. A técnica corte-e-escolha pode ser aplicada a uma única
cédula cada eleitor escolhe aleatoriamente uma parte das cédulas como recibo e também
realiza a verificação da correção de impressão. Os dois teoremas supõem que uma cédula
simétrica é utilizada, e que a auditoria de regularidade de impressão é realizada pelos eleitores
verificando seus recibos para correção de impressão.
Teorema 15 (Erro de impressão em cédulas simétricas). Seja uma cédula simétrica com
partes, onde é o número de cédulas mal impressas do total das cédulas expressas. Se os
eleitores verificam os seus recibos, então a probabilidade de não detectar qualquer uma das
73
cédulas mal impressas é:
(2.5)
(APÊNDICE).
Nota-se que o teorema se refere ao número de cédulas mal impressas que foram lançadas
durante a eleição. Se as cédulas mal impressas não forem utilizadas, não serão detectadas sem
alteração do resultado das eleições.
Definição 21 (Recibo Prova). É um recibo de posse do eleitor não repudiável pelo sistema de
votação. O recibo prova pode ser considerado quando é produzido e assinado digitalmente
pelo sistema de votação. Caso isso não ocorra, é uma indicação incontestável de que existiu
algum erro.
Definição 22 (Recibo indicação). Um recibo indicação é usado para provocar uma
investigação adicional caso exista uma disparidade entre recibo de prova e os dados
publicados.
Eles fornecem apenas uma orientação de que algo pode ter dado errado. Estes podem ser
produzidos pelos próprios eleitores sem a assinatura de qualquer autoridade eleitoral não
sendo repudiáveis.
O recibo prova é transferível. O eleitor pode entregá-lo a uma organização confiante e delegar
a responsabilidade da verificação do recibo colocado no site da autoridade eleitoral, enquanto
que o recibo indicação não é transferível. Somente o eleitor sabe que o recibo indicação está
correto a partir da apuração.
5.3.1 Anexando o front-end do Punchscan para vários back-ends
Segue um modelo formal para uma disputa única. Onde denota o conjunto de números de
a , e não a classe de resíduos módulo . Seja x um vetor, podemos identificar a p-
ésima posição no vetor por . Denotamos um argumento de uma função tal como,
significa que a função não altera o primeiro argumento, independentemente
74
do que seja o segundo argumento .Esta notação não implica nada sobre o lado esquerdo do
sinal de igualdade e à direita sendo a direita igual ou diferente.
Seja o conjunto ordenado de candidatos em um disputa especial e a
cardinalidade do conjunto. Sendo que a ordem dos candidatos no conjunto é a mesma que
aparece na cédula. Seja e é um voto nulo.
Suponhamos que existem "cédulas virtuais" que o front-end obtém a partir do back-end.
Seja uma função bijetiva, onde é um conjunto de cardinalidade c
cujos elementos podem ser representados graficamente, e quaisquer par de funções
são diferentes e independentes . Seja
uma função bijetiva, onde quaisquer par de funções diferentes são
diferentes e independentes. representa a associação do candidatos aos símbolos no topo
das páginas da -ésima cédula e representa a ordem em que os símbolos aparecem na
página inferior da -ésima cédula.
Seja o número de candidatos permitidos que o eleitor pode escolher de
, vezes o produto cartesiano de com ele mesmo.
Definição 23 (front-end do Punchscan). Seja uma função tal que:
1) ; 2) se somente se ; 3)
se somente se . Então é denominado front-end do sistema Punchscan.
Etapas sob responsabilidade front-end do Punchscan:
3) O front-end é iniciado com base em informações obtidas com o back-end na etapa dois,
front-end do Punchscan calcula secretamente para todo e publica no site
da autoridade eleitoral os seus compromissos T , . Para cada
função, os compromissos são publicados na ordem ascendente do índice onde ;
4) Tanto o back-end e front-end são verificados quanto à correção, só será necessário caso as
funções e na etapa anterior tenham sido geradas pelo front-end baseado na informação
que recebeu do back-end. Se este for o caso, um subconjunto imprevisível dos índices
é gerado publicamente. Sendo que para cada um front-end publica
no site eleitoral.
75
5) O front-end imprime as cédulas e as distribui para os locais de votação, para cada cédula
o front-end imprime na página superior e na página inferior;
6) As cédulas são reunidas e cada cada página superior é emparelhada com a sua página
inferior tendo ambas o mesmo número de série;
7) As cédulas são entregues aos eleitores para serem votadas e o front-end prova que as
mesmas foram corretamente impressas: (a) ao eleitor é permitida a escolha de qualquer
cédula das disponíveis; (b) antes de ver uma cédula, um eleitor se compromete com a página
de ou , para manter sob sua posse o recibo, caso escolha a pagina superior; (c) o front-end
publica no site da autoridade eleitoral que a informação escolhida pelo eleitor foi a página
inicial para número de série, o front-end publica ; (d) o eleitor recebe a cédula e vota;
(e) o eleitor escolhe o seu voto em texto claro e calcula marcação dos
furos que têm os símbolos correspondentes aos seus candidatos;
8) As cédulas são desmontadas e um recibo é produzido para o eleitor que separa a parte
superior da inferior, a página que o eleitor escolheu na etapa anterior é digitalizada e mantida
pelo eleitor como um recibo, enquanto a outra eliminada.
O front-end do Punchscan usa cédulas em duas partes simétricas e produz um recibo prova.
Assim, os teoremas da integridade geral para estes tipos de cédulas são aplicados aos recibos.
Lema 18. Seja um elemento aleatório em . Para qualquer existe
tal que .
Prova: segue diretamente do lema cinco.
Conjecturamos que, a página eliminada pelo eleitor, será sempre mantida em sigilo por
questões de segurança relacionada à privacidade, as quais devem seguir as seguintes medidas:
1) não deve existir vazamento de informações sobre ou na cadeia de custódia
da produção, e impressão de cédulas; 2) nenhum funcionário vê mesmo que o eleitor
escolha a parte superior do recibo, e caso escolha a parte inferior; 3) , é
eliminado de tal forma que impossibilita a recuperação mesmo que eleitor escolha o recibo da
parte superior, ou caso a escolha seja a parte inferior.
76
Teorema 16 (sigilo da cédula Punchscan). O recibo criado pelo front-end do Punchscan não
revela nada mais do que o número de candidatos que o eleitor escolheu (APÊNDICE).
5.3.2 Relação matemática: o front-end do Punchscan com o back-end do Punchscan
O front-end do Punchscan juntamente com a back-end do Punchscan é uma combinação
descrita por Popoveniuc (POPOVENIUC, 2006). A relação matemática que associa o front-
end com o back-end é composta por:
Definição 24 (sistema de votação Punchscan). Seja um back-end do Punchscan pela
definição 16 e um front-end do Punchscan pela definição 23. Os dois formam um sistema
de votação se e somente se tal que .
Portanto, se a saída do front-end é a entrada para o back-end, o back-end de saída é uma
mistura do front-end de entrada.
As relações das etapas envolvidas correspondem a: 1) O back-end dá todas as informações
necessárias para o front-end, o back-end do Punchscan dá para o front-
end; 2) o front-end é iniciado: O front-end do Punchscan calcula e tal que
.
5.3.3 Front-end do Punchscan com back-end da mixnet do tipo cebola
Na etapa dois do capítulo quatro, o front-end do Punchscan obtém da mixnet do tipo cebola as
chaves públicas de cada mix. Na etapa três, o front-end do Punchscan está configurado da
seguinte forma:
1) Cada gera aleatoriamente e
2) Para cada par , o front-end do Punchscan calcula
77
3) Para cada ,o front-end do Punchscan calcula tal que ,
Onde é o número de chaves públicas recebidas na etapa anterior e a ordem da mistura no
mixnet é de ... Note que o não tem o primeiro número de série das cédulas. Isso
acontece porque a mixnet tem autonomia para escolher o seu caminho.
4) Para cada cédula o front-end calcula a cebola associada a ele: , onde
é a chave pública do -ésimo mix e representa a encriptação de com a chave
5) O front-end do Punchscan publica todas as cebolas calculadas na etapa anterior, ,
juntamente com todos os compromissos para a e . A correção marcada na etapa
quatro referida no capítulo quatro faz com que o front-end revele , juntamente
com todos os para uma cédula especial. Em seguida, a cebola pode ser recriada e
comparada com o que foi publicada.
5.3.4 Generalização
A centralização da autoridade que gerencia o front-end do Punchscan pode representar um
possível risco visto que em alguns ataques é possível recriar a autoridade que ainda se
encontra de posse de todas as informações e dessa forma quebrar o sigilo do voto.
A distribuição da autoridade pode utilizar uma autoridade para gerar e outra separadamente
para gerar , existindo assim um back-end para cada autoridade. Cada back-end é capaz de
gerar parcialmente o recibo dos eleitores. Depois que todos os back-ends transformam o
recibo dos eleitores, o resultado final é cédula em purotexto.
A autoridade do front-end cria uma transformação e se associa com um back-end que inverte
essa transformação, sendo a cédula o resultado de várias transformações. Em outras palavras o
front-end do Punchscan é uma aplicação de duas transformações sendo (página superior) e
(página inferior). Caso o eleitor escolha uma das páginas, o front-end aplica uma
transformação, seu recibo é mantido para contraprova reportando para o back-end asssociado
a página oposta, transformando o resultado em uma cédula de purotexto.
78
Observe que a entidade que produz o voto em texto claro ainda conserva o poder de vincular
um recibo a um voto em purotexto. Para resolver este problema, basta usar um maior número
de autoridades. Assim, autoridades como o front-end e back-end podem ser usadas desde
que as operações realizadas sejam comutativas. Portanto, as cédulas consistiriam de
transformações e o eleitor escolheria uma como recibo, destruindo todas as outras
páginas. O texto original pode ser recuperado a partir do recebimento da pelo back-end.
Isso permite que o eleitor escolha as páginas para formar uma cédula. Enquanto no Punchscan
clássico, as duas páginas têm o mesmo número de série, com essa generalização, qualquer
combinação de números de série faz sentido, desde que as páginas sejam geradas por
diferentes front-ends. Isso trás uma incrível redução na necessidade de uma cadeia rigorosa de
custódia para proteger a privacidade da impressão nos locais de votação.
5.4 Anexando códigos ao nome dos candidatos
Uma característica do front-end do Punchscan é o scaneamento dos recibos sem a
identificação dos votos em purotexto, pois qualquer identificação das informações que o
eleitor deixa na página não deve ser associada a um voto em purotexto. Entretanto possui
limitações, uma vez que o scanner não calcula um registro ele apenas informa. Entretanto, no
Scantegrity que é uma evolução do punchcsan que combina a aleatoriedade de duas folhas em
uma única (POPOVENIUC, 2008), ocorre o inverso, ou seja, o scanner lê a cédula em
purotexto enquanto o eleitor criptografa o recibo. Para que isso aconteça é necessário que o
front-end do Scantegrity utilize apenas a função . Para cada cédula temos função
associada a um conjunto de símbolos para os candidatos na cédula.
79
Figura 9 - Cédula de leitura óptica. Os candidatos são listados em uma ordem fixa em todas as cédulas e não há
um local designado ao lado de cada candidato, para um eleitor marcar.
FONTE – SHEN, 2008., p. 25
Figura 10 - Cédula Scantegrity em uma apuração regular com leitura óptica, ao lado de cada oval há um símbolo
diferente.
FONTE - SHEN, 2008., p. 25
Definição 26 (front-end do Scantegrity). Seja uma função bijetiva,
onde é um conjunto cujos elementos podem ser representados graficamente, e quaisquer
duas funções diferentes são independentes . é dita uma
função front-end do Scantegrity.
Para uma cédula , corresponde ao candidato ver (FIG 10). O conhecimento de
não revela nenhuma informação sobre para ou seja, o código para o
candidato na cédula não revela qualquer informação sobre o código para o candidato na
cédula (FIG. 11). Por serem independentes, o conhecimento do voto
80
lançado para qualquer símbolo em particular não fornece nenhuma vantagem estatística para
determinar qual candidato recebeu o voto.
Após o eleitor marcar um voto para o candidato desejado, o mesmo pode anotar os símbolos
ao lado do candidato. Chaum (2008b) afirma que para todos os candidatos votados em cada
cédula, o front-end irá calcular e publicar os símbolos que estão ao lado dos candidatos
votados que devem ser os mesmos símbolos que o candidato escreveu em baixo.
Figura 11- Diferentes cédulas Scantegrity. Em duas votações diferentes, a ordem dos símbolos associados com
os candidatos pode ser diferente.
FONTE - SHEN, 2008., p. 28
Figura 12 - Representação do número de série em uma cédula de leitura óptica. Este formato permite que um
scanner sensor leia, verificando que os dígitos são negros.
FONTE - SHEN, 2008., p. 28
O número de série de cada cédula é impressa de maneira que permite a fácil varredura
determinando se uma forma geométrica é preenchida ou não. O conjunto de formas pode ser
definido de acordo com cada disputa. A saída do scanner é uma lista pré-determinada de cada
posição geométrica. Portanto, as informações armazenadas pelos scanners determinam quais
foram as posições preenchidas onde algumas destas posições representam o número de série.
5.4.1 Resolução dos conflitos de interesses
81
Se o scanner de leitura e interpretação de cédula de leitura óptica é equipado com uma
impressora, pode ler os símbolos diretamente a partir da cédula e imprimir os símbolos ao
lado dos candidatos marcados. Isso equivaleria a produzir uma contraprova. O eleitor deve
verificar se o símbolo do recibo é mesmo ao lado do seu candidato.
Caso o scanner não esteja equipado com uma impressora, o eleitor teve produzir o seu recibo.
Cada página da cédula impressa tem uma parte concebida para auxiliar o eleitor na produção
de um recibo, denominado de nota. Usando uma caneta, este pode escrever na nota os
símbolos ao lado do seu candidato
A cédula é colocada no scanner óptico, na presença de um oficial da eleição o eleitor destaca
a nota, na qual esta é carimbada pelo fiscal, para certificar que de fato se trata da cédula
lançada. O eleitor mantém a nota e usa-a para verificar se os símbolos escritos por ele estão
corretamente postados no site da autoridade eleitoral.
Se o eleitor vê os símbolos corretos no site da autoridade eleitoral ele pode ter certeza de que:
1) o scanner leu corretamente seu voto; 2) o front-end corretamente transformou o seu voto
em purotexto no símbolo que ele viu; 3) o front-end corretamente entregou seu recibo ao
back-end.
Todas as cédulas são identificadas por números de série, que têm os mesmos símbolos
postados no site da autoridade eleitoral. Caso haja necessidade de uma impugnação, o front-
end recupera as cédulas de papel a partir do armazenamento. Cada cédula é colocada em um
envelope que esconde a parte da cédula onde os nomes dos candidatos são marcados pelo
eleitor, mas expõe a parte onde a nota foi destacada, juntamente com o número de série da
cédula. Cada eleitor fornece um número que está marcado com um carimbo válido cada nota é
compensada com a cédula de papel fornecida pelo front-end. Se a nota validada e carimbada
não corresponder a cédula com o mesmo número de série, então está provado que o front-end
substituiu a cédula de papel.
Esta técnica permite ao Scantegrity fazer uma prova única para todos os boletins de voto que
tenham os mesmos símbolos postados no site eleitoral (CHAUM, 2008b). No entanto, é
necessário que o eleitor guarde a nota.
82
5.4.2 Scantegrity II
Os símbolos dentro da oval com tinta invisível são impressos. Quando o oval ao lado do
candidato é marcado com uma caneta especial, o código aparece. O fundo do oval fica preto
para permitir que o scanner óptico detecte, enquanto que o código dentro do oval fica
amarelo. O eleitor só pode ler o código marcando o oval e, assim, o scanner irá detectar o oval
preenchido. Chamamos esse mecanismo de Scantegrity II.
O protocolo de resolução de litígios pode ser modificado para tirar vantagem desta técnica:
enquanto a primeira versão do Scantegrity usava algo que o eleitor mantinha, a nota, segundo
Chuam (2008a) o Scantegrity II usa os códigos ao lado do seu candidato. Caso o eleitor
verifique no site eleitoral que o código ao lado do candidato não está corretamente postado,
ele pode preencher uma petição on-line, contendo o número de série da cédula junto com o
código do eleitor.
Nesse caso, o autor supracitado afirma que o front-end abre todos os compromissos
correspondentes ao número de série e verifica se todos os compromissos e o código fornecido
pelo eleitor não está entre os códigos revelados, significa que o eleitor cometeu um erro ao
escrever o código. Entretanto se o código fornecido pelo eleitor está entre os códigos
revelados, significa que o eleitor simplesmente adivinhou o código ou o front-end foi
enganado.
Uma vantagem ao usar tinta invisível é que a tinta pode ser feita de tal forma que ela reage
lentamente ao tempo, com os produtos químicos na caneta de marcação. Por exemplo, os
códigos dos ovais podem ficar pretos, de 12 a 16 minutos em média após ser marcado. Assim,
no final do dia, quando as cédulas de papel são retiradas das urnas, todas as cédulas só são
vistas através da leitura óptica cédulas e os símbolos não são visíveis.
83
Figura 13 – A esquerda a imagem da cédula a ser impressa, ao centro a cédula de papel sem marca e a direita a
cédula de papel marcada com uma caneta especial e assinada pelo eleitor com o código revelado.
FONTE – SHEN, 2008., p. 32
5.4.3 Vantagens e desvantagens Scantegrity II
O sistema Scantegrity II herda todas as propriedades dos sistemas tradicionais de leitura
óptica. A interface de votação é muito familiar para os eleitores, o Scantegrity II pode ser
adicionado a todas essas variações de forma discreta. O equipamento utilizado para digitalizar
e registrar as cédulas seriam compatíveis com a nova forma de marcação das cédulas,
tornando o sistema muito barato se comparado ao de leitura óptica.
No Scantegrity II, não há necessidade de uma cadeia rigorosa de custódia após votação, visto
que todas as cédulas são imperceptíveis aos olhos humanos depois que são retiradas das
urnas. O Scantegrity I e Scantegrity II apresentam nesse sentido uma grande vantagem em
relação às cédulas front-end do Punchscan ou Prêt à Voter.
A verificação do voto por parte do eleitor é fácil, pois basta digitar o número de série da
cédula e verificar se os códigos de confirmação que escreveu sobre a nota são os mesmos que
foram publicados.
A principal desvantagem dos sistemas Scantegrity é a exigência de um esforço para criar o
recibo do eleitor. O voto é uma ação, a criação de um recibo mantido pelo eleitor e sua
84
verificação posterior são ações distintas que o mesmo tem que realizar, caso queira ser uma
parte ativa da verificação de integridade.
5.4.4 Má-impressão de cédulas no Scantegrity
Alguns métodos são utilizados para detectar formas de fraudes. Nesse sentido, a digitalização
óptica de voto e o Scantegrity são separados. Os métodos de fraudes são diferentes para cada.
1) A ordem dos candidatos está correta, a ordem dos códigos é incorreta e que o scanner
detecta ovais pretas: O oval preto será traduzido pelo back-end em um código que é diferente
do visto pelo eleitor. Assim, o eleitor pode detectar que o engano ocorreu.
2) A ordem dos candidatos está correta, a ordem dos códigos é incorreta e o scanner lê
códigos, mas não preenche os ovais. Esse tipo de fraude é detectada através das auditorias de
impressão.
3) A ordem dos candidatos está correta, a ordem dos códigos é incorreta e o scanner lê os
códigos e os ovais. Suponha que o registro é calculado pelo scanner com base na leitura das
ovais pretas e que o back-end manda para o scanner os códigos, das ovais não pretas. Logo o
registro produzido pelo scanner é incompatível com o registro produzido pelo back-end.
Suponha que o registro é calculado pelo scanner com base na leitura das ovais pretas e que o
back-end envia para o scanner as ovais pretas e não os códigos. O oval preto será traduzido
pelo back-end em um código que é diferente do que o eleitor viu. Assim, o eleitor irá detectar
que o engano ocorreu.
4) A ordem dos candidatos é incorreta, a ordem dos códigos está correta e o scanner detecta
ovais pretas. Esta a fraude não é detectada pelo eleitor, pois as ovais pretas são traduzidas
como os códigos corretos que o eleitor viu no boletim público. O voto é interpretado de forma
diferente do que o eleitor viu, por ambos o scanner e o back-end.
5) A ordem dos candidatos é incorreta, a ordem dos códigos está correta e o scanner lê os
códigos, mas não preencheu os ovais. Esta a fraude não é detectada pelo eleitor, pois o eleitor
85
vê no boletim de avisos o código que o scanner leu e apenas um registro, calculado pelo back-
end. Esse tipo de fraude é detectado através das auditorias de impressão.
6) A ordem dos candidatos é incorreta, a ordem dos códigos está correta e o scanner lê tanto
os códigos quantos os ovais. Esta a fraude não é detectada pelo eleitor, pois não importa se os
códigos no boletim de avisos vêm diretamente do scanner, os códigos que o eleitor vê no
boletim de avisos são consistentes com os códigos que o eleitor viu na cabine.
7) Os códigos são corretamente atribuídos aos candidatos, mas a ordem dos candidatos está
incorreta e o scanner detecta as ovais pretas. A oval preta será traduzida pelo back-end em um
código que é diferente daquele que o eleitor viu. Assim, o eleitor irá detectar que ocorreu um
engano.
8) Os códigos são corretamente atribuídos aos candidatos, mas a ordem dos candidatos está
incorreta e o scanner lê os códigos, mas não preenche as ovais. Não ocorre fraude os códigos
que o scanner lê corretamente são transformados pelo back-end no voto pretendido dos
eleitores.
9) Os códigos são corretamente atribuídos aos candidatos, mas a ordem dos candidatos está
incorreta, o scanner lê os códigos e as ovais. Para essa situação vamos supor que o registro é
calculado pelo scanner com base na leitura das ovais pretas e que o back-end obtém do
scanner os códigos, e as ovais não pretas. Em seguida, o registro produzido pelo scanner é
incompatível com o produzido pelo back-end. Suponha que o registro é calculado pelo
scanner com base na leitura das ovais pretas e que o back-end recebe do scanner as ovais
pretas e não os códigos. A oval preta será traduzida pelo back-end em um código diferente do
que o eleitor viu. Assim, o eleitor irá detectar que ocorreu um engano. Além disso,
Scantegrity detecta se ocorreu alguma incoerência.
5.4.5 União do front-end do Scantegrity com o back-end da mixnet tipo cebola
Na etapa dois, citada no capítulo quatro, o front-end do Scantegrity recebe a partir de cada
combinação da mixnet sua chave pública. Na etapa três, o front-end do Scantegrity está
configurado como:
86
1) Para cada é gerado aleatoriamente e logo =
2) Para cada , o Scantegrity-front-end calcula tal que ,
Onde é o número de chaves públicas recebidas na etapa anterior e a ordem da mistura no
mixnet é dada por .Note que não tem o primeiro índice. Isso porque o mixnet
determina o caminho a ser tomado;
3) Para cada cédula, o front-end calcula a cebola associada onde é a chave
pública do j-ésimo mix representa a encriptação de com a chave
4) O Scantegrity front-end publica todas as cebolas calculada na etapa anterior, ,
juntamente com todos os compromissos para ;
Quando o front-end verifica a correção na etapa quatro citada no capítulo quatro, revela
, juntamente com todos os para uma cédula especial. Em seguida, a cebola pode ser
recriada e comparada com o que foi publicado.
5.4.6 União do front-end do Scantegrity com a mixnet back-end do Punchscan
Na etapa dois, o Scantegrity front-end inicia com o back-end do pucnhscan, um conjunto de
funções que traduzem pares de números de série das cédulas e misturam os votos em
purotexto. Segue abaixo a configuração na etapa três do front-end do Scantegrity.
1) O back-end dá todas as informações necessárias para o front-end: o back-end do punchscan
dá ao front-end uma função de , tal que .
2) O front-end é iniciado, o front-end do Scantegrity gera tal
que .O front-end publica os compromissos de todos os . A função
T é impressa na cédula. Quando o valor de é conhecido o recibo dos eleitores, torna-se
público sendo transmitido ao back-end.
87
6 CONCLUSÃO
A partir da análise comparativa, avaliou-se no presente trabalho alguns sistemas eletrônicos
de votação baseados em mixnet tais como, criptografia visual, Prêt à Voter, Punchscan,
Scantegrity e Scantegrity II, os quais utilizam esquemas criptográficos para garantir os
princípios democráticos que regem o processo eleitoral de um país.
Nesta análise, foram levadas em consideração as vantagens e limitações de cada sistema de
votação, no que se refere aos aspectos ligados à privacidade, integridade do voto e as
seguintes propriedades: materialização do voto, contraprova, auditabilidade e co-
responsabilidade.
De acordo com Chaum (2004), a aplicabilidade da criptografia visual, no sistema de votação,
oferece subsídios essenciais que possibilitam ao eleitor a impressão da contraprova,
garantindo a privacidade e que os votos sejam incluídos de maneira correta na apuração. Essa
técnica criptográfica apresenta como vantagens, a aleatoriedade na ordem dos candidatos,
listados na cédula, sem causar qualquer interferência no processo de votação; a criação
automática do recibo; e a facilidade na resolução dos conflitos de interesse.
Entretanto, há indícios que mostram a possível associação do eleitor ao voto, o que causaria a
quebra da privacidade (CONEY, 2005). Ademais, os eleitores não estão familiarizados com a
votação em duas camadas, a verificação da corretude do voto destes eleitores, se torna difícil
visto que devem conferir se os nomes estão corretos, e se cada pixel em seu recibo é igual à
imagem postada. O aumento no número de candidatos por eleição exige uma alta resolução de
impressão, o que aumenta o custo. O uso dessa técnica inviabiliza uma possível recontagem
manual por não existir um registro permanente dos votos.
Em relação ao Prêt à Voter, Chaum (2005a) explana de maneira clara a existência da
aleatoriedade nos nomes dos candidatos nas cédulas, deixando evidente que a própria marca
ao lado do nome do candidato é a criptografia do voto. Esse sistema utiliza o esquema da
mixnet, semelhante ao sistema de votação baseado na criptografia visual e à criação
automática do recibo. A cédula possui uma única folha com perfuração vertical que após ser
marcado pelo eleitor, o lado direito é digitalizado e publicado. Posteriormente, ele pode
confrontar o seu recibo de contraprova com a versão publicada.
88
Para a verificação do eleitor é observado se as posições marcadas no recibo são iguais às
publicadas. Em relação ao custo, esse sistema não necessita de uma impressora especial como
no sistema de votação baseado em criptografia visual, sendo que um único scanner de baixa
resolução é suficiente por zona eleitoral o que diminui efetivamente os custos. Este scanner
não calcula o registro, somente informa o relatório no final do processo, o que impossibilita a
recontagem manual em caso de conflito de interesse.
No entanto, como aponta Chaum (2005a) possui limitações tais como, a criação obrigatória de
uma cadeia de custódia com o intuito de desvincular qualquer possibilidade de associação
entre as cédulas em purotexto e os recibos, e a exigência da aleatoriedade na ordem dos
nomes dos candidatos.
Quanto à cédula Punchscan, a semelhança existente ao sistema baseado em criptografia
visual, no que se refere à cédula, possui duas partes que são sobrepostas para visualizar as
opções de voto. No sistema de votação baseado na criptografia visual, o eleitor tem autonomia
para escolher qual parte será a contraprova. Neste aspecto, no Pucnhscan de acordo com
Popovenuic (2006) a página mantida será aquela com qual o eleitor se comprometeu, e o
problema do alinhamento é prático de ser tratado comparado ao sistema de criptografia visual.
No que se refere às vantagens, o Punchscan possui a criação automática do recibo como no
Pret à Voter. Em caso de conflito de interesses, deve-se analisar se a marca correta do furo
aparece no site eleitoral, e se a ordem dos símbolos no seu recibo é a mesma do site. O custo
para a realização da eleição é relativamente baixo, no que se refere aos recursos necessários,
para cada zona eleitoral. Entretanto, na produção das cédulas o custo é alto, visto que são
necessárias duas páginas para a votação. Ademais, é preciso que as páginas superiores sejam
perfuradas com alto grau de precisão, e as duas devem ser impressas em equipamentos
especiais que obedeçam às coordenadas definidas pelo computador.
No que tange à privacidade dos eleitores, o Punchscan exige uma rigorosa cadeia de custódia
das cédulas. De acordo com Essex (2007) não existe possibilidade de recontagem manual
devido à ausência dos votos em purotexto no local da votação. È relevante pontuar que o
sistema de votação Prêt à Voter e o Punchscan não suportam pressão na escrita.
O Scantegrity é um aperfeiçoamento do Punchscan associado a uma única página. Neste, o
nome do candidato é precedido de um código sem, contudo seguir uma ordem (CHAUM,
89
2008b; POPOVENUIC, 2008). A letra marcada é destacada e postada no site da autoridade
eleitoral, caso exista alguma incoerência na conferência dos dados postados, o eleitor pode
solicitar um litígio. No entanto, para assegurar a privacidade do leitor o protocolo de
resolução de litígios deve ser complexo. O que significa dizer que, caso não ocorra esta
complexidade é possível que o sigilo entre as partes seja violado.
O Scantegrity II representa um avanço significativo dos sistemas de votação de leitura óptica
auditável fim-a-fim. Este permite ao eleitor verificar se o seu voto é processado corretamente,
sem a inserção de equipamento adicional no local de votação (CHAUM, 2008a). Informações
extras são impressas nas cédulas de leitura óptica durante a produção, mas o método pelo qual
o eleitor marca sua cédula não é adulterado, o sistema favorece a verificabilidade das
principais etapas do processo de votação.
A verificabilidade por parte do eleitor ocorre quando este observa se todas as cédulas
depositadas são incluídas sem adulteração na contagem dos votos, uma propriedade que não é
garantida nos sistemas com VVPAT. Ademais, proporciona a universalidade da verificação,
visto que, qualquer indivíduo pode verificar se de fato todos os votos foram contabilizados
como registrado. Isso posto, a integridade será garantida caso tenha um número mínimo de
eleitores participando da verificação.
Esse sistema oferece diversas vantagens em relação aos demais sistemas de votação
verificáveis fim-a-fim, como por exemplo a compatibilidade com a tecnologia de
digitalização óptica, imunidade a ataques de randomização, e o alto nível de integridade visto
que nenhuma informação escolhida pelo eleitor é visível. Entretanto, deve-se ter um controle
mais rigoroso em relação às cédulas de identificação e aos códigos de confirmação usados,
tendo em vista preservar a privacidade do sistema.
Diante das análises realizadas nas fontes consultadas para a elaboração deste trabalho, notou-
se que a aplicação dos sistemas mencionados tem facilitado o andamento no processo
eleitoral, tornando mais célere a apuração dos resultados. A segurança proporcionada pela
utilização de modernos métodos criptográficos garante a materialização do voto, e a
impressão da contraprova favorecendo a auditabilidade.
Desta forma, o eleitor tem a possibilidade de participar de maneira direta e efetiva no
processo de fiscalização da eleição. Outro aspecto digno de nota refere-se que em ambos os
90
sistemas são eficientes, e possuem algumas propriedades desejáveis para garantir a lisura dos
sistemas de votação, entretanto eles ainda não conseguem ser imunes à coação dos eleitores.
Assim sendo, novos trabalhos serão de grande relevância para a contemporaneidade de modo
a garantir que, os sistemas de votação sejam compatíveis com as respectivas leis eleitorais de
cada país que os utilizam; melhoria da usabilidade e maior eficiência na resolução de
problemas vinculados à coação, aumento no nível de integridade do sistema para que estes
possam ser utilizados em eleições de grande porte, e à criação de um protocolo de voto sem a
necessidade de uma única autoridade de voto.
91
REFERÊNCIAS
ADIDA, B; RIVEST, R L. Scratch & Vote: self-contained paper based cryptographic voting.
In: WPES ’06: Proceedings of the 5th ACM workshop on Privacy in electronic society, New
York, p. 29-40, 2006.
BELLIS, M. The history of voting machines Disponível em: