Commit Graph

673 Commits

Author SHA1 Message Date
ebfull 71e2f395d4
Merge pull request #547 from nuttycom/fix_merkle_tree_complete
Allow CommitmentTree completeness & auth paths to be computed at arbitrary depths.
2022-05-06 17:42:01 -06:00
Jack Grigg 144512b547 Migrate to `ff 0.12` 2022-05-06 20:03:49 +00:00
Kris Nuttycombe a63a37aab2 Allow CommitmentTree completeness & auth paths to be computed at arbitrary depths.
Fixes #546
2022-05-06 11:45:06 -06:00
Kris Nuttycombe 4969d81ad3 Add a test for merkle_tree::CommitmentTree::is_complete 2022-05-06 11:44:04 -06:00
Kris Nuttycombe 8bb1962153 Update incrementalmerkletree version and add SER_V2 serialization constant. 2022-05-04 09:25:07 -06:00
Kris Nuttycombe d14e7a707c Set NU5 testnet reactivation height. 2022-04-13 16:47:33 -06:00
Kris Nuttycombe 4d5b3831d1 Add conversion from incrementalmerkletree::bridgetree::Frontier -> CommitmentTree
Also, add roundtrip property tests to ensure the correctness of the
conversion.
2022-04-08 13:08:48 -06:00
Kris Nuttycombe 9416ab3a3e Update to secp256k1 v0.21 2022-04-06 16:09:45 -06:00
Jack Grigg ffa669a958 Migrate to orchard 0.1.0-beta.3 2022-04-06 21:00:25 +00:00
Jack Grigg 6e8c457e30 zcash_primitives: Show hex encoding of `BlockHash` in its `Debug` impl
The (byte-flipped) hex string is more useful than the raw bytes, because
we can look that up in RPC methods and block explorers.
2022-04-05 17:55:56 +00:00
Jack Grigg 7447a599f7 zcash_primitives: Show hex encoding of `TxId` in its `Debug` impl
The (byte-flipped) hex string is more useful than the raw bytes, because
we can look that up in RPC methods and block explorers.
2022-04-05 17:52:48 +00:00
Jack Grigg 9c1ed86c5a Update NU5 consensus branch ID and remove testnet activation height
Part of zcash/librustzcash#456.
2022-03-23 00:35:20 +00:00
Jack Grigg 5668804629 Migrate to beta releases of incrementalmerkletree and orchard 2022-03-23 00:04:32 +00:00
Jack Grigg 494092223b Merge branch 'master' into non-consensus-changes-on-branchid-37519621 2022-03-23 00:00:21 +00:00
Kris Nuttycombe 71657b4f18 Generalize vector and array writes & reads.
In a number of places, we transform other kinds of collections with
known length information into vectors simply to be able to use them with
`Vector::write` or `Vector::read`. We can avoid these extra allocations
by writing from iterators directly, and similarly by reading directly
into our desired collection types.
2022-03-11 16:48:28 -07:00
Kris Nuttycombe d602c01ef6 Standardize how we write and read usize values for incrementalmerkletree.
Also, make consistent use of helper functions for reading
and writing `Position` values.
2022-03-11 16:48:28 -07:00
Jack Grigg 91d9a42a08 Merge branch 'non-consensus-changes-on-branchid-37519621' into merge-non-consensus-changes-3 2022-02-28 23:22:40 +00:00
Jack Grigg 22ebe95de6 zcash_primitives: Replace custom `Debug` impl on `TransactionData` 2022-02-28 22:39:43 +00:00
Kris Nuttycombe b97d777361 Update the versions of incrementalmerkletree & orchard.
This removes unreleased incrementalmerkletree::BridgeTree serialization
that was zcashd-specific.
2022-02-24 13:54:31 -07:00
Kris Nuttycombe 600c06a408 Update MSRV to 1.56.1 2022-02-24 12:26:14 -07:00
Jack Grigg 12700b4c17 Migrate to `orchard` revision with the Orchard circuit changes 2022-02-15 23:37:52 +00:00
Jack Grigg f822d7aabc Bump MSRV to 1.54.0
This is the MSRV for the orchard crate version that contains the changes
to the Orchard circuit.

Closes zcash/librustzcash#513.
2022-02-15 16:39:29 +00:00
Jack Grigg dbfa673500 Merge branch 'non-consensus-changes-on-branchid-37519621' into merge-non-consensus-changes-again 2022-02-14 18:11:09 +00:00
Kris Nuttycombe a15f426ff3
Merge pull request #506 from rex4539/typos
Fix typos
2022-02-13 20:29:50 -07:00
Jack Grigg 54e3dded92 Add `TransactionData::map_bundles`
This is needed for FFI-crossing in `zcashd`.
2022-02-12 02:59:18 +00:00
Kris Nuttycombe f590134ee8 Add transaction::Transaction::into_data 2022-02-11 15:29:44 -07:00
Kris Nuttycombe af9edcea25 Define transaction::TransactionData::map_authorization 2022-02-11 15:29:44 -07:00
Kris Nuttycombe e20de50b84 Make AccountId internal representation private. 2022-02-10 11:30:02 -07:00
Kris Nuttycombe 970b6d6750 Add missing trait impls for AccountId 2022-02-10 09:12:18 -07:00
Kris Nuttycombe 2425a08690
Merge pull request #493 from zcash/485-zip244-coinbase-fix
zcash_primitives: Update ZIP 244 with coinbase fix
2022-02-08 08:16:19 -07:00
Dimitris Apostolou e600d7b917
Fix typos 2022-02-03 20:15:32 +02:00
str4d 9319dd4c3e Implement XNOR using `assert_eq!`
Because of course that is simpler than building it from XOR.

Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2022-02-03 00:12:55 +00:00
Kris Nuttycombe a304c3953b Fix Clippy beta linting complaints. 2022-02-02 16:02:45 -07:00
Kris Nuttycombe 60d9124453 Merge branch 'non-consensus-changes-on-branchid-37519621' into 'master' 2022-02-02 14:38:09 -07:00
Kris Nuttycombe 1507d1de0a Fix incorrect construction of transparent OVKs. 2022-02-02 10:33:44 -07:00
Kris Nuttycombe b4ff3f368e Add test vectors for transparent OVKs. 2022-02-02 10:33:44 -07:00
therealyingtong 0c80399fe1 zcash_primitives::zip32::tests: Use internal test vectors. 2022-02-02 10:33:44 -07:00
therealyingtong cf4c982483 zcash_primitives::zip32: Include test vectors for internal key components. 2022-02-02 10:33:44 -07:00
Kris Nuttycombe 9c2d485c80 Address comments from code review.
Co-authored-by: str4d <jack@electriccoin.co>
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2022-02-02 10:33:41 -07:00
Kris Nuttycombe 3d51c53d68 Address comments from code review.
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2022-02-02 10:32:33 -07:00
Kris Nuttycombe 8916a16f38 Replace ripemd160 dependency with ripemd 2022-02-02 10:30:43 -07:00
Jack Grigg d7fe28ac3f zcash_primitives: Update ZIP 244 with coinbase fix
This corresponds to the ZIP 244 changes in zcash/zips#587.

Closes zcash/librustzcash#485.
2022-02-01 15:57:39 +00:00
Jack Grigg f28f0b7476 Merge branch 'non-consensus-changes-on-branchid-37519621' 2022-02-01 15:57:13 +00:00
Kris Nuttycombe b3fbf2410d Allow use of internal deprecated pubkey_to_address method. 2022-01-27 21:21:18 -07:00
Kris Nuttycombe 2f1d3da26d Update changelogs. 2022-01-27 16:25:01 -07:00
Kris Nuttycombe 4057b066bd ExtendedFullViewingKey::chain_code should not be public. 2022-01-27 16:18:26 -07:00
Kris Nuttycombe 6e11f2d11a Validate ZIP 321 request by roundtrip through the URI format.
Co-authored-by: str4d <jack@electriccoin.co>
2022-01-27 16:08:04 -07:00
Kris Nuttycombe a1e693d15f Remove the Wif type; it should not be used.
We should attempt to avoid passing spending keys back and forth
across the FFI entirely, but in any case this is no longer the
correct type to use at this boundary; we should use the encoding
of the transparent component of a unified spending key instead.
2022-01-27 16:08:04 -07:00
Kris Nuttycombe 3a20176092 Apply suggestions from code review
Co-authored-by: str4d <jack@electriccoin.co>
2022-01-27 15:00:37 -07:00
Kris Nuttycombe 132df78a31 Add serialization and deserialization for AccountPubKey 2022-01-27 08:52:12 -07:00