https://github.com/siddhantprateek/networkpoll
NetworkPoll is Ethereum network based E2E secure voting system using IPFS and Blockchain to maintain voter confidentiality.
https://github.com/siddhantprateek/networkpoll
blockchain javascript matic polygon python react react-native solidity typscript
Last synced: 12 months ago
JSON representation
NetworkPoll is Ethereum network based E2E secure voting system using IPFS and Blockchain to maintain voter confidentiality.
- Host: GitHub
- URL: https://github.com/siddhantprateek/networkpoll
- Owner: siddhantprateek
- License: other
- Created: 2022-10-06T12:39:34.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-04-02T10:32:12.000Z (almost 3 years ago)
- Last Synced: 2025-02-15T16:50:18.232Z (about 1 year ago)
- Topics: blockchain, javascript, matic, polygon, python, react, react-native, solidity, typscript
- Language: JavaScript
- Homepage:
- Size: 6.55 MB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
NetworkPoll
Networkpoll is a decentralised, blockchain-based, end-to-end secure, anonymous, anti-quantum, and tamper-resistant electronic voting system. To protect itself against quantum attacks, our application employs quantum cryptography. For automating the execution, our programme makes use of Solidity smart contracts as well as several additional libraries. Through the Polygon network, which utilizes a modified proof-of-stake consensus process, our application contracts are distributed. We offer a number of security features that make it difficult for a third party to access the voting data.

## Tech Stack












## Project File Description
| Files/Folders `(Path)` | Description |
| -------- | -------- |
| `assets` | Consist public assets and architecture diagrams |
| `build` | Consist Contracts ABIs for interactions with smart contract. |
| `client` | Folder consists React framework to build client voting window. |
| `contract` | It consists of Solidity smart contract |
| `migrations` | Contains Deployment Scripts |
| `mobile` | Voter/Client-side Mobile device |
| `src` | Application encryptions using Flask framework - python based framework |
| `test` | Contract Testing folder |
| `truffle-config.js` | Truffle configuration file |
| `src/modules` | Contains Encryption algorithms |
| `client/src` | React Source Code |
| `client/src/components` | React Components |
| `mobile/components` | React Native Components |
## Application Setup
- Fork the repository [siddhantprateek/networkpoll](https://github.com/siddhantprateek/networkpoll)
- ```shell
git clone https://github.com//networkpoll
cd networkpoll
```
### Setting up Python-dev environment
- Install Python3 and above [python.org](https://www.python.org/)
- ```javascript
cd services
mkdir
python -m venv .venv
source .venv/Scripts/activate
```
### Setting up Nodejs-dev environment
- Install [NodeJs](https://nodejs.org/en/)
- ```javascript
cd services
mkdir ; cd
npm init -y
```
## Project Report
- ✅ Connected to Layer 2 Blockchain Network (Polygon)
- ✅ Elliptical Curve Deffie-Hellman Key Generation Integration
- ✅ Quantum Key Generation Algorithm Integration
- ❌ Create Mobile Client
- ❌ Web Browser based client
- ✅ Contract deployed over polygon Network
- ✅ Contract Tested over network
- ✅ Test Mutliple transactions processing for Smart Contract
- ✅ Python server response rate analytics
- ✅ NodeJs server response rate analytics
- ✅ Interaction with Smart Contract
- ✅ Integration IPFS and Blockchain storage (OrbitDB)
## Endpoints
| Endpoint | Description |
| -------- | -------- |
| `/` | Description |
| `/keys` | Description |
```shell
docker-compose up -d prometheus
docker-compose up -d grafana
docker-compose up -d grafana-dashboards
```