Go to file
Daira Hopwood 6b2009635d [GitHub Actions] Generate Bitcoin-flavoured test vectors with .json filetype.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-02-07 22:58:59 +00:00
.github/workflows [GitHub Actions] Generate Bitcoin-flavoured test vectors with .json filetype. 2022-02-07 22:58:59 +00:00
test-vectors Commit all JSON and Zcash test vectors. fixes #64 2022-02-07 22:58:59 +00:00
zcash_test_vectors Fix serialization of nested arrays in JSON. 2022-02-07 22:58:59 +00:00
.gitignore
COPYING.md
LICENSE-APACHE
LICENSE-MIT
README.md
f4jumble_long.py Remove dependency on pyblake2. 2022-02-02 02:44:40 +00:00
orchard_empty_roots.py
orchard_map_to_curve.py
orchard_poseidon_hash.py
poetry.lock Remove dependency on pyblake2. 2022-02-02 02:44:40 +00:00
pyproject.toml Remove dependency on pyblake2. 2022-02-02 02:44:40 +00:00
regenerate.sh Add test vectors for unified IVKs. 2022-02-07 20:04:30 +00:00
unified_address.py
unified_full_viewing_keys.py Reduce differences between unified_full_viewing_keys.py and unified_incoming_viewing_keys.py. 2022-02-07 20:30:01 +00:00
unified_incoming_viewing_keys.py Add test vectors for unified IVKs. 2022-02-07 20:04:30 +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 either one of the scripts listed in pyproject.toml, or one of the Python files in the root directory.

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.