{"id":23821370,"url":"https://github.com/adityarajsingh/block-vote","last_synced_at":"2026-04-18T00:31:43.997Z","repository":{"id":99479941,"uuid":"199174115","full_name":"AdityaRajSingh/Block-Vote","owner":"AdityaRajSingh","description":"Our submission for Codefundoo++ 2019","archived":false,"fork":false,"pushed_at":"2020-06-29T12:00:46.000Z","size":11544,"stargazers_count":3,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-23T15:21:24.656Z","etag":null,"topics":["blockchain","dapp","ethereum-dapp","microsoft-azure","solidity","voting-application"],"latest_commit_sha":null,"homepage":"https://youtu.be/BhVpoVl9xOU","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AdityaRajSingh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-27T14:20:22.000Z","updated_at":"2023-10-08T15:33:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"69a8aa8e-1722-441d-a204-885a388297fb","html_url":"https://github.com/AdityaRajSingh/Block-Vote","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AdityaRajSingh/Block-Vote","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdityaRajSingh%2FBlock-Vote","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdityaRajSingh%2FBlock-Vote/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdityaRajSingh%2FBlock-Vote/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdityaRajSingh%2FBlock-Vote/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AdityaRajSingh","download_url":"https://codeload.github.com/AdityaRajSingh/Block-Vote/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdityaRajSingh%2FBlock-Vote/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31951258,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-17T17:29:20.459Z","status":"ssl_error","status_checked_at":"2026-04-17T17:28:47.801Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blockchain","dapp","ethereum-dapp","microsoft-azure","solidity","voting-application"],"created_at":"2025-01-02T08:39:13.840Z","updated_at":"2026-04-18T00:31:43.930Z","avatar_url":"https://github.com/AdityaRajSingh.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Block-Vote\n\n* [Presentation of our project](https://docs.google.com/presentation/d/1ds6Hmaqtl3wEkaKsUDTKEA8mRXnYC4CNR0T72g4lfl8/edit?usp=sharing)\n\n* [Demo of our project](https://youtu.be/BhVpoVl9xOU)\n#  Decentralized E-Voting System Using Blockchain Technology\n\n\n## **Introduction**\n\n\nOur country has been frequently scandalised by Electronic Voting Machine (EVM) scams as of late. [Several reports and studies](https://indiaevm.org/evm_tr2010-jul29.pdf?source=post_page) have been brought into the public domain that allege that EVMs' hardware and software can be tampered with. Though the Election Commission of India (ECI) has denied each report stating that EVMs have equipment or programming vulnerabilities that can be abused to confer election malpractices.\n\n## **Idea**\nThe working of E-Voting system using Blockchain is:\n\n### Requesting to vote:\nThe user will have to log in to the voting system using his credentials- in this case, the e-voting system will use his Aadhaar Number, and the voting confirmation number provided to registered voters by the local\nauthorities. The system will check all information entered and, if matched with a valid voter, the user will be authorized to\ncast a vote.\n\n### Casting a vote:\nCasting the vote will be done through a friendly user interface. For each voter a token is generated known as Ethereum, with initial Boolean value one, once a vote is casted it becomes zero. A voter can cast a vote if and only if Ethereum value is one. In this way revoting problem is resolved.\n\n### Encrypting votes:\nAfter the user casts his vote, the system will generate an input that contains the voter identification\nnumber followed by the complete name of the voter as well as the hash of the previous vote. This way each input will be unique and ensure that the encrypted output will be unique as well. The encrypted information will be recorded in the block header of each vote cast. The information related to each vote will be encrypted using SHA one-way hash function that has no known reverse to it. The only theoretically possible way to reverse the hash would be to guess the seed data and the encryption method and then hash it to see if the results match. This way of hashing votes makes it nearly impossible to reverse engineer, therefore there would be no way voters' information could be retrieved.\n\n### Adding the vote to the Blockchain:\nAfter a block is created, and depending on the candidate selected, the information is\nrecorded in the corresponding blockchain. Each block gets linked to the previously cast vote.\n\n![](https://res.cloudinary.com/practicaldev/image/fetch/s--a9s-VZ7n--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/qp8u0e1mo5dd7x1jhiot.png)\n\n\nTo ensure that the system is secure, the block will contain the previous voter’s information. If any of the\nblocks were compromised, then it would be easy to find out since all blocks are connected to each other. The\nblockchain is decentralized and cannot be corrupted, no single point of failure exists. The blockchain is where the\nactual voting takes place. The user’s vote gets sent to one of the nodes on the system, and the node then adds the vote\nto the blockchain. The voting system will have a node in each district to ensure the system is decentralized.\n\n## **Advantages of Voting on Blockchain**\n\n* Eliminate voter fraud and ensure Right to Vote:\n\n* Transparent Elections:\n\n* A secure Voting Platform:\n\n* Voting made Accessible to every citizen:\n\n\n## **Technology Stack**\n\n* Node.js, HTML, CSS\n* Javascript\n* Solidity\n* Ethereum\n* Azure Blockchain\n* Mongo DB\n* Truffle\n* Ganache CLI\n\n\n## **APIs, Datasources and Documentation**\n* [Datasets on Open Government Data Platform India](https://data.gov.in/)\n* [Azure Blockchain Workbench Documentation](https://docs.microsoft.com/en-us/azure/blockchain/workbench/)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadityarajsingh%2Fblock-vote","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadityarajsingh%2Fblock-vote","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadityarajsingh%2Fblock-vote/lists"}