{"id":19147803,"url":"https://github.com/refcell/rthaler","last_synced_at":"2026-01-07T18:48:30.789Z","repository":{"id":150177812,"uuid":"497035316","full_name":"refcell/rthaler","owner":"refcell","description":"Thaler's Proofs, Args, and ZK Implemented in Rust using arkworks","archived":false,"fork":false,"pushed_at":"2022-06-04T10:58:16.000Z","size":181,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-18T05:09:30.473Z","etag":null,"topics":["rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/refcell.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":"2022-05-27T14:50:47.000Z","updated_at":"2022-06-19T23:17:17.000Z","dependencies_parsed_at":"2023-04-15T02:24:56.185Z","dependency_job_id":null,"html_url":"https://github.com/refcell/rthaler","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":"refcell/stub.rs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refcell%2Frthaler","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refcell%2Frthaler/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refcell%2Frthaler/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refcell%2Frthaler/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/refcell","download_url":"https://codeload.github.com/refcell/rthaler/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249714506,"owners_count":21314854,"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":["rust"],"created_at":"2024-11-09T07:52:24.804Z","updated_at":"2026-01-07T18:48:30.745Z","avatar_url":"https://github.com/refcell.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg align=\"right\" width=\"150\" height=\"150\" top=\"100\" src=\"./assets/readme.jpg\"\u003e\n\n# rthaler • [![tests](https://github.com/abigger87/rthaler/actions/workflows/tests.yaml/badge.svg)](https://github.com/abigger87/rthaler/actions/workflows/tests.yaml) [![lints](https://github.com/abigger87/rthaler/actions/workflows/lints.yaml/badge.svg)](https://github.com/abigger87/rthaler/actions/workflows/lints.yaml) ![GitHub](https://img.shields.io/github/license/abigger87/rthaler)  ![Crates.io](https://img.shields.io/crates/v/rthaler)\n\nDr. Thaler's book [Proofs, Args, and ZK](https://people.cs.georgetown.edu/jthaler/ProofsArgsAndZK.pdf) implemented in rust using the [arkworks](https://arkworks.rs) cryptographic rust toolset.\n\nVarious Zero Knowledge Protocols are implemented at the subdirectory level. For interactivity between provers and verifiers, `rthaler` uses the [actix](https://actix.rs/) [actor framework](https://docs.rs/actix/0.13.0/actix/) to pass messages between the provers and verifiers. In order to do this, both the prover and the verifier implement actix's [Actor Trait](https://docs.rs/actix/0.13.0/actix/trait.Actor.html).\n\n\n\n## Implementations\n\n**Sum Check**\n\n[`./sumcheck`](./sumcheck/) implements the sum-check protocol following [0xsage](https://medium.com/@0xsage)'s Medium [tutotial](https://medium.com/yearofzk/rust-guide-sum-check-protocol-18ceb8affdb2).\n\n\n\n## Usage\n\n**Build**\n```bash\ncargo build\n```\n\n**Run Tests**\n```bash\ncargo test\n```\n\n\n## Blueprint\n\n```ml\nutils\n├─ refactored utilities\nsumcheck\n├─ \n```\n\n\n## Contributing\n\nAll contributions are welcome! We want to make contributing to this project as easy and transparent as possible, whether it's:\n  - Reporting a bug\n  - Discussing the current state of the code\n  - Submitting a fix\n  - Proposing new features\n  - Becoming a maintainer\n\nPlease be aware, when you submit code changes, your submissions are understood to be under the same [THE UNLICENSE](https://github.com/abigger87/rthaler/blob/master/LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern.\n\nWe use GitHub issues to track public bugs. Report a bug by [opening a new issue](https://github.com/abigger87/rthaler/issues/new); it's that easy!\n\n\n## License\n\nAll code and contributions made directly to this repository are expressly understood to be licensed under the [UNLICENSE](https://github.com/abigger87/rthaler/blob/master/LICENSE) as aforementioned.\n\n## References\n\n- [0xsage](https://medium.com/@0xsage)'s walkthrough of implementing the sum-check protocol with arkworks on [medium](https://medium.com/yearofzk/rust-guide-sum-check-protocol-18ceb8affdb2)\n- [arkworks sumcheck](https://github.com/arkworks-rs/sumcheck)\n- [Contributing Example](https://gist.github.com/briandk/3d2e8b3ec8daf5a27a62)\n- [Production Grade Logging in Rust](https://betterprogramming.pub/production-grade-logging-in-rust-applications-2c7fffd108a6)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frefcell%2Frthaler","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frefcell%2Frthaler","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frefcell%2Frthaler/lists"}