Last updated 6 months ago
Zero-Knowledge-Proofs (ZKPs) are increasingly relevant to ensure privacy in blockchain transactions. The Cardano ecosystem currently lacks a mature tooling for implementing ZKPs.
We will develop a set of tools using the Hydra protocol to adapt ZKP solutions that currently work on Ethereum, particularly ZK-SNARKs, enabling ZK-proof verifications on the Cardano blockchain.
This is the total amount allocated to A Zero Knowledge Proof framework for Cardano based on Hydra and ZK-SNARKS. 3 out of 3 milestones are completed.
1/3
Initial study of existing ZK tooling and elliptic curves
Cost: ₳ 22,500
Delivery: Month 1 - Nov 2023
2/3
Creation of ZK-verification smart contract code
Cost: ₳ 22,500
Delivery: Month 3 - Jan 2024
3/3
Hydra integration, code optimization, and documentation
Cost: ₳ 30,000
Delivery: Month 6 - Apr 2024
No dependencies.
Project will be fully open source.
We plan to enable a type of ZKPs known as ZK-SNARKs (“zero-knowlege succinct non-interactive argument of knowledge”) to Cardano users by leveraging existing open-source solutions, particularly CIRCOM and SNARKJS. We will develop off-chain tooling that will generate ZK-proofs whose verification will be executed on-chain by smart contracts running on a Hydra head. We will also develop said smart contracts, which will implement an "Optimal Ate" pairing adapted to the BN128 Elliptic Curve.
Zero-Knowledge-Proofs enable verification of information without revealing the information itself. By creating tools that enable native ZKPs on Cardano, we open the door for developers to create solutions where privacy is an important component. Furthermore, it is worth mentioning that ZKPs also have applications in scalability solutions and cross-chain protocols. Making sure that these tools exist in Cardano is of paramount importance given that ZKPs utilization in the Web3 space will increase significantly. This will allow novel applications, where a combination of transparency and privacy is required, to be brought to the Cardano ecosystem.
A successful completion of the project will mean having a Github repo offering:
Beyond the Github repo itself, an important measure of success is utilization of our tooling by the Cardano developers community.
We plan to make all the code fully open. This is just fair since we are leveraging existing open-source resources.
A very important “open” aspect of our project is the technical documentation that will be generated. ZKPs are very heavy on Mathematical sophistication, and having a clear documentation of how the Elliptic Curve implementation is executed will be very valuable to the community.
Our team was formed as a result of our participation in the Zero-Knowledge track of the Cardano Emurgo Build 2023 Hackaton. As a result of very intensive work we were able to:
Our team has a strong background in software development for the Cardano ecosystem and Mathematics research. (See section on ‘Project Team’ below.)
Our main goal is to develop the necessary tooling so that projects in the Cardano ecosystem can perform ZK-proof verification via smart contracts on Cardano, at the security and versatility level of the Groth16 protocol of ZK-SNARKS. Since this is currently not possible to do directly on the Cardano mainnet, our solution will use the Hydra protocol.
Deliverable of milestone 1. - The code for elliptic code pairing must pass property based testing corresponding to its well known expected mathematical properties (e.g. “bilinearity”). The resulting validator (before compilation to UPLC) should “ACCEPT” valid proofs generated in the context of the BN128 elliptic curve.
Deliverable of milestone 2. - Should have generated experimental tables of code performance for various components of the “pairing” algorithm. UPLC code generated from optimized validator should be amenable to be run by Hydra nodes.
Deliverable of milestone 3. - Tooling must have been written allowing users to deploy an integrated solution where ZK-proofs generated off-chain are then verified on-chain by a smart contract deployed using the Hydra protocol.
Deliverable of milestone 4 . - Well written documentation and sample applications should have been incorporated into the project’s repository.
Hourly rates are at or below typical software development standards. Development time based on our past experience as a team working on a ZKP related project.
NB: Monthly reporting was deprecated from January 2024 and replaced fully by the Milestones Program framework. Learn more here