-
Notifications
You must be signed in to change notification settings - Fork 8
Proposal: Replicating circom-MP-SPDZ to support tfhe-rs #67
Copy link
Copy link
Open
Labels
Application ProposalProposal submitted by applicantsProposal submitted by applicantsGrant Work in ProgressPassed review and work in progressPassed review and work in progress
Description
General Grant Proposal
- Project: Replicating circom-MP-SPDZ to support tfhe-rs Open Task RFP for Replicating circom-MP-SPDZ to support tfhe-rs #55
Project Overview 📄
Overview
replicate circom-MP-SPDZ to support tfhe-rs
Project Details
Team members
- Vishal Kulkarni
- Email: vishalkulkarni0045@gmail.com
- Telegram handle : @maxcartkoolkarni
- Discord handle : @maxcart_k
- Notion Account : vishalkoolkarni0045@gmail.com
Team members
- Changmin Cho
- Email: briliantepoch22@gmail.com
- Telegram handle : @indextree
- Discord handle : index.tree
- Notion Account : briliantepoch22@gmail.com
Team's experience
- Worked on the grant to support tfhe for the greco
- 2nd place on Ethcon Korea 2023: torch2circom, Built upon keras2circom and circomlib. Implemented some mathematical libraries about matrix operations.
- Finished 2023 ZK Summer Contribution Program
- The team has developed a practical product called ZK-Snap, an innovative private voting protocol tailored for decentralized communities and organizations, constructed using the halo2-axiom framework.
- Participated in Zk-Block1 of the yAcademy, where audited codebase built using circom.
- Constructed a rlwe pk-enc circuit for Greco .
- The team is skilled in constructing circuits using halo2-axiom, halo2-scroll, plonky2, and cirom.
Development Roadmap 🔩
Overview
- Total Estimated Duration: 8 weeks
- Total Estimated Working Hours: 150 hr
- Full-time** equivalent (FTE): 0.5
- Expected Start Date: Aug 20th 2024
- Expected End Date: Oct 15th 2024
Milestone 1 : Understanding tfhe-rs and Documentation
- Total Estimated Duration: 3 weeks
- FTE: 0.375
- Estimated delivery date: Sep 10 th 2024
Deliverables and Specifications
1a. Documentation
- A comprehensive tutorial explaining tfhe-rs's domains, supported operations and data types (and how they are compatible with circom's operations, paying special attention to binary, arithmetic in prime field and ring
$2^k$ ), security parameters, and number of parties supported. - Best practices and caveats.
- Step-by-step guide on executing example scenarios (covering as much of the discovered knowledge above as
possible for demonstration purposes) with tfhe-rs. - Understand circom-MP-SPDZ
Milestone 2 : Adaptation of circom-MP-SPDZ to circom-tfhe-rs
- Total Estimated Duration: 5 weeks
- FTE: 0.525
- Estimated delivery date: Oct 15th 2024
Deliverables and Specifications
2a. Functionality: Generate Circuits for tfhe-rs from Bristol Circuit
Modify circom-MP-SPDZ code to generate tfhe-rs circuit output from circom-2-arithc.
2b. Functionality: Generate Inputs for tfhe-rs from circom-MP-SPDZ Inputs
Modify circom-MP-SPDZ code to generate inputs for tfhe-rs from the inputs defined in circom-MP-SPDZ.
2c. Functionality: Run the Generated tfhe-rs Circuits and Inputs
Modify circom-MP-SPDZ code to run tfhe-rs and get parsed outputs.
Application
Component 2c runs tfhe-rs with the circuits generated by component 2a with the inputs generated from component 2b.
2d. Testing Guide
- Proper unit test coverage (above 90%) for circuit generation, input generation, and circuit execution.
- Integration tests for example circuits like op_tests, naive_search, two_outputs, and nn_circuit_small ( expected some tricky issues here due to incompatibility between circom front end and tfhe-rs backend, and also some configurations are needed, look into the original circom-MP-SPDZ for reference).
2e. Documentation
- Inline documentation of the code.
- Comprehensive documentation covering the entire workflow, from code modification to testing and execution.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Application ProposalProposal submitted by applicantsProposal submitted by applicantsGrant Work in ProgressPassed review and work in progressPassed review and work in progress