Ragu is a Rust-language proof-carrying data (PCD) framework that implements a modified version of the ECDLP-based recursive SNARK construction from Halo [BGH19]. Ragu does not use a trusted setup. Developed for use with the Pasta curves used in Zcash, and designed specifically for use in Project Tachyon, Ragu targets performance and feature support that is competitive with other ECC-based accumulation/folding schemes without complicated circuit arithmetizations.
⚠️ Ragu is under heavy development and has not undergone auditing. Do not use this software in production.
- The Ragu Book provides high-level documentation about Ragu, how it can be used, how it is designed, and how to contribute. The source code for the book lives in this repository in the
booksubdirectory. - Unofficial (internal) library documentation is continually rendered based on the
mainbranch. This is primarily for developers of Ragu.
This library is distributed under the terms of both the MIT license and the Apache License (Version 2.0). See LICENSE-APACHE, LICENSE-MIT and COPYRIGHT.
