Commit Graph

10 Commits

Author SHA1 Message Date
Kris Nuttycombe e454065250 Remove spurious rng argument to encode_unified. 2022-10-07 19:17:38 -06:00
Daira Hopwood 1c10ad5f4a Avoid the need to specify a `rust_fmt` function for Options.
This does not change test vectors.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-02-12 20:57:37 +00:00
Daira Hopwood 54f168a30b Include the seed used for derivation in UA/UIVK/UFVK test vectors.
Also change variable-length vectors to use 'bitcoin_flavoured': False.

Co-authored-by: Kris Nuttycombe <kris@nutty.land>
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-02-12 17:31:25 +00:00
Daira Hopwood 189cadb357 Reduce run times of unified_{address, incoming_viewing_keys, full_viewing_keys}.py by over half
by avoiding duplicated work in deriving levels of the key hierarchy above the account level.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-02-11 16:29:14 +00:00
Daira Hopwood f8a462d859 Make the test vectors for UAs, UIVKs, and UFVKs match up, and allow unknown items for UAs.
Also increase the number of test vectors to 20 (10 might be insufficient to see some corner cases).

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-02-11 16:29:14 +00:00
Daira Hopwood 3477c241aa Add BIP 32 key derivation and test vectors.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-02-11 16:29:14 +00:00
Daira Hopwood e5d31fea89 Implement ZIP 32 derivation for Orchard and use it for the Unified Address, IVK and FVK test vectors.
This commit only affects the Orchard test vectors.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-02-11 16:29:14 +00:00
Daira Hopwood 68e4ed1ee2 Change the seed used for Unified Address, IVK and FVK test vectors to be deterministic.
As of this commit, this only affects the Sapling test vectors (we still sample the same
randomness to avoid disturbing the others).

A "diversifier_index" field is added to the Unified Address test vectors. (This is not needed
for UIVKs/UFVKs since they do not depend on the diversifier index for any protocol.)

We also add an "account" field to make the account number explicit, even though it could be
inferred from the test vector index.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-02-11 16:29:14 +00:00
Daira Hopwood 060ea786f7 Refactor Zcash SLIP 44 coin type and the `hardened` function into a separate file,
since they are not specific to Sapling.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-02-11 16:29:14 +00:00
Daira Hopwood f07451a025 Move remaining scripts out of the root directory.
closes #79

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-02-08 13:53:57 +00:00