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
Kris Nuttycombe
ba6fc053b5
Move transparent transaction builder to an independent module.
2021-06-02 11:48:46 -06:00
Kris Nuttycombe
8267d06846
Refactor transaction builder to create separate builders for each section.
2021-06-02 11:48:46 -06:00
str4d
f7f5cd472b
Merge branch 'master' into note-decryption-fixes
2021-06-02 18:45:01 +01:00
Kris Nuttycombe
010a5377a9
Merge pull request #385 from nuttycom/feature/zip-225-prep
...
ZIP-225/244 #1 : Minor refactoring and preparatory updates.
2021-06-02 09:39:02 -06:00
Kris Nuttycombe
168314cec6
Update changelog.
2021-06-01 07:05:01 -06:00
Kris Nuttycombe
62bd06f14e
Apply suggestions from code review
...
Co-authored-by: str4d <jack@electriccoin.co>
2021-06-01 07:03:31 -06:00
Kris Nuttycombe
76999eb5c7
Make txid contents private & use txid for TzeOutPoint
2021-06-01 07:03:31 -06:00
Kris Nuttycombe
936b552de2
Add NoteValue newtype, Nullifier::as_ref and proptest generation.
2021-06-01 07:03:31 -06:00
Kris Nuttycombe
3dc05a69eb
Add Nu5 NetworkUpgrade variant.
2021-06-01 07:03:31 -06:00
Kris Nuttycombe
4efb21d1c7
Make amount addition and subtraction traits use checked operations.
2021-06-01 07:03:31 -06:00
str4d
35023ed8ca
Merge pull request #388 from str4d/builder-progress-api-tweak
...
Builder: Move progress notifier configuration to a builder method
2021-05-31 19:53:43 +01:00
Jack Grigg
eba6f417fe
zcash_note_encryption: Doc fixes
2021-05-29 00:15:25 +01:00
Jack Grigg
362838c3fa
zcash_note_encryption: Fix array size in Domain::extract_{esk, pk_d}
...
Decrypted output size is `OUT_PLAINTEXT_BYTES`, which the decryptor
can always provide (either by decrypting into the correct size array
as now, or truncating the buffer before passing it to the domain).
2021-05-28 23:48:03 +01:00
Jack Grigg
f6705f23c3
zcash_note_encryption: Add ovk recovery API
2021-05-28 23:45:23 +01:00
Jack Grigg
ae43e6c074
zcash_note_encryption: Pass cmstar_bytes to Domain::derive_ock
...
PRF^ock in the spec takes cm* as a byte array.
2021-05-28 23:41:13 +01:00
Jack Grigg
ee2b96c82d
zcash_note_encryption: s/TryFrom/From on ExtractedCommitmentBytes bound
...
This was left over from an earlier refactor where we could call a domain
API to extract cmstar from a note commitment (which could fail for
Orchard). This part of extraction was subsequently refactored into the
domain logic (and is rejected earlier for Orchard). The resulting bound
is wrong because it's always possible to serialize a scalar.
2021-05-28 22:57:48 +01:00
Jack Grigg
16627b4569
zcash_note_encryption: Enforce ZIP 212 check on esk from outPlaintext
...
It needs to equal the esk derived from the note (for v2 note plaintexts).
2021-05-28 22:33:00 +01:00
Jack Grigg
6f0e7c86a3
zcash_primitives: Add Builder::with_progress_notifier to changelog
2021-05-26 22:02:01 +01:00
Jack Grigg
d031dabcfc
Builder: Move progress notifier configuration to a builder method
...
This is what builder methods are for :) and it helps to limit the growth
of alternate `build` methods.
2021-05-26 21:58:08 +01:00
str4d
d9a3b98120
Merge pull request #377 from adityapk00/builder_progress
...
Report Sapling Tx Builder Progress
2021-05-26 21:52:38 +01:00
Jack Grigg
ff94f66d8e
zcash_address: Fix padding and F4Jumble positions in Address::to_bytes
...
These need to be applied to the entire UA encoding, not to the encoding
of each individual receiver.
2021-05-25 21:24:47 +01:00
Jack Grigg
ff8695de03
zcash_address: Add failing test showing unified::Address encoding bug
2021-05-25 21:24:47 +01:00
str4d
c2b57048bf
Update components/zcash_address/README.md
...
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2021-05-25 16:37:25 +01:00
Jack Grigg
e982d7211f
zcash_address: Implement Unified Address encoding / decoding
2021-05-20 22:50:59 +01:00
Jack Grigg
6717cd821c
Move F4Jumble implementation into zcash_address
2021-05-20 22:50:59 +01:00
Jack Grigg
ae2b8bfd6d
zcash_address: Replace Orchard address encodings with Unified Addresses
...
This commit removes the now-undefined Orchard encoding logic, and adds
the general Bech32m encoding/decoding logic for Unified Addresses. The
internal data format of Unified Addresses is not correct in this commit.
2021-05-20 22:50:59 +01:00
str4d
d50bb12a97
Merge pull request #334 from str4d/dependency-updates
...
Dependency updates
2021-05-20 17:48:52 +01:00
Jack Grigg
9f7398cd05
zcash_address: Add convert::ToAddress helper trait
2021-05-20 14:54:27 +01:00
Jack Grigg
ce8797e4b1
zcash_address: impl {Clone, Copy, Eq, Hash} for ZcashAddress
2021-05-20 14:54:27 +01:00