Go to file
Jack Grigg 97455a1eff Add key prefixing to RedJubjub
The original draft spec for RedJubjub did not include key prefixing, and
both this reference implementation and the Rust implementation were
implemented following that spec. Then when key prefixing was added, the
Rust code was updated at its call sites instead of inside the RedJubjub
implementation.

Now that we are migrating to the `redjubjub` crate which correctly builds
in key prefixing, the old test vectors can no longer be used.
2023-12-01 14:02:25 +00:00
.github/workflows Update dependency versions. 2022-09-19 15:36:15 -06:00
test-vectors Add key prefixing to RedJubjub 2023-12-01 14:02:25 +00:00
zcash_test_vectors Add key prefixing to RedJubjub 2023-12-01 14:02:25 +00:00
.gitignore Additions to .gitignore. 2018-07-03 15:04:41 +01:00
COPYING.md Move COPYING to COPYING.md so that it will be rendered correctly by GitHub. 2021-10-12 14:12:11 +01:00
LICENSE-APACHE Add license information 2019-07-03 17:37:23 +01:00
LICENSE-MIT Update copyright year in LICENSE-MIT. 2022-01-04 19:34:54 +00:00
README.md Move remaining scripts out of the root directory. 2022-02-08 13:53:57 +00:00
orchard_vesta.py Correct ROOT_OF_UNITY. 2021-10-12 15:36:43 +02:00
poetry.lock Migrate to ripemd-hash dependency 2023-11-22 02:59:02 +00:00
pyproject.toml Generate hardened-only Sapling ZIP 32 test vectors 2023-11-22 02:59:04 +00:00
regenerate.sh Generate hardened-only Sapling ZIP 32 test vectors 2023-11-22 02:59:04 +00:00

README.md

Zcash Python test vectors

Code to generate test vectors for various parts of Zcash.

The generated test vectors are checked into the repository:

  • test-vectors/json/: JSON format.
  • test-vectors/rust/: Rust format, suitable for copying into a Rust library or application to use from #[cfg(test)] code.
  • test-vectors/zcash/: Bitcoin-flavoured JSON format (where 256-bit values are encoded as byte-reversed hex strings), for use in zcashd unit tests.

To generate the test vectors yourself (for example, to generate a larger set after adjusting:

  • Install poetry.
  • poetry install
  • poetry run SCRIPT_NAME [-t json|rust|zcash]
    • SCRIPT_NAME is one of the scripts listed in pyproject.toml.

License

Licensed under either of

at your option.

Contribution

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.