Kris Nuttycombe
aab9938b53
zcash_client_backend: Rename `RecipientAddress::Shielded` to `RecipientAddress::Sapling`
2023-12-07 15:24:47 -07:00
str4d
ecd5402266
Merge pull request #1061 from zcash/1044-sapling-prf-expand
...
zcash_primitives: Introduce type-safe `PRF^expand`
2023-12-07 18:03:37 +00:00
Jack Grigg
ce7b7df0cc
zcash_primitives: Switch to type-safe `PRF^expand`
...
Part of zcash/librustzcash#1044 .
2023-12-07 17:09:44 +00:00
str4d
f1fdce499a
Merge pull request #1062 from nuttycom/primitives/remove_sapling_fee_traits
...
zcash_primitives: Remove and relocate `InputView` traits.
2023-12-07 11:47:00 +00:00
Kris Nuttycombe
4eaa41affa
zcash_primitives: Remove and relocate `InputView` traits.
2023-12-06 20:17:43 -07:00
str4d
a9d6505148
Merge pull request #1059 from zcash/1044-extract-zip32
...
Extract `zip32` crate again
2023-12-06 18:46:35 +00:00
Jack Grigg
842ce36f7c
Fix clippy lint
2023-12-06 18:19:15 +00:00
Jack Grigg
d332aacf98
Merge branch 'main' into 1044-extract-zip32
2023-12-06 18:04:36 +00:00
Jack Grigg
3dfd478141
Migrate to published `zip32` crate outside this repository
2023-12-06 18:04:09 +00:00
Kris Nuttycombe
36cdc35428
Merge pull request #1055 from nuttycom/wallet/note_key_scope
...
Replace `SaplingReceivedNote` with `ReceivedNote`
2023-12-05 16:20:15 -07:00
Kris Nuttycombe
ca54b3489d
Apply suggestions from code review
...
Co-authored-by: Daira Emma Hopwood <daira@jacaranda.org>
Co-authored-by: Jack Grigg <jack@electriccoin.co>
2023-12-05 15:55:52 -07:00
Jack Grigg
5aa0e6c6ee
Revert "Convert zip32 crate into a module of zcash_primitives"
...
This reverts commit f25a8a557e
.
2023-12-05 18:07:53 +00:00
Kris Nuttycombe
cad4f25b75
zcash_client_backend: Replace `ReceivedSaplingNote` with `ReceivedNote`
...
`ReceivedNote` now allows Orchard notes to be represented as received
notes. As part of this change, received notes now track whether they
were received using internally- or externally-scoped viewing keys.
This eliminates the need to trial-regenerate notes using the wallet's
IVKs to determine scope at spend time.
2023-12-05 10:55:06 -07:00
Kris Nuttycombe
6b10a6dc86
zcash_client_backend: Move essential wallet types into the `wallet` module.
2023-12-05 10:55:04 -07:00
Kris Nuttycombe
4a7dd2bed2
zcash_client_sqlite: Add receiving key scope information to received notes.
2023-12-05 10:49:35 -07:00
Kris Nuttycombe
8c1480304e
zcash_client_backend: Wrap entire Sapling note in `SaplingReceivedNote`
2023-12-05 10:49:35 -07:00
Jack Grigg
54e8dd35c1
zcash_primitives: Remove old Sapling re-exports from `zip32` module
2023-12-05 17:31:17 +00:00
str4d
fb424364ce
Merge pull request #1057 from nuttycom/wallet/orchard_balance
...
Expose Orchard value in balance API & add Orchard components to ScannedBlock
2023-12-05 17:01:10 +00:00
str4d
fedc9af1f6
Merge pull request #1058 from zcash/1044-sapling-tree-leaf-refactor
...
Refactor `sapling::tree::Node`
2023-12-05 12:29:12 +00:00
Kris Nuttycombe
214a3750c5
zcash_client_backend: Make `Balance` and `AccountBalance` fields private.
...
Public methods for mutation of these fields have been provided that
perform checking for overflow of the valid monetary range as part
of their operation.
2023-12-04 13:53:27 -07:00
Jack Grigg
906e203663
zcash_primitives: Move Sapling `HashSer` impl into `merkle_tree` module
...
The `HashSer` trait will remain in `zcash_primitives` while the Sapling
type it is implemented for moves to `sapling-crypto`.
Part of zcash/librustzcash#1044 .
2023-12-04 20:26:00 +00:00
Jack Grigg
8acc03783e
zcash_primitives: Refactor `sapling::tree::Node` around `jubjub::Base`
2023-12-04 20:24:24 +00:00
Daira Emma Hopwood
acf146248e
Merge pull request #1056 from zcash/581-use-redjubjub-crate
...
zcash_primitives: Replace `sapling::redjubjub` with `redjubjub` crate
2023-12-04 18:27:32 +00:00
Tomek Piotrowski
22ad737267
zcash_primitives: Add Network Upgrade 6 to `consensus::NetworkUpgrade` ( #1048 )
...
Co-authored-by: Jack Grigg <jack@electriccoin.co>
2023-12-04 14:41:41 +00:00
Jack Grigg
ded09f99b5
zcash_primitives: Add RedJubjub test vectors
2023-12-01 14:22:49 +00:00
Jack Grigg
5ccba3e1af
zcash_primitives: Introduce newtypes for `ask` and `ak`
...
The Sapling key components specification places more constraints on the
values of `ask` and `ak` than general RedJubjub signing and verification
keys.
2023-12-01 11:19:31 +00:00
Kris Nuttycombe
9aec53eec9
zcash_client_backend: Add Orchard components to `ScannedBlock`
2023-11-30 13:08:17 -07:00
Kris Nuttycombe
c0babd54cd
zcash_client_backend: Expose Orchard value in balance API
2023-11-30 12:17:19 -07:00
Jack Grigg
de1ed21051
zcash_primitives: Replace `sapling::redjubjub` with `redjubjub` crate
...
As a side-effect, we remove the ability to verify individual
transactions with pre-ZIP 216 rules (which we already removed from
`zcashd` consensus nodes in zcash/zcash#6000 and zcash/zcash#6399 , as
all pre-ZIP 216 transactions on mainnet are also valid under ZIP 216).
2023-11-30 17:52:31 +00:00
Daira Emma Hopwood
764127f952
Merge pull request #1053 from nuttycom/fix_subproject_builds
...
Fix dependencies to repair `cargo -p` subproject builds.
2023-11-29 21:32:28 +00:00
Kris Nuttycombe
1e5d253c9c
Fix dependencies to repair `cargo -p` subproject builds.
2023-11-29 12:37:18 -07:00
Kris Nuttycombe
79e499ea41
Merge pull request #1050 from nuttycom/sapling/use_note_diversifier
...
Avoid passing duplicate diversifier information to Sapling builder.
2023-11-28 12:02:06 -07:00
Kris Nuttycombe
28174e1ba3
zcash_client_backend: refactor select_key_for_note to avoid needing the extsk
...
This is in preparation for generalizing how we choose the spending key
for a note to serve `Orchard`.
2023-11-28 10:54:06 -07:00
Kris Nuttycombe
7f3d057a1b
zcash_primitives: Avoid passing duplicate diversifier information to Sapling builder.
...
The note provided to `add_sapling_spend` contains the recipient address,
and we can extract the diversifier from this address, so we should not
pass it separately.
2023-11-28 10:54:06 -07:00
Kris Nuttycombe
ed761d5da1
Merge pull request #1049 from zcash/1044-sapling-cleanups
...
More Sapling cleanups
2023-11-27 21:35:19 -07:00
Jack Grigg
0d06e561bb
Update Sapling imports to migrate off re-exports at old paths
2023-11-28 03:40:41 +00:00
Jack Grigg
54fa31e00c
zcash_primitives: Separate `GROTH_PROOF_SIZE` constant for `sapling` module
2023-11-28 03:25:14 +00:00
Jack Grigg
106f5a353a
Remove `MemoBytes` usage from `zcash_primitives::sapling`
2023-11-28 03:25:14 +00:00
str4d
2f2401d144
Merge pull request #1043 from zcash/zip32-refactor
...
Refactor ZIP 32 code
2023-11-28 03:18:36 +00:00
Jack Grigg
7064efe697
zcash_primitives: Improve ZIP 32 comments
2023-11-28 01:38:53 +00:00
Jack Grigg
f7726141c3
zcash_primitives: Reject non-canonical ZIP 32 Sapling master key encodings
2023-11-28 01:38:53 +00:00
Jack Grigg
7badba29ea
zcash_primitives: Move `zip32::sapling` to `sapling::zip32`
2023-11-28 01:38:53 +00:00
Jack Grigg
45ef8b1604
zcash_primitives: Add constructor and getter to `zip32::ChainCode`
2023-11-28 01:38:53 +00:00
Jack Grigg
61bb18d97f
zcash_primitives: Refactor `zip32::ChildIndex` to be an opaque struct
2023-11-28 01:38:53 +00:00
Jack Grigg
a9310e3969
zcash_primitives: Remove non-hardened Sapling ZIP 32 derivation
2023-11-28 01:34:31 +00:00
str4d
1607d013d1
Merge pull request #1047 from zcash/1044-sapling-bundle-generic-valuebalance
...
zcash_primitives: Make `value_balance` generic in `sapling::Bundle`
2023-11-28 01:31:34 +00:00
str4d
7e45a5f134
Merge pull request #1045 from zcash/1044-sapling-params-removal
...
zcash_primitives: Remove `consensus::Parameters` from `sapling` module
2023-11-28 01:22:56 +00:00
Jack Grigg
cdd20e8583
zcash_primitives: Make `value_balance` generic in `sapling::Bundle`
...
This removes the dependency on `Amount`, and matches how we handle this
in the `orchard` crate.
Part of zcash/librustzcash#1044 .
2023-11-23 07:08:13 +00:00
Jack Grigg
eb0b5a1b24
zcash_primitives: Remove `consensus::Parameters` from `sapling` module
...
Part of zcash/librustzcash#1044 .
2023-11-22 04:29:36 +00:00
Kris Nuttycombe
2c7c7b85e3
Merge pull request #1042 from zcash/fix-generated-proto
...
Fix generated protobuf file to match source
2023-11-20 19:18:10 -07:00