Este é um sistema utilizado como prova de conceito para um hipotético sistema eletrônico de votação política, baseado em blockchain e com a implementação de assinatura cega, com o objetivo de prover maior segurança da informação ao processo eleitoral. O sistema foi desenvolvido como como parte dos requisitos necessários à obtenção do certificado de Bacharel em Sistemas de Informação, do curso de Graduação em Sistemas de Informação, do Centro Federal de Educação Tecnológica Celso Suckow da Fonseca (CEFET/RJ).
Para utilizar este sistema serão necessárias 4 máquinas virtuais configuradas com um sistema operacional da distribuição Linux (preferencialmente Ubuntu). Certifique-se de que o Python 3.6 (ou uma versão superior) e o OpenSSL estão instalados em suas máquinas por padrão. Caso contrário, instale você mesmo a partir das instruções dos links.
Cada pasta deste repositório representa o conjunto de arquivos que deve ser armazenado em cada máquina virtual:
- Máquina virtual 1: servidor central da autarquia responsável pela eleição
- Máquina virtual 2: terminal do mesário, na seção eleitoral
- Máquina virtual 3: terminal de escolha do candidato, na seção eleitoral
- Máquina virtual 4: terminal de depósito do voto, na seção eleitoral
Especialmente na Máquina virtual 4, será necessário instalar o BigChainDB e o seu driver para Python.