https://github.com/reichert-lucas/electronic-voting-with-blockchain
Sistema de votação utilizando o framework Django e a tecnologia de blockchain. Neste projeto, foi desenvolvida uma blockchain genérica que funciona de forma distrbuída, visando disponibilizar ela para outras aplicações, via uma API REST. Será detalhada a implementação da aplicação em seus mínimos detalhes, visando ajudar futuros pesquisadores que desejarem estudar a tecnologia de blockchain, a motivação de detalhar a implementação do projeto, foi por notar que há muito conteúdo teórico em periódicos e online, porém há poucos conteúdos práticos que abordam o desenvolvimento de uma blockchain, ainda mais funcionando de forma distribuída. Para prova de conceito, foi desenvolvido uma aplicação web voltada para a votação eletrônica que vai acessar a API como uma aplicação cliente do web service, para armazenar informações sobre seus processos eleitorais.
https://github.com/reichert-lucas/electronic-voting-with-blockchain
api-rest blockchain django python remote-object voting web-sevice
Last synced: 3 months ago
JSON representation
Sistema de votação utilizando o framework Django e a tecnologia de blockchain. Neste projeto, foi desenvolvida uma blockchain genérica que funciona de forma distrbuída, visando disponibilizar ela para outras aplicações, via uma API REST. Será detalhada a implementação da aplicação em seus mínimos detalhes, visando ajudar futuros pesquisadores que desejarem estudar a tecnologia de blockchain, a motivação de detalhar a implementação do projeto, foi por notar que há muito conteúdo teórico em periódicos e online, porém há poucos conteúdos práticos que abordam o desenvolvimento de uma blockchain, ainda mais funcionando de forma distribuída. Para prova de conceito, foi desenvolvido uma aplicação web voltada para a votação eletrônica que vai acessar a API como uma aplicação cliente do web service, para armazenar informações sobre seus processos eleitorais.
- Host: GitHub
- URL: https://github.com/reichert-lucas/electronic-voting-with-blockchain
- Owner: reichert-lucas
- License: gpl-3.0
- Created: 2020-01-07T15:24:04.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-11-16T01:38:26.000Z (over 4 years ago)
- Last Synced: 2025-01-24T11:32:40.957Z (5 months ago)
- Topics: api-rest, blockchain, django, python, remote-object, voting, web-sevice
- Language: Python
- Homepage:
- Size: 36.8 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# BlockchainVoting
Sistema de votação utilizando o framework Django e a tecnologia de blockchain.
Neste projeto, foi desenvolvida uma blockchain genérica que funciona de forma distrbuída, visando disponibilizar ela para outras aplicações, via uma API REST. Será detalhada a implementação da aplicação em seus mínimos detalhes, visando ajudar futuros pesquisadores que desejarem estudar a tecnologia de blockchain, a motivação de detalhar a implementação do projeto, foi por notar que há muito conteúdo teórico em periódicos e online, porém há poucos conteúdos práticos que abordam o desenvolvimento de uma blockchain, ainda mais funcionando de forma distribuída. Para prova de conceito, foi desenvolvido uma aplicação web voltada para a votação eletrônica que vai acessar a API como uma aplicação cliente do web service, para armazenar informações sobre seus processos eleitorais.## Intalação do Ambiente Virtual (opcional)
pip intall virtualenv
virtualenv venv
source venv/bin/activate
## Configuração do Ambiente
sudo apt install python3.x
apt install python3-pip
pip3 install django==2.2.6
pip3 install pillow (manipulação de imagens)
pip3 isntall Pyro4 (manipulação de objetos remotos objetos remotos)
Em um terminal deve ser executado o comando pyro-ns vai ser utilizado para acessar objetos remotos com nomes amigáveis, por exemplo:
PYRO:obj_dcf713ac20ce4fb2a6e72acaeba57dfd@localhost:51850
PYRO:custom_name@localhost:51851Em outro terminal deve ser executado o comando ...... para a criação de uma blockchain remota.
# Algumas Telas do Sistema
## Desktop
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
## Mobile
![]()
![]()
![]()
## Integração da Blockchain com a API REST
![]()