D-VOTE is a decentralized voting system based on ethereum blockchain. E-voting is a trending, yet critical topic related to the online services.
The blockchain with the smart contracts, emerges as a good candidate to use in development of safer, cheaper, more secure, more transparent, and easier-to-use electronic voting systems. Ethereum and its network is one of the most suitable blockchains, due to its consistency, widespread use, and provision of smart contracts logic.
An e-voting system must be secure, as it should not allow duplicated votes and be fully transparent, while protecting the privacy of the attendees.
git clone https://github.com/sigmaducc/d-vote && cd d-vote
npm install
Run the project
npm run dev
- Setup Ganache-cli and start the local blockchain
- Setup Truffle and deploy the smart contracts
- Zeroth account in Ganache-cli is the admin account in metamask
- Admin panel (Can see the zeroth account). Add admin details.
5.Admin can initiate the elections now and confirm the transaction in metamask
- Add the election candidates
- All the other accounts in ganache-cli can be voter accounts except the zeroth account(admin). Voter’s metamask
- Voter registration
- Admin Verification
- After admin verification
- Cast vote
- Result