Commit Graph

1449 Commits

Author SHA1 Message Date
Kris Nuttycombe d4abd05512 Add comments to demo extension. 2020-09-18 11:50:50 -06:00
Kris Nuttycombe 924ee09bc4 Add documentation to primary `Extension` trait 2020-09-18 11:21:44 -06:00
Kris Nuttycombe 3601f077a1 Correct zcash_proofs dependency version. 2020-09-10 15:35:36 -06:00
Kris Nuttycombe c35c501734 Add comment on FUTURE_TX_VERSION/GROUP_ID` 2020-09-10 14:52:47 -06:00
Kris Nuttycombe 208208238d Add property test for round-trip serialization of TZE-bearing transactions. 2020-09-10 14:52:47 -06:00
Kris Nuttycombe a5d5f87b48 Bind TZE inputs and outputs in signature. 2020-09-10 14:52:47 -06:00
Kris Nuttycombe eb4a2d5032 Add domain separator to transparent signatures.
Once TZEs are active, we would like to ensure that collisions
between TZE input signatures and transparent input signatures
cannot occur, so we add a domain separator to both.

This also ensures that if TZE inputs are presented for signature
without using the `Future` sighash version, that the signing
code will report an error.
2020-09-10 14:52:47 -06:00
Kris Nuttycombe 5a432b5e2b Ensure that prevout, extension_id & mode data can be signed in builder. 2020-09-10 14:52:47 -06:00
Kris Nuttycombe 1a8168e1c9 Document transaction builder methods. 2020-09-10 14:52:47 -06:00
Kris Nuttycombe 671caa8b84 Remove unused Epoch trait. 2020-09-10 14:52:47 -06:00
Kris Nuttycombe 23634d4cd0 Document ExtensionTxBuilder methods 2020-09-10 14:52:47 -06:00
Kris Nuttycombe 9d2f388b3b Apply idiomatic rustlang suggestions from code review
Co-authored-by: str4d <thestr4d@gmail.com>
2020-09-10 14:52:47 -06:00
Kris Nuttycombe 9ef15b536c Update method documentation in zcash_primitives/src/extensions/transparent.rs
Co-authored-by: str4d <thestr4d@gmail.com>
2020-09-10 14:52:47 -06:00
Kris Nuttycombe b15e49ef47 Documentation update to zcash_primitives/src/extensions/transparent.rs
Co-authored-by: str4d <thestr4d@gmail.com>
2020-09-10 14:52:47 -06:00
Kris Nuttycombe af931d524a Demo TZE fixes in response to PR comments. 2020-09-10 14:52:47 -06:00
Kris Nuttycombe aed2759e1e Use NetworkUpgrade for TZE epoch determination.
This adds a `Future` variant for both BranchId and NetworkUpgrade.
2020-09-10 14:52:47 -06:00
Kris Nuttycombe 81b6f8afd7 Formatter fix. 2020-09-10 14:52:47 -06:00
Kris Nuttycombe 4bf6309c54 Update to non-yanked version of subtle crate. 2020-09-10 14:52:47 -06:00
Kris Nuttycombe 8299f336d3 Add test for tze txn parsing. 2020-09-10 11:58:40 -06:00
Jack Grigg 93ffd94af0 zcash_extensions: Only run demo builder test if we have parameters 2020-09-10 11:58:40 -06:00
Kris Nuttycombe dc9b007e8e Add signature hash over TZE data. 2020-09-10 11:58:40 -06:00
Kris Nuttycombe 294aa86195 Change extension_id and mode types to u32 2020-09-10 11:58:40 -06:00
Kris Nuttycombe 4edbd26d7f Keep transaction details private. 2020-09-10 11:58:40 -06:00
Kris Nuttycombe fe6bea1fce Check transparent input for correctness before modifying vin. 2020-09-10 11:58:40 -06:00
Kris Nuttycombe 4a954c7f8f Add tests for transaction builder support. 2020-09-10 11:58:40 -06:00
Kris Nuttycombe ca8e24eef5 Add validation to demo transaction builder. 2020-09-10 11:58:40 -06:00
Kris Nuttycombe 659c34a954 Make error a type member of FromPayload trait rather than a type variable.
Fix demo test compilation errors.
2020-09-10 11:58:40 -06:00
Jack Grigg 961d251178 Add transaction-builder suport for TZE-bearing transactions. 2020-09-10 11:58:40 -06:00
Jack Grigg bf7f95b0e9 TZE consensus context and program sets
Co-authored-by: Kris Nuttycombe <kris.nuttycombe@gmail.com>
2020-09-10 11:58:40 -06:00
Jack Grigg ce9a695ded Demo TZE parsing and consensus logic 2020-09-10 11:58:40 -06:00
Jack Grigg b3332db3e9 Add TZEs to transaction format 2020-09-10 11:58:40 -06:00
Jack Grigg 90a17b3c31 Core TZE traits and structs
Co-authored-by: Kris Nuttycombe <kris.nuttycombe@gmail.com>
2020-09-10 11:58:40 -06:00
str4d 37b5d67d33
Merge pull request #289 from ebfull/release-0.4
Version bump 0.4.0 for crates
2020-09-10 08:58:52 +12:00
Sean Bowe d4cba74402
Version bump 0.4.0 for crates
Bumps zcash_proofs, zcash_primitives, zcash_client_backend to 0.4.0
Also bumps zcash_client_sqlite to 0.2.0
2020-09-09 14:41:19 -06:00
ebfull c7e9523dce
Merge pull request #284 from str4d/259-ovk-none
zcash_primitives: Support ovk = ⊥ in note encryption
2020-09-09 14:32:57 -06:00
str4d d65254e7cf
Merge pull request #288 from str4d/update-deps
Update dependencies
2020-09-10 07:45:02 +12:00
Jack Grigg 59e26a0c0f bls12_381 0.3.1 and jubjub 0.5.1 2020-09-09 16:51:53 +01:00
Jack Grigg d4f87c12ed rusqlite 0.24 2020-09-09 00:53:42 +01:00
Jack Grigg 6a62993714 secp256k1 0.19 2020-09-09 00:38:54 +01:00
Jack Grigg 46f17bd624 Bump protobuf dependencies
MSRV is now 1.44.1.
2020-09-09 00:32:16 +01:00
Jack Grigg 96bd59b942 Migrate to ff 0.8 and bellman 0.8
bellman 0.8 includes fixes for several performance regressions.

MSRV is now 1.44.0, matching the ff crate.
2020-09-09 00:27:51 +01:00
str4d a602769549
Merge pull request #285 from str4d/282-criterion
zcash_proof: Migrate benchmark to criterion
2020-09-03 02:42:10 +12:00
ebfull 288b3dae77
Merge pull request #283 from str4d/remove-subtrees
Remove subtree crates
2020-09-01 13:31:31 -06:00
Jack Grigg 9acf763b8f zcash_proof: Migrate benchmark to criterion
Closes zcash/librustzcash#282.
2020-08-31 17:13:39 +01:00
Jack Grigg 40e135783c zcash_primitives: Support ovk = ⊥ in note encryption
Closes zcash/librustzcash#259.
2020-08-28 21:17:16 +01:00
Jack Grigg 72817b0edc zcash_primitives: Add OutgoingCipherKey struct 2020-08-28 16:17:15 +01:00
Jack Grigg 3a4ea5da18 Remove subtree crates
Now that we have finished the large refactor, we can make subsequent
refactoring changes within the individual crates, and propagate the
changes into the Zcash crates via normal dependency updates.
2020-08-27 23:25:47 +01:00
Jack Grigg 3f06d92eec Depend on published versions of subtree crates 2020-08-27 23:25:20 +01:00
ebfull 50140c521a
Merge pull request #278 from str4d/release-0.3.0
Release 0.3.0
2020-08-24 07:45:05 -06:00
Jack Grigg 3cd8f64240 zcash_client_sqlite 0.1.0 2020-08-23 16:23:53 +01:00