{"id":19595870,"url":"https://github.com/innovativeinventor/random-tournament-beacon","last_synced_at":"2026-06-12T12:31:25.614Z","repository":{"id":135192524,"uuid":"217768375","full_name":"InnovativeInventor/random-tournament-beacon","owner":"InnovativeInventor","description":"A secure randomness beacon utilizing the Bitcoin blockchain. Used to generate \"nothing up my sleeve\" seeds through cryptographic commitments and iterative hashing (as a time lock).","archived":false,"fork":false,"pushed_at":"2019-10-27T02:25:36.000Z","size":68080,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-26T14:27:12.147Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","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/InnovativeInventor.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-10-26T20:57:02.000Z","updated_at":"2021-12-31T01:07:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"52856293-75b2-4c33-b3d1-ae69203573f0","html_url":"https://github.com/InnovativeInventor/random-tournament-beacon","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/InnovativeInventor/random-tournament-beacon","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InnovativeInventor%2Frandom-tournament-beacon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InnovativeInventor%2Frandom-tournament-beacon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InnovativeInventor%2Frandom-tournament-beacon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InnovativeInventor%2Frandom-tournament-beacon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/InnovativeInventor","download_url":"https://codeload.github.com/InnovativeInventor/random-tournament-beacon/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InnovativeInventor%2Frandom-tournament-beacon/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34245217,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-12T02:00:06.859Z","response_time":109,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2024-11-11T08:49:10.561Z","updated_at":"2026-06-12T12:31:25.521Z","avatar_url":"https://github.com/InnovativeInventor.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Randomness Beacons\n\nThis project is designed to provide a secure, zero-trust randomness beacon for\nuse in generating random seeds. There are several SHA256 implementations used\nfor benchmarking purposes.\n\n## Building and Releasing\nDeps:\n```\n- gox\n```\n\nRun:\n```\nbash make_release.sh\n```\n\n## Security design\nIn order to create a trusted, secure randomness beacon, this project is\ndesigned to calculate the SHA256(merkle_root) in order to provide a trustworthy\nseed to randomly shuffle a list. In order to do this, the SHA256 function is\napplied 2^33 times to the merkle_root of a predetermined and fixed block in the\nBitcoin blockchain. \n\nIn order to tamper with the beacon, an adversary (or me)\nwould need to have the computing resources to reliably beat the miners on the\nBitcoin blockchain, while calculating 2^33 more SHA256 hashes. This means that\nfor an adversary it would be **at least 2^32 times harder than the difficulty\nneeded to reliably mine a single block** to carry out a successful attack (Bitcoin applies SHA256\ntwice). The adversary would also be subject to all the normal time constraints\nthat normal miners are subjected to (needs to be completed in under 10 minutes).\n\n## Known Bugs\nThe hashes from different implementations don't match up.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finnovativeinventor%2Frandom-tournament-beacon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finnovativeinventor%2Frandom-tournament-beacon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finnovativeinventor%2Frandom-tournament-beacon/lists"}