análise de segurança em sistema eletrônico

103
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

Upload: others

Post on 16-Oct-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

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

ANÍSIO ANDRÉ SANTOS JÚNIOR

ANÁLISE DE SEGURANÇA EM SISTEMA ELETRÔNICO DE

VOTAÇÃO BASEADO EM MIXNET

Dissertação apresentada ao Programa de Pós-

graduação em Ciência da Computação do Centro

de Informática da Universidade Federal de

Pernambuco como requisito parcial para obtenção

do grau de Mestre em Ciência da Computação.

Orientador: Dr. Ruy José G. B. de Queiroz

Recife

2010

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,

Figueiroa, Eliana, Grace, Maridete, Urânia, Gefferson, Nilson, Roque, Teófilo e Valber.

Aos amigos-irmãos do Mestrado Liana Beatriz e Ricardo Schmidt pela confiança, conselhos,

amizade e companheirismo durante todo o processo do mestrado.

Às queridas Lia e Iza pelas constantes orações para que continuasse a persistir na conquista

deste grande sonho.

Aos meus caros amigos-irmãos, Emanuel Abelha, Eber Ribeiro, Arthur Felippe, Adailton,

Rafhael Antonello e Kalil pela paciência e atenção nos momentos de dificuldade.

“A vida sem ciência é uma espécie de

morte”.

(Sócrates)

RESUMO

O presente trabalho objetiva avaliar os sistemas de votação baseado em mixnet (criptografia

visual, Prêt-à-Voter, Punchscan, Scantegrity e Scantegrity II) quanto às seguintes

propriedades: materialização, contraprova, auditabilidade, co-responsabilidade. Para tanto, a

metodologia utilizada foi uma análise comparativa dos sistemas citados. Foram evidenciadas

suas vantagens e limitações, em termos de, verificabilidade, confidencialidade, integridade e

privacidade garantidas pelos componentes dos sistemas (back-ends e front-ends) favorecendo

a segurança e transparência nas etapas do processo da eleição, condições essenciais para que o

cidadão possa avaliar a confiabilidade desses sistemas. Diante das observações feitas no

decorrer deste estudo, notou-se que a aplicação dos sistemas tem facilitado o andamento no

processo eleitoral, tornando-o mais célere e seguro na apuração dos resultados. A utilização

de modernos métodos criptográficos, de certo modo, garante a materialização do voto e

impressão da contraprova, proporcionando a auditabilidade. Os resultados da análise indicam

entre outros aspectos, que tanto o sistema de votação baseado em criptografia visual quanto o

Prêt à Voter apresentam semelhanças em relação aos fatores que propiciam a transparência no

processo da eleição, tais como, a impressão da contraprova, a verificabilidade do voto por

parte do eleitor e o esquema criptográfico usado. Outro aspecto refere-se à privacidade, na

qual indícios mostram que uma possível associação do eleitor ao voto, causaria a quebra da

privacidade. Novos trabalhos serão de suma importância, de modo a contribuir na melhoria

dos sistemas de votação para que estes 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.

Palavras-chave: Segurança em votação eletrônica; Criptografia; Contraprova do voto;

Sistema baseado em mixnet.

ABSTRACT

This study aimed to evaluate the voting systems based on mixnet (visual cryptography, Prêt-à-

Voter, Punchscan, Scantegrity and Santegrity II) on the following properties: materialization,

rebuttal, auditability, mutual accountability. Therefore, the methodology was a comparative

analysis of systems cited. It was shown its advantages and limitations, in terms of,

verifiability, confidentiality, integrity and privacy guaranteed by the components of the

systems (back-ends and front ends) ensuring security and promoting transparency in the

election process steps and thus provide favorable conditions for that citizens can assess the

reliability of these systems. Given the comments made during this study, we noted that the

implementation of systems has facilitated progress in the electoral process, making it faster

and more secure in the calculation of results. The security provided by use of modern

cryptographic methods in a way guarantees the materialization of the vote, and printing

Rebuttal providing auditability. The results of the analysis indicate among other things, that

both the voting system based on visual cryptography as to Voter Prêt have similarities with

respect to factors that contribute to transparency in the election process, such as printing the

rebuttal, the verifiability of vote by the voter and the cryptographic scheme used. Another

aspect relates to privacy, in which evidence shows that a possible association of the voter to

vote, cause the loss of privacy. Further work will be of paramount importance in order to

contribute in improving voting systems so that they are compatible with the relevant electoral

laws of each country that use them, increasing the usability and efficiency in solving problems

associated with coercion, increase in level of integrity of the system so that they can be used

in large elections, and the creation of a memorandum of voting without the need for a single

authority to vote.

Keywords: Electronic voting security; Cryptography; Vote receipt; Mixnet-Based System.

LISTA DE ILUSTRAÇÕES

Figura 01- Faces sobrepostas originando um texto legível .................................................... 27

Figura 02- Face utilizada como recibo e com texto legível ................................................... 27

Figura 03- Face destruída pela autoridade eleitoral junto ao eleitor....................................... 28

Figura 04- Pixels formadores da imagem nas camadas ......................................................... 28

Figura 05- Construção da imagem a partir das duas faces ..................................................... 29

Figura 06- Visão geral do processo ...................................................................................... 36

Figura 07- Modelo de cédula Punchscan .............................................................................. 48

Figure 08- Fases da eleição no Punchscan ............................................................................ 50

Figura 09- Cédula de leitura óptica ....................................................................................... 79

Figura 10- Cédula Scantegrity .............................................................................................. 79

Figura 11- Diferentes cédulas Scantegrity ............................................................................ 80

Figura 12- Representação do número de série em uma cédula de leitura óptica .................... 80

Figura 13- Cédula Scantegrity II .......................................................................................... 83

LISTA DE ABREVIATURAS

CVV - Criptography Visual Voting

DRE - Direct Recording Electronic

EAC - Election Assistence Commission

E2E – End-to-end Verifiable Voting Systems

HACA - Help America Vote Act

IBM - International Business Machines

IEEE - Institute of Electrical and Electronics Engineers

IVVR - Independent Voter Verifiable Records

MIT - Massachusetts Institute Tecnologicy

RPC - Randomized Partial Checking

RSA – Rivest Shamir Adleman (Criptography System)

SPBB - Secure Public Bulletin Board

VVPAT - Voter Verifiable Paper Audit Trails

VVSG - Voluntary Voting System Guildelines

ZKP - Zero-Knowledge Proofs

SUMÁRIO

1 INTRODUÇÃO ................................................................................................................ 12

1.1 Motivação................................................................................................................... 12

1.2 Objetivos .................................................................................................................... 14

1.3 Organização................................................................................................................ 15

2 O PROBLEMA DA VOTAÇÃO ...................................................................................... 16

2.1 Sistema de votação ..................................................................................................... 16

2.2 Sistemas eletrônicos de votação .................................................................................. 19

2.3 A independência do software ...................................................................................... 20

2.4 Sistemas de votação verificáveis fim-a-fim (E2E) ....................................................... 22

2.5 A relação entre o software independente e os sistemas verificáveis E2E ..................... 23

2.6 Compromissos ............................................................................................................ 23

3 TRABALHOS RELACIONADOS ................................................................................... 25

3.1 Histórico da eleição .................................................................................................... 25

3.2 Trabalhos científicos ................................................................................................... 26

3.2.1 Sistema de votação com aplicação da criptografia e emissão da contraprova ........ 27

3.2.2. Sistema de votação baseado em assinaturas cegas................................................ 30

3.3. A problemática dos DREs .......................................................................................... 30

3.3.1 Registro do eleitor independente verificável e voto impresso conferível pelo eleitor

..................................................................................................................................... 31

3.4 Sistema eletrônico de votação baseada em criptografia ............................................... 32

3.4.1 Contadores homomórficos .................................................................................... 32

3.4.2 Assinaturas cegas ................................................................................................. 34

3.4.3 Mixnets ................................................................................................................ 35

3.4.3.2 A mixnet e suas propriedades ......................................................................... 38

3.5 Sistemas de votação com verificabilidade baseado em mixnet..................................... 38

3.5.1 Sistema de votação baseado em criptografia visual ............................................... 39

3.5.1.1 Entendendo o sistema de votação baseado em criptografia visual ................... 39

3.5.1.2 Vantagens e desvantagens da votação baseada na criptografia visual ............. 42

Podemos citar como pontos importantes na utilização do sistema acima citado:......... 42

3.5.2 Prêt à voter ........................................................................................................... 43

3.5.2.1 Entendendo o Prêt à Voter ............................................................................. 44

3.5.2.2 Vantagens e desvantagens do Prêt à Voter ..................................................... 46

3.5.3 Punchscan ............................................................................................................ 47

3.5.3.1 Descrição do processo eleitoral ...................................................................... 48

3.5.3.2 Descrição das funções no Punchscan.............................................................. 52

3.5.3.3 Aplicabilidade do Punchscan na votação ........................................................ 53

3.5.3.4 Vantagens e desvantagens da cédula Punchscan ............................................. 54

4 VERIFICAÇÃO DOS VOTOS COM BASE NA MIXNET .............................................. 56

5 COMPONENTES DO SISTEMA DE VOTAÇÃO ........................................................... 60

5.1 Back-ends ................................................................................................................... 60

5.1.1 Mixnets do tipo cebola como back-ends ............................................................... 60

5.1.2 Vantagens e desvantagens Mixnets do tipo cebola como back-ends ...................... 61

5.2 Mixnets do tipo Punchscan ......................................................................................... 61

5.2.2 Mixnets do tipo Punchscan como back-ends ......................................................... 63

5.2.3 Propriedades de integridade e privacidade ............................................................ 64

5.2.4 Vantagens e desvantagens .................................................................................... 67

5.2.5 Generalização do back-end do Punchscan ............................................................ 68

5.2.6 A influência dos parâmetros de configuração na integridade e privacidade ........... 69

5.3 Front-ends .................................................................................................................. 71

5.3.1 Anexando o front-end do Punchscan para vários back-ends ................................. 73

5.3.2 Relação matemática: o front-end do Punchscan com o back-end do Punchscan .... 76

5.3.3 Front-end do Punchscan com back-end da mixnet do tipo cebola ......................... 76

5.3.4 Generalização....................................................................................................... 77

5.4 Anexando códigos ao nome dos candidatos ................................................................ 78

5.4.1 Resolução dos conflitos de interesses ................................................................... 80

5.4.2 Scantegrity II ....................................................................................................... 82

5.4.3 Vantagens e desvantagens Scantegrity II .............................................................. 83

5.4.4 Má-impressão de cédulas no Scantegrity .............................................................. 84

5.4.5 União do front-end do Scantegrity com o back-end da mixnet tipo cebola ............ 85

5.4.6 União do front-end do Scantegrity com a mixnet back-end do Punchscan............. 86

6 CONCLUSÃO .................................................................................................................. 87

REFERÊNCIAS .................................................................................................................. 91

12

1 INTRODUÇÃO

O processo eleitoral é uma característica indispensável para a democracia de um país. Por esta

razão, as intenções dos eleitores devem ser coletadas e agregadas de forma totalmente

transparente para obter o resultado da eleição. Por outro lado, o conhecimento da votação de

um eleitor pode levar à compra de votos e coação, assim o registro das intenções dos eleitores

deve ser mantido em sigilo (voto secreto). Isto leva a um conjunto de requisitos

contraditórios, um sistema completamente transparente que mantém o sigilo do voto.

O sistema de votação tradicional, utilizado na maioria dos países, apresenta diversos

problemas relacionados ao tempo de apuração, que pode levar dias; erros de preenchimento

da cédula; ausência da contraprova do voto; o armazenamento inapropriado das urnas que

contêm os votos o qual traz possíveis fraudes em decorrência da baixa segurança envolvida no

processo.

Os Sistemas Eletrônicos de Votação surgiram com o objetivo de suprir as deficiências do

sistema tradicional reduzindo o tempo entre a obtenção e a divulgação do seu resultado,

melhorando a usabilidade e dando condições para que outras pessoas também possam exerce

seu papel democrático com maior facilidade. Em decorrência dos seus problemas, esses

sistemas têm estimulado cientistas das áreas governamentais, privada e acadêmica, em todo o

mundo a buscarem soluções. Vários anos de pesquisas na área criptográfica levaram a uma

nova classe de sistema conhecida como sistema independente verificável fim-a-fim (E2E) que

permitem ao eleitor determinar o correto registro do seu voto.

1.1 Motivação

Cada eleitor deverá ser capaz de verificar se os votos foram computados corretamente. Se a

votação fosse em praça pública como na Grécia antiga, todos os eleitores saberiam para quem

foi atribuído os votos; caso o voto fosse registrado de maneira incoerente seria facilmente

contestado e corrigido. Entretanto isso facilitaria a coação e/ou a comercialização dos votos.

13

Para que isso não ocorra as preferências individuais devem permanecer em segredo, e só a sua

agregação torna-se pública.

O voto deixou de ser centralizado em um ambiente único, passando para locais de votação

distribuídos, também conhecidos como seções eleitorais. Quando se trata de uma eleição de

pequeno porte em ambiente único e com um curto período de tempo para a realização do

processo eleitoral, o voto secreto não é um grande problema, uma vez que todos os eleitores e

os fiscais podem assistir ao processo de votação e verificar a contagem analisando se todas as

etapas são realizadas com transparência. As contestações podem ser resolvidas no próprio

local. Mas, diante da abrangência do processo de votação e com os eleitores espalhados em

diversas localizações geográficas, o processo de contagem passou a ser realizado em cada

local de votação e a apuração do resultado centralizada. Assim problemas foram surgindo à

medida que eleitores em áreas distantes não podiam verificar os resultados parciais em outras

localidades.

A criptografia fornece uma solução para o aparente paradoxo de um sistema de votação

transparente que permite a votação em vários locais geograficamente distantes, oferecendo

sigilo do voto. Na criptografia moderna, o voto é uma computação multilateral (YAO, 1982).

No qual esse tipo de compute não garante a precisão do resultado e o sigilo das entradas sem

quaisquer suposições sobre os adversários ou a forma em que o cálculo é realizado.

Entretanto, há provas construtivas que demonstram a possibilidade de atingir as metas da

computação multilateral quando um dos adversários, tenta obter informações sobre as

entradas, ou o adversário tenta falsificar o resultado do cálculo limitando computacionalmente

a segurança de certos tipos de primitivas criptográficas existentes.

No contexto da problemática do voto, um sistema de votação possui vulnerabilidades. Em um

sistema, o adversário que tem acesso ao poder computacional e tempo suficiente para quebrar

as primitivas criptográficas pode alterar o resultado da eleição sem detecção, entretanto não

pode determinar quaisquer informações sobre os votos atribuídos de cada eleitor; na outra

vulnerabilidade o adversário tem acesso ao poder computacional e tempo suficiente para

quebrar as primitivas criptográficas podendo determinar a forma como os eleitores atribuíram

o seu voto, mas não afetam o resultado das eleições visto que os votos já foram expressos

(YAO, 1982).

14

Shamos (1993) apontou de maneira clara que, os problemas relacionados às vulnerabilidades,

e possíveis ataques proeminentes dessas fragilidades podem afetar o correto andamento da

eleição, e alguns requisitos são necessários para a manutenção fundamental dos aspectos

sócio-democráticos associados ao processo eleitoral, cito: 1) a escolha de cada eleitor deve

mantida inviolável; 2) cada eleitor deve votar uma única vez e só nas eleições em que está

autenticado para votar; 3) não deve ser possível corromper o sistema e nem comercializar o

voto; 4) os votos devem ser contabilizados de maneira correta; 5) deve haver disponibilidade

do sistema durante toda a eleição e, 6) deve ser possível realizar a detecção de ataques contra

os requisitos 2,4, sem a violação de 1.

1.2 Objetivos

Observando as limitações que atingem os sistemas eletrônicos de votação e os trabalhos

relacionados, esta dissertação tem como objetivo avaliar os sistemas de votação baseados em

mixnet, tais como, criptografia visual, Prêt-a-Voter, Punchscan, Scantegrity e Scantegrity II,

analisando a integridade e privacidade quanto às seguintes propriedades:

Materialização do voto: A impressão física do voto garante a possível conferência em caso

de divergência do resultado eletrônico. Através da recontagem, visto que códigos maliciosos

podem ser introduzidos no sistema modificando o resultado final;

Contraprova do voto: com a aplicação da contraprova o eleitor tem a possibilidade de

conferir se o recibo postado pela autoridade eleitoral é igual ao que esta sob sua posse. Nesse

recibo existe a utilização de técnicas criptográficas que somente o eleitor que atribui o voto

tem condições necessárias para identificá-lo;

Auditabilidade: A auditabilidade é um direito garantido por lei e como tal deve ser atendido

preservando de todas as formas o anonimato do eleitor, a privacidade e a integridade dos

votos;

15

Co-responsabilidade: As ações a respeito dos processos do sistema devem ser

compartilhadas evitando assim que poderes exercidos por parte da autoridade eleitoral possam

possibilitar irregularidade do sistema.

1.3 Organização

O presente trabalho encontra-se organizado da seguinte forma: capítulo um, refere-se à

introdução, no qual é apresentado de modo sucinto o sistema de votação tradicional, o

surgimento do sistema eletrônico de votação, as motivações que subsidiaram a elaboração do

trabalho, e os objetivos.

No capítulo dois, são descritas as definições gerais e específicas da votação eletrônica, as

noções de integridade, privacidade, a independência de software e segurança fim a fim (E2E).

O capítulo três faz um breve histórico da tecnologia de votação seguida por uma descrição das

técnicas mais utilizadas baseado em mixnet, nesse contexto são analisadas as propriedades,

estruturas funcionais que garantem a corretude no funcionamento do sistema evidenciando a

transparência e lisura ao longo do processo de votação.

O capítulo quatro apresenta o processo da verificabilidade dos votos com base na mixnet.

No capítulo cinco, apresenta-se a funcionalidade dos componentes do sistema que garantem a

integridade e privacidade do eleitor/voto, o back-end um dos componentes indispensáveis

para o bom funcionamento dos sistemas de votação, e o front-end que garante aos eleitores o

registro dos seus votos.

O capítulo seis refere-se à conclusão e às recomendações para trabalhos futuros.

O Apêndice esclarece alguns aspectos associados às teorias e informações apresentadas ao

longo do trabalho.

16

2 O PROBLEMA DA VOTAÇÃO

2.1 Sistema de votação

Esta seção fornece uma lista de propriedades de um sistema de votação derivada de uma

definição geral. São apresentadas as propriedades de correção central de sistemas de votação,

levando em consideração requisitos práticos, sociais e o fator humano.

Definição um (Computação multilateral (MPC)), Goldreich (1987). Dado um conjunto de

participantes

Um conjunto de dados privados

Uma MPC é uma computação de uma função pública a partir do conjunto .

Definição dois (Computação multilateral segura). Uma computação multilateral segura se

nenhum participante ou não participante pode obter mais informações além do resultado da

função de todas as eventuais interações que ocorrem, e o resultado da função pode ser

independente e verificável.

O problema do voto é um problema específico da computação multilateral, onde a

função determina o resultado da eleição, e os dados privados consistem dos votos.

Por exemplo, F pode ser uma simples contagem de elementos idênticos entre

, ou uma função mais complexa com métodos complexos de

computação (POPOVENIUC, 2009, p. 09).

O problema da votação é trivial se apenas uma propriedade, a privacidade ou a integridade

física, for exigida. Um exemplo de um sistema de votação que tem perfeita integridade é a

votação pública, pois cada eleitor pode ver o seu voto publicamente e todos podem verificar

os votos.

Sobre a aplicação da definição dois para o problema do voto, vemos que um sistema de

votação proporciona privacidade, se a única informação disposta sobre os novos votos dos

17

eleitores após a eleição está contida no resultado final. Ou seja, as eventuais provas, ou

quaisquer outros documentos que saem do sistema de votação, não podem dar informações

adicionais, tal como, quem atribuiu o seu voto em qual candidato.

O autor Vora (2004) discutiu no artigo publicado na ACM Riscos sobre a “importância da

quantificação de privacidade”, e a “definição de privacidade” descrita abaixo foi formalizada

por Coney (CONEY, 2005).

Definição três (Privacidade). Um sistema de eleição é perfeitamente privado se as

informações de um adversário sobre a escolha da cédula de um eleitor , obtido através da

tecnologia de eleição, não é afetada pelo real voto do eleitor no dia da eleição. De acordo

com Coney,

A redução de privacidade ocorre porque a contagem é revelada, pois os eleitores

fornecem informações sobre sua possível escolha, através de vias que não são os

sistemas de votação utillizados. Observa-se que, os registros indicam a ordem em

que os votos foram atribuídos levando assim a uma possível quebra da privacidade

(CONEY, 2005)

A seguir são descritas as medidas formais da extensão da perda de privacidade em sistemas de

votação que não oferecem uma perfeita privacidade.

Definição quatro (conjunto privacidade). Seja uma função, onde e são dois

conjuntos finitos, tal que . O conjunto privacidade sobre é o conjunto

, onde é a probabilidade do evento . Então A é um conjunto

de eventos.

Alguns dos mapeamentos podem ser conhecidos, juntamente com as propriedades da função

. Seja uma função bijetiva aleatória e . Além disso, o conjunto privacidade

sobre tem cardinalidade um, porque é o único elemento, sendo que a cardinalidade de

qualquer elemento é onde é o cardinal de , uma vez que um mapeamento

único é conhecido e todos os outros mapeamentos são possíveis.

Definição cinco (privacidade de uma cédula). A privacidade de uma cédula em purotexto é a

cardinalidade de seu conjunto privacidade.

Definição seis (privacidade Média). A privacidade média de um sistema de votação é a média

aritmética da vida privada de cada cédula lançada.

18

Definição sete (privacidade involuntária). A privacidade involuntária de uma cédula é a

privacidade medida de uma cédula quando o eleitor fornece todos os dados que tem acesso a

cerca de sua cédula.

Definição oito (privacidade voluntária). A privacidade voluntária de uma cédula é a

privacidade em que o eleitor não fornece qualquer informação que possa reduzir a privacidade

da mesma.

Sob a definição oito, o agente coercivo só tem acesso aos dados públicos, enquanto que na

definição sete o agente coercivo tenha acesso tanto aos dados públicos quanto aos dados

fornecidos pelo eleitor. A seguir descreveremos a definição de integridade.

Definição nove (Integridade). Seja o conjunto das intenções de

eleitores que são autorizados a votar, sendo uma função de registro, o registro

obtido ao se aplicar em , e o resultado oficial da eleição. A Integridade

significa . Em outras palavras, todos os votos foram calculados como

pretendido.

Observamos que a integridade de um sistema de votação refere-se ao cálculo do resultado

final da verdadeira intenção dos eleitores, não devendo haver alterações ou interpretações da

intenção do eleitor. Os votos não devem ser alterados, injetados, apagados, esquecidos ou não

contabilizados. Portanto, a integridade pode fazer sentido para as pessoas que estão

diretamente envolvidas em todas as etapas do processo eleitoral.

Em um processo de votação transparente qualquer pessoa pode verificar a exatidão do

registro. Por outro lado, se somente as entidades com certos privilégios tais como, os oficiais

da eleição podem verificar o registro, o processo deixa de ser transparente.

Definição dez (Boletim de segurança pública (SPBB)). Um boletim de segurança pública é

um local reservado para informações que: 1) (Público) ninguém tem permissão para ler as

informações; 2). (Somente anexo) nenhum registro pode ser excluído ou modificado; 3)

(Consistente) todos os registros são lidos como eles foram postados.

Outras propriedades exigidas devem ser levadas em consideração tais como:

19

• Usabilidade: o sistema de votação devem ser facilmente explicável e compreensível, tanto

para os funcionários eleitorais quanto pelos próprios eleitores. Isto não significa que os

mecanismos internos do sistema de votação devem ser compreendidos por todos.

• Acessibilidade: é necessário adaptar o sistema para os eleitores com necessidades especiais,

como os eleitores com deficiência visual, etc.

• Flexibilidade: o sistema deve apoiar todas as formas conhecidas para capturar e agregar a

intenção dos eleitores, a partir da votação binária simples (escolher um dos dois)

• Robustez: o sistema deverá ser capaz de funcionar corretamente em casos comuns de falha,

tal como perda de energia, etc.

.• Escalabilidade: o sistema deverá ser capaz de lidar com todos os votos do universos de

eleitores se toda a população atribuir o seu voto.

• Custo efetivo: o custo deve ser baixo. Este custo inclui a compra do sistema, manutenção,

atualização, execução, etc.

• Velocidade: o sistema de votação deve produzir o registro em tempo hábil. Além disso, o

processo de votação também deve ser eficiente, com um pequeno número de etapas no

processo.

• Legal: as leis estaduais ou federais não devem ser alteradas para permitir ou não a probição

de certos aspectos específicos do sistema de votação.

2.2 Sistemas eletrônicos de votação

Dill (2006) descreve o sistema de votação Direct Recording Electronic, no qual o eleitor

chega a um local de votação e, após sua identificação escolhe na máquina seu candidato

favorito, e recebe de volta uma garantia verbal de que seu voto foi computado. Popoveniuc,

(2009, p.16), diz que alguns problemas podem surgir com relação à integridade tais como:

20

• A DRE pode registrar um voto totalmente diferente do que o comunicado pelo eleitor. Isso

pode ocorrer se a máquina: 1) não registra a escolha adequada; 2) registra a escolha correta,

mas não aceita; 3) é um adepto de um determinado partido; 4) cometeu um erro ortográfico.

• A DRE não registra nada;

• A máquina registrou alguns votos extras para o candidato que o eleitor não votou.

Após a votação, todas as DREs juntamente com seus registros são declaradas, transportadas

para a sede da eleição e os votos são apurados. O resultado é anunciado. Nesta fase os

problemas que podem afetar a integridade são:

• A contagem feita por cada máquina está incorreta;

• Quando a máquina processa o resultado, ela decide mudar todas as cédulas para favorecer

um adversário;

• A entidade que transporta os votos do colégio eleitoral para o local de apuração pode: alterar

os votos em trânsito; perder algumas cédulas; alterar algumas cédulas; introduzir algumas

cédulas.

Observa-se que mesmo com a substituição da DRE, os ataques acima descritos são ainda

possíveis. A DRE pode capturar o voto do eleitor incorretamente em razão de uma tela

sensível ao toque estar descalibrada ou uma interface mal projetada, podendo decidir

internamente em adicionar os votos para outro candidato. Embora seja possível comprovar a

presença de um erro, a ausência de um bug é praticamente impossível de ser provada.

A acessibilidade é um dos fatores importantes para as DREs, pois deve propiciar o auxílio

auditivo, fontes grandes e de alto contraste tornando possível a utilização pelos eleitores que

são deficientes visuais. Por ser pequena, a DRE pode ser instalada em locais com acesso para

os cadeirantes ou pode até ser transportada para os eleitores desprovidos de locomoção.

2.3 A independência do Software

21

O principal desafio em relação ao problema de votação é manter o sigilo do voto, e provar a

corretude do registro. Há duas maneiras diferentes para tratar esta questão: a) testar o

equipamento várias vezes antes da eleição; b) produzir uma prova de regularidade para cada

eleição, na qual qualquer pessoa possa verificar a prova.

Ao utilizar um equipamento de votação, seria ideal se pudéssemos provar a correta

operacionalidade do equipamento em todas as circunstâncias. No entanto, os sistemas de

votação são complexos, tanto os hardwares quanto os softwares. Teoricamente, segundo

Turing (1936) “não existe nenhum mecanismo capaz de provar que um programa de

computador é totalmente correto”. Mesmo que exista um mecanismo para comprovar a

correção de um programa específico, ou classe de programas, provar que ele funciona

corretamente é bastante complexo (HOARE, 1969).

Os sistemas de votação apresentam diversas falhas e de inúmeras maneiras, dando espaço

para o surgimento de dúvidas, o que compromete a sua confiabilidade. Assim, pesquisas são

realizadas com o intuito de proporcionar um sistema de votação que seja capaz de verificar a

regularidade no processo de uma eleição.

Definição 11 Rivest & Wack (2009) (Independente de software (SI)). Um sistema de votação

é um software independente se, uma alteração não detectada ou erro em seu software não

pode causar uma mudança indetectável ou erro em um resultado da eleição.

Caso a prova fornecida pelo software da eleição não garanta 100% de precisão da

contagem, o sistema independente de software é conhecido como virtual. Sendo

assim a detecção de um erro deve ser corrigida, sem a necessidade de realizar uma

nova eleição (RIVEST; WACK, 2009).

Nesse sentido, corrigindo o erro é possível que alguns sistemas façam a correção retroativa,

entretanto isso pode colocar em risco a privacidade dando possibilidades à quebra do sigilo do

voto.

Com a definição de sistema independente do software, o equipamento deixa de ser verificado,

e a eleição passa a ser o alvo. O primeiro tem a vantagem de ser possível na prática. Se o

registro foi verificado como correto, é irrelevante saber se o software usado para realizar os

cálculos contém erros ou não, a verificação demonstra que, para esta eleição, os erros são

22

irrelevantes na contagem correta dos votos. Portanto, é necessária a verificação de cada

eleição independente do equipamento.

A execução das normas processuais está diretamente associada à integridade do sistema por se

tratar na maioria dos casos de um processo humano, portanto, a honestidade dos funcionários

envolvidos no processo é um elemento importante no paradigma da independência de

software.

2.4 Sistemas de votação verificáveis fim-a-fim (E2E)

Os sistemas de votação E2E propiciam a verificação dos principais passos do processo de

votação. Estes executam computações multilaterais, tal como definido anteriormente. Um

sistema E2E permite a verificação de que todas as cédulas depositadas são incluídas sem

adulteração na contagem de votos (SALTZER, 1984).

Definição 12 (Verificabilidade em sistemas de votação fim-a-fim). Um sistema de votação

fim-a-fim pode convencer um observador de que todas as entradas estão corretamente

associadas.

Definição 13 (Verificabilidade em sistemas de votação, registrada como lançada). Um

sistema de votação fornece verificabilidade registrada como lançada se e somente se tem as

seguintes três propriedades:

Lançada como pretendido: qualquer eleitor pode obter um recibo após atribuir o voto.

Qualquer pessoa deve ser capaz de verificar se todas as cédulas contêm todas as verdadeiras

intenções dos eleitores.

Registrada como lançada: alguém após votar deve convencer-se de que o seu recibo foi

registrado corretamente, a qualquer momento após a obtenção do mesmo.

Calculada como registrada: qualquer um pode convencer-se de que todos os recibos são

corretamente transformados no registro final, a qualquer momento após o resultado ser

auditado. Para cada eleição, as medidas de verificação da definição 13 devem ser analisadas.

23

2.5 A relação entre o software independente e os sistemas verificáveis E2E

Definição 14 (Sistema de votação criptográfico). Um sistema de votação é dito criptográfico

quando usa qualquer função criptográfica segura.

De acordo com Rivest (2009), o ThreeBallot é a primeira tentativa de criar um sistema de

votação verificável E2E sem a utilização da criptografia. O protocolo não é independente do

software, pois a integridade da eleição depende da corretude do verificador. A relação entre os

sistemas de votação E2E, independente de software e sistemas de votação criptográficos

mostra que a verificabilidade dos sistemas de votação E2E não é necessária ou independe de

um software criptográfico.

2.6 Compromissos

Um sistema de votação eficiente baseia-se na solidez dos algoritmos utilizados e na

complexidade criptográfica dos mesmos que fornecem a privacidade e verificabilidade.

Definição 15 (Esquema de compromisso). Um esquema de compromisso é um protocolo que

permite um provador comprometer-se com um fato e impede que um verificador aprenda o

fato a partir dos dados resultantes do compromisso.

Conforme Brassard (1988) as quatro propriedades de um regime de compromissos são: a) o

verificador pode comprometer-se com um fato; b) uma vez confirmado, o verificador pode

abrir o compromisso de uma única maneira; c) a partir do seu compromisso, o verificador não

pode ter informações sobre o fato comprometido; d) um esquema de compromisso não é

dependente do fato comprometido.

Um esquema de compromisso pode perfeitamente ser obrigatório ou oculto (DAMGARD,

2002). Dado um esquema de compromisso obrigatório, o provador não pode alterar o valor do

24

compromisso, mesmo com acesso ao poder computacional ilimitado. O que difere em um

esquema perfeitamente oculto, no qual o verificador não é capaz de reduzir a probabilidade da

mensagem mesmo depois de ver o compromisso, e com acesso ao poder computacional

ilimitado.

25

3 TRABALHOS RELACIONADOS

3.1 Histórico da eleição

Uma das mais antigas formas de votação documentada vem da Grécia, sob a forma de um

ostracon (WIKIPEDIA, 2010). Todos os eleitores que eram os proprietários de terras se

reuniam na ágora central, onde um vaso de porcelana era quebrado em pedaços e cada eleitor

recebia um pedaço escrevendo sobre ele, e os votos eram contabilizados no local.

No início do processo de votação nos Estados Unidos as eleições foram dominadas pelo caos,

sendo conduzida em público. Cada eleitor dizia em voz alta o nome do candidato preferido.

As fraudes eram comuns, o suborno especialmente por intimidação de eleitores. Daí as

cédulas de papel começaram a ser amplamente utilizadas imediatamente após a Revolução

Americana.

A primeira eleição realizada em uma máquina de votar com alavanca foi no ano de 1892, em

Chicago e Nova York. Ainda nos anos cinqüenta mais da metade dos votos foram expressos

usando máquinas de alavanca (BELLIS, s.d). A tecnologia foi considerada por muitos como

confiável e segura. Em 1960 foi utilizada pela primeira vez na votação os cartões perfurados

introduzidos por dois professores na Universidade de Berkeley, que melhoram o sistema de

pré-marcação de cartão desenvolvido pela IBM. Os cartões nunca foram destinados para o uso

sem supervisão, a má utilização deste pelos eleitores desencadeou o desastre na eleição

presidencial no estado da Flórida em 2000.

Na tecnologia da leitura óptica, as cédulas foram introduzidas na votação em 1962, vinte e

cinco anos após a IBM introduzir a tecnologia para marcar exames padronizados. Numa

digitalização óptica do voto, o eleitor preenche um circulo oval com dois lápis. A cédula é

então enviada através de uma máquina de marcação. A máquina detecta se as marcas de lápis

foram feitas em determinadas posições geométricas, e associa com um mapa pré-

determinando o candidato que corresponde à posição geométrica. A usabilidade através de

sistemas de leitura óptica na eleição de 2006 aproximou-se dos 45% dos votos. Vale salientar

que neste sistema a recontagem manual das cédulas é possível.

26

Como explanou Bergholz (1969) de maneira clara no artigo do Los Angeles Times, há

possibilidade de fraudes eletrônicas usando os computadores. Experimentos foram realizados

em 1969, evidenciando a possível manipulação dos resultados utilizando para isto um

tabulador central, sem deixar qualquer evidência.

Casos de fraudes utilizando a tecnologia de voto nunca foram comprovados, embora os

investigadores tivessem apontado para a possibilidade de fraude (SALTMAN, 1975). Diante

disso, percebeu-se a importância em desenvolver novas tecnologias de votação mais seguras

que capturassem a real intenção do eleitor. Tendo como objetivo a transparência eleitoral

dando aos eleitores o poder de verificar os seus votos, mesmo após a eleição, e permitindo

que qualquer pessoa pudesse verificar a correta produção do registro.

A introdução dos novos métodos tecnológicos e sistemas de votação criptográficos levaram

ao surgimento de vários sistemas de votação auditáveis E2E (CHAUM, 2004, 2008a;

CHAUM; RYAN; SCHNEIDER, 2005a; POPOVENIUC, 2006). Os sistemas E2E propiciam

aos eleitores recibos criptografados que garantem a correta contabilidade com privacidade do

voto. Os mesmos podem verificar que os seus recibos fazem parte do registro eleitoral e

qualquer pessoa pode certifica-se de que o sistema de votação decriptografa de maneira

correta todo o registro eleitoral, fiscalizando os resultados que se tornaram públicos.

Chaum (2004) propõe um sistema que permite aos eleitores verificarem se a encriptação dos

seus votos ocorreu de maneira transparente e provem que não houve erro no processo baseado

em criptografia visual. Chaum; Ryan; Schneider (2005a) propôs uma simplificação das

cédulas para o Prêt à Voter. Chaum (2005c) propõe um formato diferente de apuração

chamado de Punchscan, que obtém o registro de uma forma eficiente.

3.2 Trabalhos científicos

Em vários países do mundo entidades governamentais e centros acadêmicos, têm se

mobilizado pesquisando soluções com o intuito de acabar com as vulnerabilidades que

ameaçam os sistemas eletrônicos de votação.

27

3.2.1 Sistema de votação com aplicação da criptografia e emissão da contraprova

Chaum (2004) propôs um modelo que fornece ao eleitor um recibo como garantia do seu voto

expresso. Este criptografa a cédula baseado em criptografia visual (NOAR, 1995).

A cédula eleitoral é composta por duas faces, a superior e a inferior, sendo ambas de

material transparente. O voto é impresso nas faces da cédula, fazendo uso da

criptografia visual. Pode-se identificar o voto do eleitor em purotexto, quando as

faces são sobrepostas (COSTA, 2008, p. 28).

A (FIG. 1) ilustra a área da cédula que contém o voto do eleitor, sendo possível visualizar o

texto “Separate layers before leaving booth”. Observa-se que nesse modelo fica impossível a

visualização do voto em qualquer uma das partes da cédula sem a sobreposição das mesmas.

As (FIG. 1, 2, 3) apresentam a face superior e inferior e a destruída pela autoridade eleitoral

respectivamente. A contraprova é uma garantia de que o voto foi expresso;

Figura 1- Faces sobrepostas originando um texto legível.

FONTE - CHAUM, 2004., p. 27

Figura 2 - Face utilizada como recibo e com texto legível.

FONTE - CHAUM, 2004., p. 26

28

Figura 3 - Face destruída pela autoridade eleitoral junto ao eleitor.

FONTE - CHAUM, 2004., p. 26

Costa (2008) pontua que em relação à codificação visual, o pixel é composto por quatro sub-

pixels, dois pixels pretos e dois brancos, com posições invertidas uns aos outros. Em cada

camada a posição dos sub-pixels é igual dentro do pixel. O resultado é um pixel transparente

quando as faces forem sobrepostas. Caso exista em cada camada, quatros sub pixels inversos

em relação às camadas, o resultado será um pixel opaco ao serem sobrepostas as camadas.

Figura 4 - Pixels formadores da imagem nas camadas.

FONTE – NOAR, 1995., p. 06

A figura 5 mostra a relação entra os pixels em cada face e a visualização do texto quando

estas estão sobrepostas.

29

Figura 5 - Construção da imagem a partir das duas faces.

FONTE - CHAUM, 2004., p. 42

Para o eleitor é dado o livre arbítrio de escolher qual das faces será o recibo de contraprova. A

partir da sua escolha, o sistema identifica qual a face escolhida e qual será exterminada. A

verificação do recibo ocorre com a publicação dos resultados e da cópia do recibo no site da

autoridade eleitoral. De posse do seu recibo o leitor imprime a cópia no site eleitoral e

sobrepõe as imagens analisando se são iguais.

O registro dos votos acontece quando os recibos virtuais criptografados passam por etapas

aleatórias nas mixnets. Para cada etapa parte da cédula é decriptografada. Uma etapa auxilia a

outra na recuperação de parte do recibo. Para isso, é usada uma nova chave de decodificação

de acordo com o sistema criptográfico aplicado adquirindo, dessa forma, o voto em purotexto

e a apuração por meio óptico (COSTA, 2008).

O modelo apresenta a vantagem de utilizar a criptografia visual para a impressão da

contraprova, o que dificulta o rompimento da integridade do sistema. Vale salientar que,

mesmo existindo a recuperação da informação o uso de múltiplas chaves para a decriptografia

não permite a quebra do processo criptográfico (COSTA, 2008, p. 32). Como desvantagens,

tem-se o aumento no custo devido a inserção de equipamento especial (impressora), picotador

de papel e material especial para impressão, a outra face deve ser exterminada no local da

votação evitando um possível uso da engenharia social para obter informações que

proporcione a reconstrução do recibo através do lixo.

30

3.2.2. Sistema de votação baseado em assinaturas cegas

O modelo proposto por Kofler (2003) consiste em um protocolo de duas fases, o registro e a

votação. As assinaturas cegas dão condições favoráveis para a inserção do anonimato. Para

que este seja mantido durante todo o processo de votação é necessário que exista a

dissociação entre a entidade de registro na fase de identificação do eleitor e a de autenticação

na fase de votação (COSTA, 2008, p. 38).

Dessa forma não é permitido que o eleitor seja identificado pelas duas entidades. Nos sistemas

eletrônicos de votação existe uma entidade que controla o número de vezes que os eleitores

votam. Neste Sistema a entidade responsável pelo controle assina o voto do eleitor para

posteriormente verificar a sua validação. Esta técnica garante a transparência democrática no

processo de votação respeitando a privacidade.

De acordo Kofler (2003), seu modelo garante o anonimato como visto anteriormente, pois

nenhuma das entidades por si só identifica o eleitor, devido à geração do par de chaves sem

nenhuma vinculação em relação à identificação do eleitor. É utilizado para criptografar a

chave privada K e decriptar a cédula e a chave pública K´. Assim, todas as mensagens são

criptografadas, garantindo a propriedade de integridade.

3.3. A problemática dos DREs

O Direct Recording Electronic (DRE) é composto por um computador com baixo poder de

processamento, que possui tela sensível ao toque para permitir a entrada dos eleitores. São

flexíveis em termos de apresentação do voto ao eleitor, possui variedades de idiomas.

A utilização frequente dos sistemas eletrônicos de votação deu origem ao surgimento de

vários problemas, como explanou muito bem (ZULKERMAN, 1925). Os mais comuns são o

descalibramento das telas sensíveis ao toque, congelamento de software, a incapacidade de

boot, insensibilidade a duplo toque, armazenamento permanente, e reinicialização espontânea.

31

De acordo com Norden (2006), o relatório aponta as falhas que contribuem para o mau uso do

sistema devido à utilização de programas com código malicioso ou corrompido,

indisponibilidade do sistema, inoperabilidade dos equipamentos. Várias equipes analisaram o

software e os DREs.

Os relatórios Hopkins Kohno, Caltech- MIT e, o de Princeton Ariel analisou todas as

vulnerabilidades específicas de um sistema de votação e concluíram que não é seguro a

utilização dos sistemas em qualquer tipo de eleição, sendo sensato dotar o sistema de votação

com a materialização do voto possibilitando ao eleitor verificar o seu voto atenuando ou

eliminando possíveis ataques (KOHNO, 2003; FELDMAN; HALDERMAN; FELTEN,

2006).

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

saída são da forma,

. Segundo Chaum

2 http://en.wikipedia.org/wiki/File:Decryption_mix_net.png.

37

(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:

<http://inventors.about.com/library/weekly/aal111300b.htmonce=true&?> Acesso em: 01

dezembro 2009.

BENALOH, J. C; YUNG, M.. Distributing the power of a government to enhance the privacy

of voters. In: PODC ’86: Proceedings of the fifth annual ACM symposium on Principles of

distributed computing, New York, p. 52–62, 1986.

BENALOH, J. C.. Verifiable Secret Ballot Elections. PhD thesis, Yale University, Yale,

1987.

BENALOH, J; TUINSTRA, D. Receipt-free secret-ballot elections (extended abstract). In

STOC ’94: Proceedings of the twenty-sixth annual ACM symposium on Theory of computing,

New York, p. 544–553, 1994.

BERGHOLZ, R. How election can be rigged via computers, Los Angeles, julho, 1969.

BOWEN, D. California secretary of state, voting systems review: Top-to-bottom, 2007.

Disponível em: <http://www.sos.ca.gov/elections/elections_vsr.htm> Acesso em: 03 janeiro

2009.

BRASSARD, G; CHAUM, D; CREPEAU, C. Minimum disclosure proofs of knowledge. J.

Comput. Syst. Sci. v. 37, n. 2, p. 156–189, 1988.

CALTECH-MIT, V. what is, what could be. Local, v. , n. , p. , mês, 2001. Disponível em:

<http://www.vote.caltech.edu/The Caltech-MIT Voting Technology Project> Acesso em: 02

março 2010.

CHAUM, D. Untraceable electronic mail, return address, and digital pseudonym.

Communication of ACM, fevereiro, 1981.

CHAUM, D. Blind signatures for untraceable payments. In: Advances in Cryptology:

Proceedings of Crypto, 1982.

CHAUM, D. Secret-ballot receipts: True voter-verifiable elections. IEEE Security and

Privacy, v.2, n. 1, p. 38–47, jan.-fev. 2004.

CHAUM, D; RYAN, P. Y. A; SCHNEIDER, S. A practical voter-verifiable election scheme.

In: Sabrina De Capitani diVimercati, Paul F. Syverson, and Dieter Gollmann, editors,

ESORICS, v. 3679, p.118–139, Springer, 2005.

92

CHAUM, D. Recent results in electronic voting. In: Presentation at Frontiers in Electronic

Elections, Milão, setembro, 2005.

CHAUM, D. Punchscan - invioted talk during the advanced crypto course, dezembro, 2005.

CHAUM, D. et al. Scantegrity ii: End-to-end verifiability for optical scan election systems

using invisible ink confirmation codes In: EVT’07: Proceedings of the USENIX/Accurate

Electronic Voting Technology on USENIX/Accurate Electronic Voting Technology Workshop.

USENIX Association, 2008.

CHAUM, D. et al. Scantegrity: End-to-end voter verifiable optical-scan voting. IEEE

Security and Privacy, MAssachusetts, p. 29-53, mai.-jun. 2008.

CONEY, L. et al. Towards a privacy measurement criterion for voting systems. In: National

Conference on Digital Government Research, maio, 2005.

COSTA, R. G. Sistema seguro de votação eletrônica multi-cédulas 2008. 111f. Dissertação

(Mestrado em Informática Aplicada) – Programa de Pós-graduação em informática. Pontifícia

Universidade Católica do Paraná, Paraná, 2008.

DAMGARD, I; NIELSEN, J. B. Perfect hiding and perfect binding universally composable

commitment schemes with constant expansion factor. In: CRYPTO 02: Proceedings of the

22nd Annual International Cryptology Conference on Advances in Cryptology, Londres,, p.

581–596, 2002.

Election Assistance Commission. Voluntary voting system guidelines Disponível

em:<http://www.eac.gov/votingsystems/voting-systemcertification/2005-vvsg/?searchte

rm=vvsg> Acesso em: 07 maio 2008,

Election Data Services. 69 million voters will use optical scan ballotsin. 2006. Disponível em:

<http:electiondataservices.com/EDSinc VEStudy2006.pdf> Acesso em: 12 janeiro 2010.

ELGAMAL, T. A public key crypto system and a signature scheme based on discrete

logarithms. In Proceedings of CRYPTO 84 on Advances in cryptology, New York, p. 10–18,

1985.

ESSEX, A. et al. The Punchscan voting system: VoComp competition submission. In:

Proceedings of the First University Voting Systems Competition (VoComp), 2007.

FELDMAN, A. J; HALDERMAN, A. J; FELTEN, E W. Security analysis of the diebold

accuvote-ts voting machine. Technical report,Princeton University, Princeton, setembro,

2006.

FUJIOKA, A; OKAMOTO, T; OHTA, K. A Practical Secret Voting Scheme for Large Scale

Elections. Proc. of Advances in Cryptology – AUSCRYPT92, LNCS 718, London, p. 244-251,

1993.

GOLDWASSER, S; MICALI, S; RACKO, C. The Knowledge Complexity of Interactive

Proof Systems, SIAM Journal on Computing, v. 18, p.186-208, 1989.

93

GOLDREICH, O; MICALI, S; WIGDERSON, A. How to play any mental game. In: STOC

87: Proceedings of the nineteenth annual ACM symposium on Theory of computing, New

York, p. 218–229, 1987.

GOLDREICH, O; MICALI, S; WIGDERSON, A. Proofs that yield nothing but their validity

or all languages in have zero-knowledge proof systems. J. ACM, v. 38, n. 3, p. 690–728,

1991.

HOARE. C. A. R. An axiomatic basis for computer programming.Commun. ACM, v.12,

n.10, p. 576–580, 1969.

HBO,.Hacking democracy, 2006. Disponível em: < http://www.youtube.com/ Watch ?v=1s

4TfejQ0ag.> Acesso em: 10 dezembro 2009.

JAKOBSSON, M. mix nets robust for electronic voting by randomized partial checking.

Checking. In: Proceedings of the 11th USENIX Security Symposium. USENIX Association.

Berkeley, USA, p. 339–353, 2002.

KOFLER, R; KRIMMER, R; PROSSER, A. Electronic Voting: Algorithmic and

Implementation Issues. Hawaii International Conference on system Sciences, IEEE, 2003.

KOHNO, T. et al. Analysis of an electronic voting machine. Technical Report TR-2003-19,

Johns Hopkins Information Security Institute, julho, 2003.

MERCURI, R. Electronic Vote Tabulation Checks and Balances. PhD thesis, University of

Pennsylvania, Philadelphia, outubro, 2000.

MOORE, D; VOELKER, G. M; SAVAGE, S. Inferring Internet Denial-Of-Service Activity.

Proceedings of the 10 th conference on USENIX Security Symposium, 2001

NAOR, M; SHAMIR, A. Visual Cryptography, Advances. In: Cryptology,Eurocrypt’94,

Springer Berlin, Heidelberg. v. 950, p. 1–12, 1995.

NORDEN, L. et al. The Machinery Of Democracy: Voting System Security. Accessibility,

Usability, and Cost. The Brennan Center for Justice, p. 29, 2006.

OSTRACON In: Wikipedia. The free encyclopedia. Disponível em:

<HTTP://en.wikipedia.org/wiki/Ostracon> Acesso em: 01 março 2010.

PARK, C; ITOH, K; KUROSAWA, K.. Efficient anonymous channel and all/nothing election

scheme. In: EUROCRYPT ’93: Workshop on the theory and application of cryptographic

techniques on Advances in cryptology, Secaucus, New Jersey, p. 248–259, 1994.

POPOVENIUC, S; HOSP, B. An introduction to PunchScan In: IAVoSS workshop On

Trustworthy Elections, Robinson College, Cambridge, junho, 2006.

POPOVENIUC, S . et al. Securing optical-scan voting. In: Proceedings of Frontiers of

Electronic Voting, LNCS. Springer, 2008.

94

POPOVENUIC, S. A framework for secure mixnet based electronic voting. 2009. 200f. Tese

(Doutorado em Ciências) - Escola de Engenharia e Ciências Aplicadas. Universidade George

Washington, Washington, 2009.

RIVEST, R. L. The Three Ballot voting system, october, 2006. Disponível em:

<http://theory.lcs.mit.edu/~rivest/> Acesso em: 10 julho 2009.

RIVEST, R. L; WACK, J. P. On the notion of ”software independence” In: Voting systems,

Cambridge p. 1-11, 2006. Disponível em: <http://vote.nist.gov/SI-in-voting.pdf DRAFT>

Acesso em: 12 julho 2009.

SALTMAN, R. G. Effective use of computer technology in vote-tallying. Technical report,

NIST, 1975.

SALTZER J. H; REED, D. P; CLARCK, D. D. End-to-end arguments in system design. ACM

Trans. Comput. Syst, v.2, n. 4, p. 277–288, 1984.

SECRET BALLOT In: Wikipedia. The free encyclopedia. Disponível em: <

http://en.wikipedia.org/wiki/Secret_ballot> Acesso em: 02 março 2010.

SHAMOS M. Electronic Voting – Evaluating the Threat. Proceedings of Computer, Freedom,

and Privacy Conference, Portugal, junho, 1993.

SCHOENMAKERS, B. A simple publicly verifiable secret sharing scheme and its application

to electronic voting. Lecture Notes in Computer Science, v.1666, p. 148–164, 1999.

TURING, A. M. On computable numbers, with an application to the Entscheidungsproblem.

Proceedings of the London Mathematical Society, v.2 n.42, p. 230–265, 1936.

VORA, P.L. et al. Evaluation of voting systems. Comm. of the ACM, LOCAL,. , novembro,

2004.

YAO, A. Protocols for secure computations. Proc. 23d IEEE Symp on Foundations of

Computer Science. [s.l.], p. 160–164, 1982.

ZULKERMAN, T. D. The voting machine. 1925.

95

APÊNDICE

Teorema 1: .Seja o número total de votos, e o número de votos que são formados

incorretamente.Se cédulas são escolhidas aleatoriamente na etapa 4,a probabilidade de não

detectar qualquer uma das cédulas formada incorretamente é menor que

Para provar o teorema se faz necessário provar o lema 19.

Lema 19: Em uma caixa há bolas sendo o numero de bolas pretas e o restante branca. De

maneira aleatória são extraidas f bolas sem repetição observando a sua cor. A probabilidade

de que as bolas f extraídas sejam brancas é inferior ou igual a min

.

O número de maneiras de escolher bolas fora as bolas na caixa é . O número de

maneiras de escolher bolas brancas de um total de bolas, onde são pretas, é

. (

escolher bolas brancas do total de que são brancas). A probabilidade de que todas as f

cédulas extraídas sejam brancas é o número de casos favoráveis dividido pelo numero total de

casos:

Note que de modo que . Se então a probabilidade é zero.

Cálculo dos dois limites superiores para a probabilidade acima.

96

Segue que

.

Corolário dois. Dado , 0 < <1, os valores de e podem ser escolhidos de forma que:

Tomando , as desigualdades do teorema 1, obtemos

, portanto

.

Como f é estritamente maior que zero e estritamente menor que , então

Assim sempre se pode escolher e de tal forma que estejam mais próximos de 1 como

desejado tendo , conclui-se a demonstração. Como os menores valores de são

necessários para detectar a presença de cédulas imcompatíveis, sempre

suficiente para encontrar uma cédula incompatível com probabilidade de pelo menos

para qualquer número de cédulas fraudadas.

Teorema dois. Se o back-end não calcular , ou corretamente para

cédulas na etapa 11, a probabilidade de que todos os registros no site da autoridade eleitoral

sejam consistentes no final do protocolo é

.

97

Na etapa 11 o back-end pode adivinhar uma transformação de cédula especial, de que lado

( ), o auditor pede para ver no passo 12. Iria então calcular a outra transformação de

forma incorreta, e seria detectado com uma probabilidade

Pois as escolhas do auditor na

etapa 12 são independentes, a probabilidade de que as suposições do back-end estejam

corretas em qualquer voto é independente da probabilidade de adivinhar corretamente para

qualquer outra cédula. Assim, se o back-end fraudar cédulas, a probabilidade de que este não

fique exposto até a etapa 12 é:

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.

Em seguida, a privacidade de qualquer uma das cédulas correspondente, de acordo com a

definição 5, e , é qualquer uma das outras cédulas é .

Seja os compromissos abertos. Usando o lema 5 com e em vez de e ,

podemos concluir que, para qualquer das cédulas em , para os quais é revelado, a

função pode ser construído de tal forma que

(Onde w é o

voto criptografado criado por e do voto em purotexto). Para qualquer

tal que para , onde é o complementar de . O tamanho desse

conjunto é exatamente , e, portanto, o tamanho do conjunto de privacidade para qualquer um

das cédulas em é .

Desde a etapa 12 temos que para todos os que não são reveladas, segue-se

que são revelados, assim a cardinalidade do último conjunto é , provando o

lema.

Teorema 11. Para um Punchscan back-end, com d vinculado ou desvinculo 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 é

.

O teorema dois diz que, para um único o back-end teria acertos. Quando estão

disponíveis, e são independentes em relação à integridade, então a probabilidade de

98

multiplicar

total dos fatores para uma probabilidade cumulativa

de

.

Teorema 12. Para um Punchscan back-end, com vinculado ou desvinculo 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 é

.

Sabe-se que os compromissos relativos à coluna são utilizados e que ou , são revelados

na etapa 12, mas nunca ambos Então há somente uma escolha aleatória para cada e,

portanto, a probabilidade de que o back-end fraude sobre a transformação que não é aberta

é

. Quando d estão disponiveis, e são independentes em relação a integridade, então a

probabilidade de multiplicar

total dos d fatores para uma probabilidade

cumulativa de

.

Teorema 13. Para um Punchscan back-end, com d vinculado ou desvinculo nas tabelas de

decriptografia, com compromissos relativos à coluna cédulas lançadas, a privacidade de

qualquer uma das cédulas no final do protocolo é .

Considere uma cédula criptografada arbitrariamente e um também arbritário.

Suponha que para um particular, com completamente revelado. Do lema 5 segue que

pode ser construído de tal forma que ele traduz a cédula criptografada ) em qualquer

cédula em texto claro . Isto é possível por que não há informações como foi revelado

e revelando não adquire nenhuma informação sobre

Daí a privacidade da cédula

, o numero total de cédula em purotexto .

Observe que não importa se Ds é vinculado ou desvinculado.

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 dos cédulas expressas Se os

eleitores verificam os seus recibos, então a probabilidade de não detectar qualquer uma das

cédulas mal impressas é:

99

A demonstração do lema 22.

Suponha uma cédula simétrica com peças usadas. Seja o número de eleitores único que

verificam a regularidade de impressão. Sejam k fora das r cédulas verificadas foram mal

impressas. Então a probabilidade de que nenhuma das k de r cédulas mal impressas sejam

detectadas é

.

Para cada r cédula que o eleitor verifica, escolhe de maneira aleatória uma parte, cada parte

com a mesma quantidade de informações. A cédula simétrica é considerada incorretamente

impressa se pelo menos uma parte é mal impressa. Não faz qualquer sentido fraudar uma

cédula mal impressa em mais de uma parte, o que minimiza a probabilidade de ser pego.

Assim, para uma única cédula, a probabilidade de que o voto seja impresso incorretamente e

que o eleitor não escolha a parte mal impressa é

.Assumindo que a probabilidade de

uma cédula ser impressa corretamente é independente da probabilidade da cédula ser

impressa corretamente. A probabilidade de que nenhum das k cédulas mal impressas na etapa

5 serem detectadas quando r cédulas são verificados pelos eleitores é

.

Demonstração do teorema 15.

Suponha que exatamente x das r cédulas verificadas são mal impressas. Fixando uma ordem

particular de verificação de cédulas, assume-se que as primeiras x cédulas são mal impressas.

A probabilidade de isso acontecer é

(as primeiras x cédulas serão mal

impressas e o restante são impresas corretamente). Do lema 22, a probabilidade de não pegar

uma cédula mal impressa é

. Para eliminar o fator que apenas as primeiras x cédulas

verificada podem ser mal impressas (a restrição de ordem) e considerar que qualquer x de R

pode ser também, deve-se corrigir com um fator de . Assim, a probabilidade de que há

exatamente fora do , verificadas cédulas são mal impressas e nenhuma são detectadas é:

100

Deve-se somar esta probabilidade de zero a k, pois pode acontecer que nenhuma das cédulas

mal impressas sejam verificadas, ou todas as cédulas mal impressas são verificadas. Assim,

conclui-se que a probabilidade nenhuma das k cédulas mal impressas sejam detectadas pelos r

eleitores que verificam é

Teorema 16. (sigilo do voto 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.

Como é óbvio que se o eleitor marcou inferior ao número máximo permitido,

isso é visível no registro público, quando verificado .

Suponhamos que o eleitor votou no número Máximo de candidatos e escolheu , para

manter um particular do lema 18 resulta que pode ser criado de tal forma que

representa qualquer . Porque compromete-se na etapa três e não é revelado

sendo independente de qualquer B(j,_) revelado na etapa quatro e nenhuma outra informação

é revelada até esta etapa, segue-se que nenhuma informação é revelada sobre o voto que o

eleitor escolheu.

Segue a mesma prova caso o candidato escolha como seu recibo.