Commit Graph

2174 Commits

Author SHA1 Message Date
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
Kris Nuttycombe dac68ce2aa Drop proptest space size to reduce test runtime. 2021-06-04 15:45:39 -06:00
Kris Nuttycombe 38b864c100 Implement V5 transaction serialization & roundtrip property tests. 2021-06-04 15:45:39 -06:00
Kris Nuttycombe e828dbf5d0 Add v5 parsing and serialization for Sapling components. 2021-06-04 15:45:39 -06:00
Kris Nuttycombe 1a5aad723b Use generalized signature_hash for transaction builder. 2021-06-04 15:45:39 -06:00
Kris Nuttycombe 55d1090f70 Add v5 txid & signature hashing. 2021-06-04 15:45:39 -06:00
Kris Nuttycombe 1138343c89 Add data structures for transaction digests. 2021-06-04 15:45:39 -06:00
Kris Nuttycombe fd1790fec2 Move sighash.rs -> sighash_v4.rs 2021-06-04 15:45:39 -06:00
Kris Nuttycombe 4bcad97ba1 Add amount conversion for Orchard values. 2021-06-04 15:45:39 -06:00
Kris Nuttycombe 2ae55b4145 Add more flexibility to vector serialization. 2021-06-04 15:45:39 -06:00
str4d 2ba8073971
Merge pull request #395 from str4d/bump-deps
Migrate to bitvec 0.22, ff 0.10, etc.
2021-06-04 22:36:29 +01:00
Jack Grigg 4aa83d3048 bellman 0.10 2021-06-04 22:20:25 +01:00
Jack Grigg 1222391dd7 Migrate to bitvec 0.22, ff 0.10, etc.
Requires patching three dependencies:

- bellman is pending a new release.
- nom is part of the funty breakage; we are blocking on a new release.
- orchard is in development.
2021-06-04 22:02:48 +01:00
str4d 4c4d226f40
Merge pull request #392 from nuttycom/feature/zip-225-bundles
ZIP-225/244 #3: Create separate bundles for each part of the transaction.
2021-06-04 03:43:15 +01:00
Kris Nuttycombe 9149d48afc
Apply suggestions from code review
Co-authored-by: str4d <jack@electriccoin.co>
2021-06-03 20:25:10 -06:00
Kris Nuttycombe 231aa5d01a
Apply suggestions from code review
Co-authored-by: str4d <jack@electriccoin.co>
2021-06-03 18:47:49 -06:00
Kris Nuttycombe cc9dbf8bde Fix clippy complaint. 2021-06-03 18:46:38 -06:00
Kris Nuttycombe 732b97d021 Update changelog. 2021-06-03 18:46:38 -06:00
Kris Nuttycombe a305760bb1 Move TZE components to a bundle within TransactionData 2021-06-03 18:46:38 -06:00
Kris Nuttycombe 523424e50b Move Transparent components to a bundle within TransactionData 2021-06-03 18:46:38 -06:00
Kris Nuttycombe 670d03e74f Move Sprout components to a bundle within TransactionData 2021-06-03 18:46:38 -06:00
Kris Nuttycombe 84e8952ec3 Move Sapling components to a bundle within TransactionData 2021-06-03 18:46:38 -06:00
Kris Nuttycombe 488d02aad3 Add Orchard bundle to TransactionData
This also adds parsing and serialization for Orchard bundle parts.

This requires changes to the TZE builder components, because they
refer to the TransactionData type in the context for witness creation.
2021-06-03 13:03:29 -06:00
Kris Nuttycombe 12d2dfd1bd
Merge pull request #386 from nuttycom/feature/zip-225-builder_modularization
ZIP-225/244 #2: Refactor transaction builder to create separate builders for each section.
2021-06-02 21:29:19 -06:00
Kris Nuttycombe 2098196440 Fix errors caused by use of zero heights. 2021-06-02 21:07:29 -06:00
Kris Nuttycombe 2b96e2eb0c Fix TZE demo test errors. 2021-06-02 18:23:25 -06:00
Kris Nuttycombe e32e2d6e7f Fix ordering of Sapling build errors. 2021-06-02 17:15:35 -06:00
Kris Nuttycombe 0743f9e815
Apply suggestions from code review
Co-authored-by: str4d <jack@electriccoin.co>
2021-06-02 17:11:04 -06:00
Kris Nuttycombe 2c891a8000 Fix incorrect progress notifier. 2021-06-02 17:09:17 -06:00
Kris Nuttycombe 14d07cd826 Fix intra-doc links & rustfmt. 2021-06-02 17:09:17 -06:00
Kris Nuttycombe d2402f4861
Apply changelog suggestions.
Co-authored-by: str4d <jack@electriccoin.co>
2021-06-02 16:58:08 -06:00
Kris Nuttycombe b487a7f820 Sapling builder can store network params. 2021-06-02 16:57:27 -06:00
Kris Nuttycombe 4878b5b19b Address comments from review. 2021-06-02 16:48:55 -06:00
str4d c13a5d3f3d
Merge pull request #390 from str4d/note-decryption-fixes
zcash_note_encryption: Note decryption fixes
2021-06-02 22:22:35 +01:00
Kris Nuttycombe 72ac97a35f Derive transaction version & branch id from target height. 2021-06-02 13:45:29 -06:00
Kris Nuttycombe 7466ef42d8 Move change_address back to the main builder
Also, store the target height in the sapling builder.
2021-06-02 12:35:18 -06:00
Kris Nuttycombe bd3b2afa59 Update changelog. 2021-06-02 11:48:46 -06:00
Kris Nuttycombe c872f39547 Restore progresscounter. 2021-06-02 11:48:46 -06:00
Kris Nuttycombe 3770e5de8b Move TZE transaction builder to an independent module. 2021-06-02 11:48:46 -06:00
Kris Nuttycombe c1a8de27f3 Move Sapling transaction builder to an independent module. 2021-06-02 11:48:46 -06:00