Commit Graph

2113 Commits

Author SHA1 Message Date
str4d 708b015cab
Merge pull request #414 from str4d/ci-rustdoc-fix
CI: Fix documentation rendering
2021-07-09 21:12:42 +01:00
Jack Grigg d868f2363d CI: Fix documentation rendering 2021-07-09 21:12:06 +01:00
str4d 7c897d52cc
Merge pull request #413 from str4d/ci-rustdoc
CI: Add workflow to render latest documentation
2021-07-09 20:59:33 +01:00
Jack Grigg 6eb3557ea3 CI: Add workflow to render latest documentation 2021-07-09 20:59:06 +01:00
str4d 3cab105c9c
Merge pull request #410 from nuttycom/nonempty_bump
Update nonempty crate version.
2021-06-30 20:21:09 +01:00
Kris Nuttycombe 105f8da91f Update `nonempty` and `orchard` dependencies. 2021-06-30 12:57:56 -06:00
str4d 4ac5977c91
Merge pull request #409 from nuttycom/fix_clippy
Fix clippy complaints
2021-06-24 01:28:44 +01:00
Kris Nuttycombe 1ae2bd727c Fix clippy complaints 2021-06-23 16:37:48 -06:00
str4d 0205252692
Merge pull request #407 from str4d/ua-test-vectors
zcash_address: Add Unified Address test vectors
2021-06-18 20:40:57 +01:00
Jack Grigg 752ee442f8 zcash_address: Add Unified Address test vectors 2021-06-18 20:06:02 +01:00
str4d 0c3ed15998
Merge pull request #405 from str4d/bump-orchard-deps
Bump orchard deps
2021-06-15 21:54:30 +01:00
Jack Grigg 69ee9f8ca5 Bump orchard deps
Includes additional patched dependencies, now that the orchard crate is
not pinning specific revisions of the in-development crates.
2021-06-15 20:20:53 +01:00
str4d fe4b63c8fe
Merge pull request #401 from str4d/368-zip-221-orchard
`zcash_history`: Implement v2 history tree with Orchard support
2021-06-15 17:49:59 +01:00
Daira Hopwood d88e40113c
Merge pull request #402 from str4d/amount-to-orchard-valuesum
impl From<Amount> for orchard::ValueSum
2021-06-14 22:46:22 +01:00
Jack Grigg 00b3e427e6 impl From<Amount> for orchard::ValueSum
This is necessary in order to be able to calculate bvk for Orchard
bundles.
2021-06-14 11:41:02 +01:00
Jack Grigg fcbe9a842a zcash_history: Migrate tests to V2 format
V2 is implemented as a wrapper around V1, so this simply expands the
tested code.
2021-06-11 02:12:01 +01:00
Jack Grigg e84bb874af zcash_history: Implement V2 tree format 2021-06-11 02:10:16 +01:00
Jack Grigg 63f554b308 zcash_history: Introduce Version trait
Each Zcash epoch (between two network upgrades) has a separate history
tree, making it easy to switch the node data format at network upgrades.
This commit enables the general tree logic to be shared across history
tree versions.
2021-06-11 02:02:07 +01:00
str4d cc533a9da4
Merge pull request #400 from str4d/rework-shieldedoutput-api
zcash_note_encryption: Add `ShieldedOutput::ephemeral_key() -> EphemeralKeyBytes`
2021-06-10 19:22:03 +01:00
Jack Grigg c7c79d266e zcash_note_encryption: Add `ShieldedOutput::ephemeral_key() -> EphemeralKeyBytes`
This replaces the `ShieldedOutput::epk() -> &Domain::EphemeralPublicKey`
which could not be satisfied by output types that did not parse epk.
2021-06-10 18:35:19 +01:00
str4d 3915abd0a1
Merge pull request #399 from str4d/zip-244-auth-digest-test-vectors
Bring in ZIP 244 auth digest test vectors.
2021-06-08 19:47:55 +01:00
Jack Grigg 684fd504a8 ZIP 244: Write transparent scripts in their consensus encoding 2021-06-08 18:47:34 +01:00
str4d fe07fb3c51
Merge pull request #396 from str4d/394-zip-216
Impl ZIP 216 on SaplingVerificationContext and redjubjub::PublicKey
2021-06-08 18:34:47 +01:00
Kris Nuttycombe 31ea91ced8 Ensure tze digest is only included if TZEs are in the consensus rules. 2021-06-08 11:33:52 -06:00
Jack Grigg acc19a76e2 Bring in ZIP 244 auth digest test vectors.
From https://github.com/zcash-hackworks/zcash-test-vectors/pull/34.
2021-06-08 18:17:30 +01:00
str4d 29c5afe52b
Merge pull request #398 from str4d/zip225-orchard-refactor
Extract ZIP 225 Orchard bundle parsing and serialization into helpers
2021-06-08 17:59:36 +01:00
Jack Grigg 7e23b96a03 Extract ZIP 225 Orchard bundle parsing and serialization into helpers
These will be used by `zcashd` for handling the Orchard component of v5
transactions.
2021-06-08 17:29:04 +01:00
str4d 0bfd1f7544
Merge pull request #375 from nuttycom/feature/zip-225
ZIP 225 & ZIP 244
2021-06-08 17:28:25 +01:00
Kris Nuttycombe eb3d01aa6b
Apply suggestions from code review
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2021-06-08 07:02:52 -06:00
Kris Nuttycombe f70285d243 Fix error in transaction auth digest.
Co-authored-by: str4d <jack@electriccoin.co>
2021-06-07 09:27:05 -06:00
Kris Nuttycombe 371f84dc9b Minor error message improvement.
Co-authored-by: str4d <jack@electriccoin.co>
2021-06-07 09:27:05 -06:00
Kris Nuttycombe 0253442af0 Be more explicit about empty sapling & orchard hashes. 2021-06-07 09:27:05 -06:00
str4d 2f3e4989ba
Merge pull request #352 from str4d/zcash_address
New component: zcash_address crate
2021-06-07 00:36:48 +01:00
Jack Grigg af02e1142b zcash_address: Fix clippy lint 2021-06-07 00:13:21 +01:00
str4d 1590565f04
zcash_address: Minor cleanups
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2021-06-06 23:58:52 +01:00
str4d f36034cfac
zcash_address: Use exhaustive matching in Display impl
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2021-06-06 23:54:11 +01:00
Jack Grigg e2fb5e6402 Impl ZIP 216 on SaplingVerificationContext and redjubjub::PublicKey
`PublicKey::verify` now always uses post-ZIP 216 validation rules, which
is fine in non-consensus contexts.

`SaplingVerificationContext` is used by `zcashd`'s consensus rules.
2021-06-06 23:45:15 +01:00
Kris Nuttycombe b93c503263 Deserialize signatures directly into actions.
Co-authored-by: str4d <jack@electriccoin.co>
2021-06-05 10:19:36 -06:00
Kris Nuttycombe 4f764c3c80 Use Vector read/write operations where possible instead of Array
Co-authored-by: str4d <jack@electriccoin.co>
2021-06-05 10:12:39 -06:00
Kris Nuttycombe 97bef30582 Remove consensus branch id from roundtrip serialization check.
Possible now that it's part of the transaction.
2021-06-05 09:48:52 -06:00
Kris Nuttycombe 47ce97c3d2 Keep builder spend data in spend_auth_sig fields. 2021-06-05 09:45:55 -06:00
Kris Nuttycombe 69e5a491ff Fix generation of arbitrary jubjub points. 2021-06-04 17:28:44 -06:00
Kris Nuttycombe d0a911cb87 Fix rustdocs 2021-06-04 16:38:01 -06:00
Kris Nuttycombe 28d3f481cd Apply suggestions from code review. 2021-06-04 16:38:01 -06:00
Kris Nuttycombe e71a1ce345 Rename Vector::write_items -> Array::write and Vector::read_count -> Array::read 2021-06-04 16:38:01 -06:00
Kris Nuttycombe 4623f98d9a Fix bugs in construction of Sapling txid hashes. 2021-06-04 16:38:01 -06:00
Kris Nuttycombe df0095ebba Add ZIP-244 test vectors. 2021-06-04 15:45:39 -06:00
Kris Nuttycombe 6348400cf4 Store patial authorizing data for sapling components in bundle authorization. 2021-06-04 15:45:39 -06:00
Kris Nuttycombe 6635895e55 Clean up TZE signature generation. 2021-06-04 15:45:39 -06:00
Kris Nuttycombe ab1b31ebf6 Store partial authorizing data for transparent txs in transparent authorization. 2021-06-04 15:45:39 -06:00