#zcash #sapling #crypto #blockchain #cryptocurrency

wagyu-zcash-parameters

A library for loading Zcash Sapling parameters

2 unstable releases

0.2.0 Mar 31, 2020
0.1.0 Mar 31, 2020

#9 in #sapling

Download history 708/week @ 2024-07-03 1332/week @ 2024-07-10 1832/week @ 2024-07-17 2105/week @ 2024-07-24 1554/week @ 2024-07-31 2335/week @ 2024-08-07 1848/week @ 2024-08-14 3570/week @ 2024-08-21 1578/week @ 2024-08-28 1428/week @ 2024-09-04 1035/week @ 2024-09-11 962/week @ 2024-09-18 1990/week @ 2024-09-25 1858/week @ 2024-10-02 1637/week @ 2024-10-09 1440/week @ 2024-10-16

7,050 downloads per month
Used in 11 crates (5 directly)

MIT/Apache

51MB
112 lines

wagyu-zcash-parameters

Crates.io Authors License

This library imports Zcash Sapling parameters natively into your Rust code.

Usage

Use this library in your Rust code, add the following to your Cargo.toml:

[dependencies]
wagyu-zcash-parameters = { version = "0.2.0" }

In your Rust code, add the following:

use wagyu_zcash_parameters::load_sapling_parameters;

// Loads Zcash Sapling parameters as buffers
let (spend, output) = load_sapling_parameters();

println!("Number of bytes in Sapling spend parameter: {:?}", spend.len());
println!("Number of bytes in Sapling output parameter: {:?}", output.len());

Purpose

This crate dynamically produces the Zcash Sapling parameters by fetching and recombining the raw parameter data from a collection of crates published specifically for constructing the Zcash Sapling parameters.

Crates.io maintains a maximum size limit of 10,485,760 bytes for each published crate. This size restriction is beyond the capacity of the Zcash Sapling spend and output parameters, which are 47,958,396 bytes and 3,592,860 bytes respectively.

Developers

To run the test, run:

cargo test

To run the example, run:

cargo run --example load_sapling_parameters

The example should output:

Number of bytes in Sapling spend parameter: 47958396
Number of bytes in Sapling output parameter: 3592860

License

This work is licensed under either of the following licenses, at your discretion.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies