{"id":23712409,"url":"https://github.com/lee-seokmin/BlockChainVotingSystem","last_synced_at":"2026-02-08T05:30:18.867Z","repository":{"id":268976514,"uuid":"905552148","full_name":"seokmin12/BlockChainVotingSystem","owner":"seokmin12","description":"🗳️ Voting System based on BlockChain","archived":false,"fork":false,"pushed_at":"2024-12-21T09:07:50.000Z","size":189,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-30T19:58:47.736Z","etag":null,"topics":["blockchain","crypto","python","voting-system"],"latest_commit_sha":null,"homepage":"","language":"Python","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/seokmin12.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":"2024-12-19T04:09:59.000Z","updated_at":"2024-12-23T01:37:42.000Z","dependencies_parsed_at":"2024-12-20T04:34:35.754Z","dependency_job_id":"bb215ce4-dec1-4add-ac6e-88e927d01c01","html_url":"https://github.com/seokmin12/BlockChainVotingSystem","commit_stats":null,"previous_names":["seokmin12/blockchainvotingsystem"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seokmin12%2FBlockChainVotingSystem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seokmin12%2FBlockChainVotingSystem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seokmin12%2FBlockChainVotingSystem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seokmin12%2FBlockChainVotingSystem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/seokmin12","download_url":"https://codeload.github.com/seokmin12/BlockChainVotingSystem/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239800431,"owners_count":19699122,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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","crypto","python","voting-system"],"created_at":"2024-12-30T19:58:50.461Z","updated_at":"2026-02-08T05:30:18.482Z","avatar_url":"https://github.com/seokmin12.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n    \u003ch3\u003e🗳️ 블록체인 기반 투표 시스템\u003c/h3\u003e\n    \u003ch4\u003eVoting System Based On BlockChain\u003c/h4\u003e\n\u003c/div\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n    \u003ca href=\"https://opensource.org/licenses/MIT\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/License-MIT-yellow.svg\"\u003e\n    \u003c/a\u003e\n    \u003cbr\u003e\n    \u003cimg src=\"https://img.shields.io/badge/python-3776AB?style=for-the-badge\u0026logo=python\u0026logoColor=ffffff\"\u003e\n\u003c/div\u003e\n\n## Introduction 📌\n2024년 12월 3일 22시 23분경 (KST) 대한민국의 제20대 대통령인 [윤석열](https://namu.wiki/w/%EC%9C%A4%EC%84%9D%EC%97%B4) 대통령은 대한민국 전역에 비상계엄을 선포했다. [참고 자료](https://www.nytimes.com/2024/12/03/world/asia/what-is-martial-law-south-korea.html)\\\n12월 3일 밤 10시 23분 경 긴급 브리핑을 연 윤석열 대통령은 종북과 반국가세력을 척결하고 자유대한민국을 수호하겠다는 명분으로 전국 단위의 비상계엄을 선포함에 따라 계엄사령부를 설치하고 [계엄군](https://namu.wiki/w/%EA%B3%84%EC%97%84?from=%EA%B3%84%EC%97%84%EA%B5%B0)을 동원했다.\\\n계엄군은 국회 및 선거관리위원회등을 공격했다. 계엄군은 국회에 투입된 병력과 버금가는 병력으로 각 지역의 선거관리위원회를 공격했으며, 이후 언론과의 인터뷰에서 [김용현](https://namu.wiki/w/%EA%B9%80%EC%9A%A9%ED%98%84) 전 국방장관이 [선관위 부정선거 의혹 수사가 필요한지 판단하기 위해서](https://namu.wiki/w/%EC%A0%9C21%EB%8C%80%20%EA%B5%AD%ED%9A%8C%EC%9D%98%EC%9B%90%20%EC%84%A0%EA%B1%B0/%EB%B6%80%EC%A0%95%EC%84%A0%EA%B1%B0%20%EC%9D%8C%EB%AA%A8%EB%A1%A0) 선거관리위원회에 계엄군을 진입시켰다고 언급했다.\\\n또한 [키르기스스탄](https://namu.wiki/w/%ED%82%A4%EB%A5%B4%EA%B8%B0%EC%8A%A4%EC%8A%A4%ED%83%84)에서도 2020년 10월 4일 총선에서 집권 여당이 승리를 거두었지만, 선거운동을 하는 가운데 유권자 매수가 심각하게 이루어졌다고 밝혀졌고 6일 키르기스스탄 중안선관위에서 [선거결과를 무효화하기로 결정했다.](https://www.hani.co.kr/arti/international/asiapacific/964799.html)\\\n이에 나는 블록체인 기술을 기반으로 투표권을 보호하여 투표를 한다면 부정선거를 줄일 수 있지 않을까라는 생각에 개발하게 되었다.\n\n## Pros VS Cons 🥊\n블록체인 기술 기반 투표도 장단점이 존재한다.\n* 장점\n    * 위, 변조할 수 없어 보안성과 투명성이 보장된다.\n    * 장소, 시간등 물리적 한계 극복이 가능해 많은 사람들이 참여가 가능해진다.\n* 단점\n    * PC, 모바일 사용이 익숙하지 않거나 온라인 투표를 경험한 적 없는 사람은 투표 참여를 포기할 가능성이 있다.\n    * 본인이 직접 투표했다는 사실을 증명하기 어렵다.\n\n## Structure 📚\n투표 내역은 [SHA-256](https://namu.wiki/w/SHA?from=SHA-256) 암호 알고리즘을 이용해 보호하였다.\n![SHA-256](./screenshots/sha256.png)\n각 [블록](./VotingModel/Block.py)들은 [투표 내역](./VotingModel/Transaction.py), 시간, 해쉬등을 포함하여 연결되었다.\n![BlockChainStructure](./screenshots/Blocks.png)\n\n## Getting Started 🚀\nFirst, install all dependencies.\n```bash\npip install -r requirements.txt\n```\nAnd, run [main.py](./main.py)\n```bash\npython3 main.py\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flee-seokmin%2FBlockChainVotingSystem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flee-seokmin%2FBlockChainVotingSystem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flee-seokmin%2FBlockChainVotingSystem/lists"}