Add BIP 32 key derivation and test vectors.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
This commit is contained in:
Daira Hopwood 2022-02-11 01:53:37 +00:00
parent e5d31fea89
commit 3477c241aa
18 changed files with 417 additions and 49 deletions

View File

@ -38,6 +38,9 @@ unified_incoming_viewing_keys = "zcash_test_vectors.unified_incoming_viewing_key
zip_0143 = "zcash_test_vectors.zip_0143:main"
zip_0243 = "zcash_test_vectors.zip_0243:main"
zip_0244 = "zcash_test_vectors.zip_0244:main"
# Transparent test vectors
bip_0032 = "zcash_test_vectors.transparent.bip_0032:main"
zip_0316 = "zcash_test_vectors.transparent.zip_0316:main"
# Sapling test vectors

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash
tv_scripts=(
bip_0032
f4jumble
f4jumble_long
orchard_empty_roots

View File

@ -0,0 +1,14 @@
[
["From https://github.com/zcash-hackworks/zcash-test-vectors/blob/master/bip_0032.py"],
["c, pk, address, external_ovk, internal_ovk, account"],
["95d76ebcf724a9a3149862e564058b03e0b554ee9534aebd17c833d0da39c29f", "03e79a82b8139042cef66f659029511108592bcdc4d357f72defc9589cec352c4b", "5686c3da4d81053f2e23838e1314ab2fb9cd635c", "ca64e3a521c0460b25b165f225574c18e6c04485e70b6bd8fe1412f8a19406ba", "72165f26cf8ebd2d4f10112cc9a98d64fc6df44defc0e18e4d46d95b511e2f88", 0],
["31ca8977878be1c933487df60c3791a55de9a322b8b45af0e41305770824b1c1", "0355f9be451e1b6988c4faabd40323c29ba1ce488e5a87ffe35faa472d63d0d3f6", "dd461bb0029efe1f27d21dfde658c200adcf2579", "42fe1322bb573b3c7f78557ffbd043788fdbdd19cf71d35166818825ec41a080", "206ae674ae4709d2ce9e0f4a7c36ef11f2650a489803bdd1bacb516776af6293", 1],
["dfd1fc193409ea556be894962da2c40ea9433217238a88c46f5e4faccf8aba00", "0282115efffda4676b297ae8b7b37bb4a5bffb1de2d66e55827ff71355ebfdac49", "a25def5a173b94968a36bcb9589c6f4bd660b721", "a83b308c94ef046c4a8ab7cdcb314cbf1a49d4efca444e2f55da1133529c23ec", "6b68ea6bb31f3d2fc8592f11870c0e966b168c02b5a1ac5633ccdda0cd36ecdf", 2],
["7bb7c4159943c7f754ce2e8f3cc7122b0ebc234af92a6723f31e6915b1138398", "03f4d0ad44108d7f930975f279fdd892565949e3a1f6e8034a500318f7de3b92ac", "f691892ca88d1086e0228357d574f12ba4cfb642", "6bdb722a0d8f33ce6e1c27b7c11c7f8f9cd0139042dd843c56a7b0a6a35ac19f", "b0525283076f3855cc72039129ec191be87758cb267936548dc0ce6208cb17ce", 3],
["d21c2601e105288864d9b51ca9966523ecf575a09797ac29fc02ad33902e3818", "02bbb5bedbb954ddff2e9a7fcfa989e259d97918570284d3a20f8f307a4150ab57", "351dd78e908e0cd1e414b93074aab2d5e4bef399", "ef65bf5e59a67be3644ed050f2730612b15e61e146ec845443f24046a3841464", "2882a9f2674b272b674fc42c535b3d4d8f5bd3e7c49ad50fa065ddf859be87da", 4],
["6e6507cdd20e4f1499b1d10f2701de4106b5bc36cbe1639c5ea1127e20cef73d", "0301611dcebf65f329121b01eb098cf4c5808c738e9c6f9cf953e882258ff7cc1b", "8cd7cf7683eb663b5fa6e9f62f86805f31d62c79", "38073cb64c908eb3f891ff19c07934d1ed1bf8e06edcdd162826782a19a4ec46", "85dc55e40b68b98a4a7dc3fb3da0c3c5902ca5dc81826e14c09fed37a43ca537", 5],
["55caa77a0f3cc3d679e3d2dee1793e4ae7e0063c2e91a4c810ae9b46c0ffce9e", "029f02729572107ad5bdd2a76fff165dcb9637a620236d2d860ed7bed9cd70509b", "3cb607a9faeeb3f14387c02b407a1e80b22f73d5", "236ad654d3998af33847e96d55089cc834a24a9ff9b1a78e9a84b082d1720763", "9c56ccacf0f3052e33a808d8c169a9a9d02a5f7d452f7ab0720387f3fb2095a0", 6],
["cc1e77a67d429d76791be74c6f362f71c9171699ae6daf8614cbb05121d56b23", "02331a0671a6f7cacb034c3532198ea9d9b14faa7209c166bff37b24342d401851", "a60642b8f3cedd92ef947f65be002fd730cf34f8", "33c30612eab37d94cd09dfb7164e21c13081f57d12861251d2e30d9644eaffa8", "f54446d3a09383413d815e40c5551d9e69e0d6c1dc232587f8c06c4b7b2d1ce0", 7],
["719d7f24ff9792b19fbaff6eadfc744547c37f43a45c9dc31e357ef87b7dde7c", "03c6d27ec18657eeb84d33211b5cca15eb706400458d4eda9c03ffe5fa25c93e95", "d8b3db57499917b80fa98c2551985d685af04fe5", "eb28923cde62e4badddf17ae196d5f9f82fe5a35300daffb2783dfda72897306", "0eeeac7d5f1d19e1cfb9fcb194a682b2f9637c51ede11c9cd27cba3c4806a90d", 8],
["1290d6d19387d7edd52a7ffaf3e104731f7695d03b45cedcc20f3d002d5c296d", "0344d2f1d0e01b9070d26795599a6e572541e04d9e4bc2054264cf31772014d7fa", "7ec064acdf50e7a304e3eb24a59dd37cf20157ae", "837e51e31891c942d35c2b63156562f55ce70a44c365ba1ecde6d89e396e633a", "8ed8cada0743c91f97244513f8791d5a4970263db253c68188633ab59bd01578", 9]
]

View File

@ -2,7 +2,7 @@
["From https://github.com/zcash-hackworks/zcash-test-vectors/blob/master/unified_address.py"],
["p2pkh_bytes, p2sh_bytes, sapling_raw_addr, orchard_raw_addr, unified_addr, account, diversifier_index"],
[null, "7a8f739a2d9e945b0ce152a8049e294c4d6e66b1", null, "d4714ee761d1ae823b6972152e20957fefa3f6e3129ea4dfb0a9e98703a63dab929589d6dc51c970f935b3", "75316a706539736e37306864767977636579747376613232326c686539786177716d6b306b66326b776e77356839327a30657a6c307377356a3976347466657a346b6b653834367039646d76346a35657033796d386c6e7336376b666a376639386d7130797268337779666d34796134326b6e7272616c7964303434666d6d376b356a32776e63796837786477", 0, 0],
["b3534201cfb1cd8dbf69b8250c18ef41294ca979", null, "9f6e0bf90a18fc0b9b83ae9f23ad4358648638482b5def8975635b66fd8a708335f9235a3186ec0f033f84", "cecbe5e689a453a3fe10ccf7617e6c1fb382819d7fc9200a1f42092ac84a30378f8c1fb90dff71a6d5042d", "75316e30657363346d776d7974336b6a773667306e7a7a70796139773268366a376b63686d30666c67677078396c67647176326b6d686a3976616634646d68797a396e3433686c73346c657377337372766c30387971726b33326c3876616730397979676c376135706837367961676163763030683233733973333734306c753478656d6176706e613078796374787a35737537376779733264636376366b636e343666333077666b3864797a7171756d6e7a726133637379633477346b667875306d716a6b70727066747075646b6e6365666132", 1, 3],
["a75aa9e7d28fd8c0cbc0f39a9f5e43abbd402979", null, "9f6e0bf90a18fc0b9b83ae9f23ad4358648638482b5def8975635b66fd8a708335f9235a3186ec0f033f84", "cecbe5e689a453a3fe10ccf7617e6c1fb382819d7fc9200a1f42092ac84a30378f8c1fb90dff71a6d5042d", "75316a383772753879366c347164636d77713530726767646c34356870737474333363656e70747a71743771376a613371686e727864736536667a3034746d70727463386d376a3961347575677963706163336b786e676d66637968673866377963657136377a67777264366e756a30637a6e636470763939306838653861387561396178776e366e777178763065653963636e796a64756c636c3779397161783264757a3471753667746367713530336873637434676d337a68677667676679746b736533336b757a366d337636683036676b30", 1, 3],
[null, "e8c7203d996af7d477083756d59af80d06a745f4", null, "953f3c78d103c32b60559299462ebb27348964b892acad10482fe502c99f0d524959ba7be4f188e3a27138", "75313466796e646a757877797439707a7a7a6671736d6a6a6d717334797679766666686a377a3734646b326c67747373636a6d3971716e6e673433646c6878736e653579666b3334667668387932657a386c67796b6c3676717165727036713774367778656e66756a7065786b783438716b747634306d36776471736764363474613461637879373332653764", 2, 0],
[null, null, "52fd6aedefbf401633c2e4532515ebcf95bcc2b4b8e4d676dfad7e17925c6dfb8671e52544dc2ca075e261", null, "753176323675666430616666706371363738346c386e347072766b30337868707061323577716a36743473753775396a647973396e333461766c677974637476617237363936327a72386b366e6c67336a793970656a3270367175636a32736e676d6b7938366e74676a", 3, 0],
[null, "183e31d49f25c9a138f49b1a537edcf04be34a98", "6493348e8aee112a87f5fa65e1c57065aad369401e05d0daa96e0bcd89e67bf19beb3ac74d599d94585a68", "165082de84f2ad7204426ffafd6b6c7de9cab6d25c13846a1786715268c415948db788f4a5e0daa03d699e", "75316c6a6e71706c683833387a39796638303634636b3365633933787338386a75333279747434797067737078326365366768727838326637386439646c7663666c71737234667638396873756377737135646670326b32616d763835657730737a35707a6d7833666a6e64366c38306d6a6363677934397a6433336136657163786d653737656a306d63796b3938336167677161656465356a36766168377770306d726c6b7164356e6734636b6b39726a63733833363864356b68726579786c7a3871657032796d74333968653768726c727434", 4, 0],

View File

@ -2,13 +2,13 @@
["From https://github.com/zcash-hackworks/zcash-test-vectors/blob/master/unified_full_viewing_keys.py"],
["t_key_bytes, sapling_fvk_bytes, orchard_fvk_bytes, unknown_fvk_typecode, unknown_fvk_bytes, unified_fvk, account"],
[null, "31d2c1d12a8424da7a571985c910090faead0ad937d79068627afae1916cdcc1eec372aa2402ce72611fc732e74e319c4552d3091be1cbd2e8559335b807c0b58ee82c943548d4e33f4fa307aab41c0b04851a21dbbc1592886b6da8b2c6be6d8f7c07fa1a2daf10cde137eff57d58f12f1fd9f8be045867249b549f05a90040", null, 65535, null, "757669657731687372306c783472376c68636e6b37733936753937636b757a746d677277736a67393732747168746c6c7464637270356a70786a7065727770663479376564727878306e6568336d657736646b767334766c65326e776861373876723035656865363474377337396a6378743667757a6c32766a6a6b7539753968776474663779387465377478653034657437736a39746a347a656b6e78776661787079396e706d327670356770397a767375757870783774706672786d7374397a30333371796e6c6e37706d7775666e6e746e34386532756d373265383478756b3574666366666a6d346a70653071376b34333867", 0],
["18d9614fc820905d042bb1ef9ca3f24988c7b3534201cfb1cd8dbf69b8250c1802820346fcec8ea1276db2e615b8ced2fe4cf7468c1ef453146195b4d7bc13a4dc", "d3956adb00da312ac8c253b0a1d481b7254a0d05613daf6d22438c966bb9794e233b0463e223176176a68e530cbeb46209d48bc65c9f6d234bec0e26729cd1e32a6bf11b9c6f0e29de42561cde1e991bd5c081326848ad9e86faba40950cb4ead0c13a68318b3762ece890782fcfdcb57f9d85429f316ef2003df564f147b28a", null, 65530, null, "7576696577316b746d3564383961666c63667a356576643061326e6d613961346a7270717161373337616a75386a70776a796863763868636a78756e6b636870356c70727071326b6d7961666734766e356775766e6b3278747a683737366b376137796e656c3439777366346771687761746e7234706c727a633666333539326d787133676d30646a6d796b6138713779726a6433746d73733566786b6c7365703378617167666b756e3361723366306b6674396e3236637434387a3232786d753670366d713974713535396378786e71326b61706671766775386d347a7878387076667230353875396e6d7a3577617a6c7565677932666570756563363438343970367778796574656a32756d6770746b3664676e787539397a676d357137613270726a6b616b717a3579726b76386535377766666a366b783271707471706377396a686638736c66386366666576653234303271356b753075333261636472", 1],
["25946f62c2fa7b2fecbcb64b6968912a6381ce3dc166d56a1d62f5a8d7551db503062caf06c89638774b698aaafc8c834fb2696f70c3cdc70f4528f4ddae53f9e1", "0fec4a4553bde5638ff97ac262635ddce4fd10e9b9eedb3bf2b60a4cb01730e1971db5d0921a68a3e4d78379076f47fb26388a874a16c14dd21cacfc0f14475e4381ed27a5002ea7a9c87339d66ba14675e7f806d9580b2e71c4d166c15243a57b2ce29b1c441fb68534de0441e5d75c2da24667372d9ae6db6cf63693f44d86", "6d7ec9955b8dff5191fc761490cc97bcc2c63ddc14afd56a308112e4e4ec5609df3f72e67b5648c5858f72fab03ea89b05840e1a0d47b74f72f003aa1b28ab2c9d6fa08983f17bde7e776e958ba2e6704012988fd89685e89ab0db811ade361a", 65532, "1a035587d5fb1a38e01d94903d3c3e0ad3360c1d3710acd20b183e31d49f25c9a138f49b1a537edcf04be34a9851a7af9db6990ed83dd64af3597c04323ea51b0052ad8084a8b9da948d320dadd64f5431e61ddf658d24ae67c22c8d1309131fc00fe7f235734276d38d47f1e191e00c7a1d48af046827591e9733a97fa6b679f3dc601d008285edcbdae69ce8fc1be4aac00ff2711ebd931de518856878f73476", "7576696577313071657a636b63646667746839357071707673647735637337683934786330363465657676393236726471343933377367787677347868777079733470336837663875346d68353579796b376d337a6d6873766d783376616668773934376e356a6861336b706c6334797465616133377539766436713833647277756d70326d6339327978746b71716878373639647563737a773068636a393373766463366b7664726c71646e67347a6c37797a747673647a767730756a37673436753839667a6473376a723373776b7535396e6633646d71763973617368346c7774766e3871737a303866347a726e6168613436736c733874736d6b7432666832386a7577707577366a3365373473673075386370336d387678676333616b636a65656b6b33776870713733676b676578683876763230336134326e656776376a643666326d34733863766c7a396e327561613236636b75633773306770346e64366b6e6e756771676b713968303965797576673876673775716a70373972343930653563713967743835376d6b35753667376837617866347179726432733863396a673679747a736471773670307277387038307135326874746e6b336168686838637477646a666c7a636d686c71687566303675686d756c766b75716b39753675756b6833307233723530736d7067783565676e7976376d353663687a6c6a67767971663065776e6c3936387779747738767137336b617a3979356d666a3833653239723861646a6a333533336d6574727171386d3238797930366376796676766b32746a66786b657866706b736a3830633777736e756d716874763470756b766b373861747066723277716a3463756574777a34686e336e75386475676863776735766c6768736e33737772393235747066756766656c30636174686e616a6335776a6c6a6768366a7a6d713674776c727a6e336a6b7a726c6835306b75643761726464366c35727464323339723376356e64376368336e6d396d75306e367277357a676a747132356d786b6864346a6d6d7a3739753234746e7463337a6773326b", 2],
["31ca8977878be1c933487df60c3791a55de9a322b8b45af0e41305770824b1c10355f9be451e1b6988c4faabd40323c29ba1ce488e5a87ffe35faa472d63d0d3f6", "d3956adb00da312ac8c253b0a1d481b7254a0d05613daf6d22438c966bb9794e233b0463e223176176a68e530cbeb46209d48bc65c9f6d234bec0e26729cd1e32a6bf11b9c6f0e29de42561cde1e991bd5c081326848ad9e86faba40950cb4ead0c13a68318b3762ece890782fcfdcb57f9d85429f316ef2003df564f147b28a", null, 65530, null, "757669657731617a35333434766d646b306433616472796574786e6370747864333375756c6666356371657763736c65707a366477653570383475727a6530676168683261396e6671373676337a68777465707a68323561646a756578756378347a73667735737567776d376b6638307470336865777a306677307a7a6e616b78646d7072766a746a6d3734387975646b7a6e786c756c36366e676435786c6e353968797263307a77706678346e6b646b6b7334747375726d3838393771367279667261393463717961346b6e6e646432746b3373766b67777737376e377665717263666679656a7a78763732716c7771776e30737a3935613966786e667063726538377a63666875673677366e716e763065636164766e386c6c366d726e32646a6b6678676e3479647263706d7337616b6a7834393478366b796c6d306d347267357361716e75363332307a3839646c6d34387470736175387a653639617a67", 1],
["dfd1fc193409ea556be894962da2c40ea9433217238a88c46f5e4faccf8aba000282115efffda4676b297ae8b7b37bb4a5bffb1de2d66e55827ff71355ebfdac49", "0fec4a4553bde5638ff97ac262635ddce4fd10e9b9eedb3bf2b60a4cb01730e1971db5d0921a68a3e4d78379076f47fb26388a874a16c14dd21cacfc0f14475e4381ed27a5002ea7a9c87339d66ba14675e7f806d9580b2e71c4d166c15243a57b2ce29b1c441fb68534de0441e5d75c2da24667372d9ae6db6cf63693f44d86", "6d7ec9955b8dff5191fc761490cc97bcc2c63ddc14afd56a308112e4e4ec5609df3f72e67b5648c5858f72fab03ea89b05840e1a0d47b74f72f003aa1b28ab2c9d6fa08983f17bde7e776e958ba2e6704012988fd89685e89ab0db811ade361a", 65532, "1a035587d5fb1a38e01d94903d3c3e0ad3360c1d3710acd20b183e31d49f25c9a138f49b1a537edcf04be34a9851a7af9db6990ed83dd64af3597c04323ea51b0052ad8084a8b9da948d320dadd64f5431e61ddf658d24ae67c22c8d1309131fc00fe7f235734276d38d47f1e191e00c7a1d48af046827591e9733a97fa6b679f3dc601d008285edcbdae69ce8fc1be4aac00ff2711ebd931de518856878f73476", "7576696577316376746c7078327571336a73766332646e346e396179656d657a6470657630796c7a386e38777171326b35366b717836686c746365667773673661797330737a7334616e6a766567726a67307073676e6733736b6e367368666571666b337334307761376b38616370646a6b6d3739366e6670793734686e786c386e6c3378717a676472636d7834726565306370666667786377356a717a736a346378656b716a6364636c756c6b306c3974327077676e6861617a326d6636616330776674646539637938383675616a6d6435637378386a3978657967797a356a6e726c647177367072396c78366373366a6c6a307a6e6479666664396c77747965307a38393336736e3535616863676a7970753534687a303339616a61756a6b3773323573636175646a617673303276347176776e6e6c6a6b6a3866336c723070717034646670737571347179303966646335727337653676763232716d787778717774357335766c30646e763833657537337938667270727065643830686c6d753374353961306a6e78766b78327968356470687164766e687a357474687a6a6138776b3436646b7a6b6e3767356a3979676139387971377830617373617665783867306b7076756e6737707133636e6c3366617a3332326676667a6e7739656b733274657966647536787377726a667476783233766535666b7971347534676e357364366c3470676d6e7579646170663778763373717536326a64376d666766326a7338637a687730746c643264617a7a797772797466786765716c7a66633561367772713234387730783232786b77367170383638677835717765357078736464376439756636747332636e326e753038767868687577666476346b6c7765377a686c346d64396532677172326a7a6463377a6e3868756764373375366d33376c7a39357867703070397673767434746738766370637572353632676a373461706a68387a656e37707961737272676c34307a6b6b7967767268663072726a71683577377938666839673733727965676a6467706332777735736875737237776b74", 2],
[null, null, "28e5ddf893be43d79f917d3cff13d54deee48ab63f4967398a48acc960ac4c3cba685b153d45626a826c2b8a86e96b89296dea08432d33263da7cedafe53da342f4a37c0c51c06e7ca551cf13b0370f9b74add9ffc949f6398e07d4647076c2e", 65535, null, "75766965773139353776777a6675353561616a76786c756c68786b6e716b7a39717979766636366c683630667233647873756a34717474766e79793975637166753070766c7867353973713367726a6865633374323079646e39377a673237347232676a6e6d78746c64666a327465613730376766347a39366774676d3238656b656435723736796b79366e66776d6c77776c6c3975656768783670706b7173616e7174366364336b6a32786564756a777137647234636e6e346d6871676a33307464", 3],
[null, null, "0572a55aa8d307c5be909a8f4ae2d9307292b9f7ba7ba7657193fbfa3cba7104cab2e3d78fb6bcb1c824f0b61c08185c0efb62e502dea31ec88145d295be4214a0b79dd0caa56c5fb2a53b78597c1be7663c5191fe1542e72d903273e653d901", 65530, "596555ed9494c6ac893c49723833ec8926c1039586a7afcf4a0d9c731e985d9958", "7576696577316365796b386777616e71766a7475656863636437306c73617576777a6c7074727774616435346c327a786378646876716d7671756c68757174656d35346c7638366e6872647275686e776c787535396b39763266637268657a733433756337723275766d716e6d71796873677a766d776b35746770377167717235646761636e73386563346873786c6a63357a6b36776a797867716b6b6a776b653534376333763061763230676d32353873633537786d70366371617974346b34617a7834793737387166667467666b3279633366336c7a6e766e763077333036756a643870686a30676e6e393872656c6a71386e756e6763636a717478", 4],
[null, "3ff6f670b0a26f3dc1830e2414073de3ea036168c8036ec48261af13c29172c09e1f074a421b528a09ccc7c8a4c5e6e770fae6cd125bb4eb4566c200cef5d29689cd83d3ef915f499a88c78a8a4ac743d6d6f5d08f3f0a5debde2285d65e7292b5062525f7f20266b320ed827ca3ed009e9b3affeed117d3b52b95cffb1b4a80", null, 65533, null, "7576696577316173353235617239377366663439706361336179366432656e74756771746e377537707979666d333676737539347161656b667a7a6c3573383330346779773238707030377a38327768773435747a307237767a64766e753068383067663838383838307864357030707a613967396c6a3479777a6a736d357872387472376b74666b36687378327830727478776d7867736878756172716a3073356e723875323272707270726578766a6868636e3071323872766c326b6c72777879326c6c73347a6b6b666461763330667a3474367575336a75636661766666746e6b6770657377706537683461356a6832726432", 5],
[null, "b67bf6b6b0ff52e3da1e08a0dcae3b79197a3120ff41070e8ed7f7e08b8ebb07a9e0b74ce5844fed794b7e82a776db1f42570fa408be5c25e01088d8bf4ecb591f8f662498bb03f94209d7b2d298882ec70cfd56dfced731cdb0d442a9df3a8923c3933f5dc4e03cf89bb59f5f50f1fd9a0271eb44b97dc43ab0bb6a224da608", "48e057b53fc1c94392f04b631c1f4696fdefb74fb91ad813a91fd70290845e09a1d6cb1108385b9c20238733b3ca1b3586c5353ea6b323ad37413d001770c20b325f2e53aecdac5d36cb6585e402e96f9f079d3b888add2e6037f0a09ea8272f", 65534, null, "757669657731797061636d6c33656e387636733235376b6d766d3577677973706d34396b38336a32386d7137333071306338736b666a323374716e786633776576687574386b3873376e327874673964767374346d3634306a71307a6439656a39396e646d78307666646e706b65756736783838737732636a746d30303573716b676a64613337666b706e6d353835647377653236686c3367766e713671737a65676c337534676e38753771713732733030346771386d386d34796872746e747039656367686679756574647937356b6d75387a6b6c6d7361797466346a367867747466353763707a7678736b76796535777037307130647170756e713364326e7070376a356472717a756838763861333270676e66636d736d36646d7a39386e3233766c3077796a326438376e35386a646e337234647a376538633463723936666a7977307171766d386b7566616c6b3668306338397a68737863747477346e6d7a3036646b776c7066787073633577353673346c61347171387965746a7938616838726c38326c776b6467323834737a78", 6],
[null, "81ff8c94727f1f7d181cdad622827ea15c70aed21cda43c29b35939286e66602a7c993124d8bb30976ec559a4e2d9d2432decc44c81599e88ccea1e48f640517f79882b4567e7b4efb9edfb554bb284e76d0a324a3b2c5ba77bacc50af1788bd294ef2e7123660dd5154dc0653885b521d3687a19803f575e4e54f2229193406", "0b264d58dfe23d503b5ef1493e0cd388193dd20fe0131209e28fdff27d494a0ba5e5d9e4e5daf7f3d471bbd7209440a6eb1a5677cd06c211546a025052e1a806630c2b4ddaa21db96eb31ac1d1bbb974305b2396d66b9bb802cf9f473ab14f25", 65534, null, "757669657731796d613463637579323764686d6e7a633377363563687273357175397436637379647a6674376b6561686a32396e7a74763630617135767273786b78727879653671617965353975637a6a78773476757035357a717275773371686c703039713730613030386e76776e383038756b7268756b656e65366e6372337a6170336a6a327766633970376768766165656c76363677666d30746761396b7233726b6361717572683239647364796a35677a7837303930796e796b323737726636733437326b3338616835793637617838676a6a303977687077306a783978656a656a677263756b3761396575686c6470636d363330326377766d616671716376366a666a6e66766838646c377336376d6e34686e6b726a756c793676676e76776c77383433657373616865306175763634323830667867637a3470387374787566736e61633430393663353036386d717a6774686b7161766a787164356d6a72616a777238756e6e6e343835786b64386c72306d736b716d7536726538367279787539717936667071617864783879", 7],
[null, null, "5a597f1414b10558f5c76406afb5a025a8abc02cf46738b7a15933663f9f1f1c1a4e6a217bafda3180c08eff58d76fd33a22cbbb485334b6e5d4b68e0119331e8fb43b7d91f9579249a95ef11c500b779baaa35cda27a146438f19bb48575e1b", 65534, null, "757669657731673230677072656b666336746c61377564776d716c35633470346e643237723066727876676b75737266306736306577663273356c30397338726730336e767974366d676b7365666a616e363030783936377663796163786674343572366a3578397a75736176776538636b6b776e3434663434647664333871376a36713538656a6373747837376e356e72646b6a3570737968366430716d616630367663336a613373396b68307277387a67706d7730737674666567386a77383968", 8],
["12b56da9c382857deecc40a98d5f2935395ee4762dd21afdbb5d47fa9a6dd984039b50a122f26ede2e13ff63b130c90f4c0f951ae8a81ddc1a4c987754f144c536", "65aeee89ce971199487ac959c2960cee07477bad7d07a4c71a363894d671edc7090213b1b25d74d9d07cbe5b5034248bad5bc5394972c8532ea24b3f3887f9e6d312ca8ed244af57ce0412209ba3d537bcac08bf7f64744100dafac55fb25629204f19a123bdbbba7159510e52376938fb893ebdadde04d5f0646a3ad0f4cbc6", "20f8c2edbe19901c0d1b5cc7ab185e67354511bfc5174fe6bc0e6362c5880b28fabbf237258f8d03b200ad7fe0f3fa7e80e628f2b745dc9983b038c3a81f8237b6654db322e68436a972c6d3bc56e5560fb8658055524a11d6ee62e5a7d7a516", 65534, null, "757669657731716e3573797577353575336c3479786b397a797063306e65736c78793236753430676e6e636a636d617434387833777939347070736a3934366d6771326a7776326b66386339687933397368683365796b377675733438727670397a6d667867347865637665706e6d716c6c6c7174323265773668306b7761397036656b633874726b6475736c787a357375683367383078677a6c383337666632797835763867723538663032767667777530397a346a6d6a6a73796c363278326b726c357967796e766a6c7170387a6877376e716874757461726a6374396a736b7879307a6c3771337a70796d3872367a7137657434743038646b6332637a7471336c677330786a6c796a7266727670356664726d6e7467756373376830646b7838343770706538677a6e39643232783379667767663277787032736e657a6b6635386e6b356d7275367365656d7135616c3973746b756478363830397075376674633775723934727a307165717a76336e646c33736b64396c6d65657470667932616d3664666e6b6c7765616573636363333361396163673030707a32323274377774357775323064646a68746579777a76766b3567723835713364346576657672387038786d3377386d707578613976347033337979637333767a3233787677736d39726d676c39377a3477306432796564357963753537727336", 9]
["1290d6d19387d7edd52a7ffaf3e104731f7695d03b45cedcc20f3d002d5c296d0344d2f1d0e01b9070d26795599a6e572541e04d9e4bc2054264cf31772014d7fa", "65aeee89ce971199487ac959c2960cee07477bad7d07a4c71a363894d671edc7090213b1b25d74d9d07cbe5b5034248bad5bc5394972c8532ea24b3f3887f9e6d312ca8ed244af57ce0412209ba3d537bcac08bf7f64744100dafac55fb25629204f19a123bdbbba7159510e52376938fb893ebdadde04d5f0646a3ad0f4cbc6", "20f8c2edbe19901c0d1b5cc7ab185e67354511bfc5174fe6bc0e6362c5880b28fabbf237258f8d03b200ad7fe0f3fa7e80e628f2b745dc9983b038c3a81f8237b6654db322e68436a972c6d3bc56e5560fb8658055524a11d6ee62e5a7d7a516", 65534, null, "75766965773163796c677a666c7072767334366a676c68746b70656b7439386177787270397a30647176686e6336637563766e37666c7772616638747471666d3667333875307561336a636d6b7139723333716a676774646763326371396e74736c38337a6c3971726d6a346830656c7365706c66367878777474706c77683671746d7a71387a70613434646372736c736c7668757261756c78686e77666c76353634617068796a6a756771327434386e3965723261737a716766787a7a6b393374683335346474686e61677636327572306770367a63637033777265646c6d65797668636336743034656c61793270377061777465347364743674756565617a76776e75346d65666e75796379716c323738676c65757179343675393932357777616b3472373637747a6c3670646c6c6a756d616c6a393074676a707232393837336d7535366635773538663430747167636e73723367676761356e357a6d647a79776634776b7a386a367877776868667063666a763532656b6538726d673775306a706c743879667370327a6e7871306d39763838713435736b723878396775746768377968646c633567326d716b6a753361336e3830713935687037357037667376753979773775366a61346879326e7765616c637530773373673775706178647a30673335667837787664783372676c61617276783875377574", 9]
]

View File

@ -2,13 +2,13 @@
["From https://github.com/zcash-hackworks/zcash-test-vectors/blob/master/unified_incoming_viewing_keys.py"],
["t_key_bytes, sapling_ivk_bytes, orchard_ivk_bytes, unknown_ivk_typecode, unknown_ivk_bytes, unified_ivk, account"],
[null, "8f7c07fa1a2daf10cde137eff57d58f12f1fd9f8be045867249b549f05a90040d289d8ebf0f32dcd0ff91b2f80b60856afc2f325035e1facf5043890249b8901", null, 65535, null, "7569766b3133686632747565353361636b39343338666132336736393367647375746c65677530676b65306d38366d6b3337307278367972373476793732726330767566766678686e34706d6d6d39663879376a703074386133666534646668737361766766633375687670687a746c6873327a7538706672633264677965396d307a703230753473367671767535", 0],
["18d9614fc820905d042bb1ef9ca3f24988c7b3534201cfb1cd8dbf69b8250c1802820346fcec8ea1276db2e615b8ced2fe4cf7468c1ef453146195b4d7bc13a4dc", "d0c13a68318b3762ece890782fcfdcb57f9d85429f316ef2003df564f147b28af71c77c659a641f59a2c8ed0df0c55febd8243a69f09cc39f6024deeeb30fc00", null, 65530, null, "7569766b317273786e376778367a7463657a36727578383636677636636e396868707872686d327964617a3971656665746a70646379387378656171766c6d376c306a766c3372677179786c6e6575337239687875727478366c706d346a74786c66716a68757261727375387a647979766c653779796b72676a73686d61363565616d783374397132667a376d6665686c6b6870796e767237356636653575346e3768653968763263746d3872366876776e373370377735757568796e7379647374737967746e727835397972307a343372326a326d6e67616461727737787368776a7664387176366b7577656530756466376368657a743775", 1],
["25946f62c2fa7b2fecbcb64b6968912a6381ce3dc166d56a1d62f5a8d7551db503062caf06c89638774b698aaafc8c834fb2696f70c3cdc70f4528f4ddae53f9e1", "7b2ce29b1c441fb68534de0441e5d75c2da24667372d9ae6db6cf63693f44d86bcc4dc4510f83aef5a266ca049e832eb81f06c8a410be94613c267c8fd87b407", "72aa9e7146f17e7d8f99b0dddc4ea5216a7c6b53e06b572017baab0bae1cabdb3b5acb7172df289885220237304722e4677099c6dcdc2ee88a471401d404f914", 65532, "1a035587d5fb1a38e01d94903d3c3e0ad3360c1d3710acd20b183e31d49f25c9a138f49b1a537edcf04be34a9851a7af9db6990ed83dd64af3597c04323ea51b0052ad8084a8b9da948d320dadd64f5431e61ddf658d24ae67c22c8d1309131fc00fe7f235734276d38d47f1e191e00c7a1d48af046827591e9733a97fa6b679f3dc601d008285edcbdae69ce8fc1be4aac00ff2711ebd931de518856878f73476", "7569766b313865756475706d353739687373647866397165343835387579346337663076796c717464387275616a366a786a683234397671667863797a6e737366396874756d65686166393068326b7a32787934757063356e6c38306d6d6a727935786c6e6530397275726a74376e6d78776e78347576643468307739306537337763346c396d6167326333336674776a797276666d75646a7470717932757861707a6c7337657a776a77396e736d393871683936776538677979326e32646e787766786d767a65646775777770366c726871706c7675716470727473716b37703538793778616b36706674386c30653478657336776d306b32336b6b6e6173646e306d653979637779637673687771713471707a727a6a75756c6b386e75746d306d7666686b6a75717872636c7077706377766e777768327a756332617a667139703236676b76676e353067716b7632376d7479373333387134787777326e687070797234686c33356e6c343275716a3076347770786c7474323030637172386d7265673836706173647837353234647a616676377465617979713072756e716a663277336a6465363766386b7a30346a766b636378686b39367a6e656d6d66376e66346d36666d7375303630376e38306466676a307a68686367797a74336475367630657475346437326732373339653074653939657463306c3664706177787735763639383064383678677065616e6c36377866363564647a343576643776776c6c746d7437786b67386a797a34756461346c39683730366d66646178386b6b6c34356d6c74763772397173726b6b73686330396a3835763579787468336671776e346c687a3874", 2],
["8247a8bb70d21b1aa8b19e32cda15910f54d87e00832cf7f29a377ad3b632af6024811eb476da77db92d1ac54f3eb7511e0c483325911536546ea97e02daa3781e", "d0c13a68318b3762ece890782fcfdcb57f9d85429f316ef2003df564f147b28af71c77c659a641f59a2c8ed0df0c55febd8243a69f09cc39f6024deeeb30fc00", null, 65530, null, "7569766b316e727076383537386b6179327465337532757a61797472376c3870737077717a356b346d387375387a7766326161356c796a796d6864346b6d7035737165616b397a79746473393373793776777639336d65796b6c6a35637436386472673073376534636d70376171736d7a387a79306436396a323435683775643268776574766b786e397968343461686361657a3535666d72656c346577616674307573687361726d3479633634677a346566763939376b6c706e63727033366d32793035736d35357777337a64386d7370387878376d793767306e397a6367676a7477723478643230306b6d7a646d6d6a6a633639376c3379", 1],
["2d12ebf22e7033c50bbcc9cfffae0d2bcbaa163d3a1d5c6169ddc8ef7858e3cb02be3c6280a929eb7d606883ff2fea9e9ebdbbc1e35eda37d111262d6a90ec7320", "7b2ce29b1c441fb68534de0441e5d75c2da24667372d9ae6db6cf63693f44d86bcc4dc4510f83aef5a266ca049e832eb81f06c8a410be94613c267c8fd87b407", "72aa9e7146f17e7d8f99b0dddc4ea5216a7c6b53e06b572017baab0bae1cabdb3b5acb7172df289885220237304722e4677099c6dcdc2ee88a471401d404f914", 65532, "1a035587d5fb1a38e01d94903d3c3e0ad3360c1d3710acd20b183e31d49f25c9a138f49b1a537edcf04be34a9851a7af9db6990ed83dd64af3597c04323ea51b0052ad8084a8b9da948d320dadd64f5431e61ddf658d24ae67c22c8d1309131fc00fe7f235734276d38d47f1e191e00c7a1d48af046827591e9733a97fa6b679f3dc601d008285edcbdae69ce8fc1be4aac00ff2711ebd931de518856878f73476", "7569766b3178727366347674676538646363746a7a7435793365666572667830757a6d6c637134363568363763663874336b387873616c7461356c796e6573643675716d6a3379687a74643738306b38346e3671637664357a72616a7275796130326d777661783671636639676677676875327667726c6c30656c3439376a753678396334326b71766b36666c33786b6c7632397933326d6776713574386c7579323374757a6a6c7964747730686d77323239756e36377a636b733373727963386c76706d77367a647a39716c6d38756a66666e78346361727436687a74337435376d346e333838746666716b3670646678386d3034777a6132366e366176376639746e6173657177356d6a7836367971743032667a646765716c6b613368686675796d70763676686d347777336635337330716a677734756c7472306e37323776756e376b6d747735613973336435396b356b673776326e763668687461363432326d7863617a34726e33636d3833786e6a707a3978357964706e76673974783675387937303938676832327266633474356a786e6e3071373967786a717070386c663933366c7435386e32647239353075683938717a6e786b646b3932773333336e306336327a71747534676c76787864337138703833356a7a6b37307276683066393871756d387132796c6d3830796a7977767a327368323471736b75386a65656c656375686c337072396775366a7661766630776e32686475646136757065686e6d6e7878646e3536667372646b307a32766c726375613970756e616c716a64723233643266723979787a6e6d7734783664783976747161653274387964306e6b787268663071", 2],
[null, null, "34dfb71e7f7b58a60552cd3428b695ad88336f7dbe4f4996a5c3098b0bae492b8b8263ee41f5939a67876e77b9e52f9887127fa16d8e02ab1432fee2986be721", 65535, null, "7569766b31676b78303576393964667a64347032326e7263397a336c7939613463736a7274787a38786d32307a79676361386536686b676a366b616777783966326c676d6c7872326b776567656e797975686e636e637a6b6b3336653737683576773371353472686c347671336a616d3937727978637530377a616577776d7979746e6e786b6571716a71376d7165", 3],
[null, null, "8ad93cb898ca518f9b104752e92dd888f0cfefa89e961424fc238ff81eea51a2cc2321ff81d085ca03f0d46891521433e459165f1eb1712633bdfea6ea028131", 65530, "596555ed9494c6ac893c49723833ec8926c1039586a7afcf4a0d9c731e985d9958", "7569766b316e65676b346c6d7634677479717a3471727a366c6a6a363673783871766c676a3763376d776671666b7a78353730743361793066716d3539337a64307877786866646e6763326666366c337a3767336c387a3232683972736a6b686b6834723876336d7272376b6d6b70676564746e6d6b3964777a7a6b703934347471727970336d786e397565657374307878396537757767616b3978656137647a3263653632636d76797178737a6739396c37386e366a347430723539336a7179756773376a61796e79", 4],
[null, "b5062525f7f20266b320ed827ca3ed009e9b3affeed117d3b52b95cffb1b4a805b21d04b675f4bee3df18f995152d7ac7a08010a490f0f7e91ad51fb71f81100", null, 65533, null, "7569766b316c7634346170386a6132666e38716467763730756e75386377733475366430357871366c7937723635646b7a323833756435337a796e3732366d6c647367773265386777657261366376346e7a6578737374727173746339387738783579646737793337656b357a65677336687873656761346e7074616c61706b39726a353763686e73756b76746470", 5],
[null, "23c3933f5dc4e03cf89bb59f5f50f1fd9a0271eb44b97dc43ab0bb6a224da6089a387edda4c57191b4483e6bf4f356c7c2b2d9078cdabc4337d4b5a14a062504", "bb2244678a2aa718cd49f7f510d76422c948ef4d238e301c61aed5bd8db90ba5df323b4952e07c4f320e94499d5baede4f7409636314bf85227fb18111472525", 65534, null, "7569766b31756d6c3577786c3776337764703579767966396434686a6d6b7072767738773532366a757536746b7568746a7a7138336e6d616366796539646c6b6d6666737033616d336b7375636b61776a6b6a6a6e67346b346a33726674786172656a7a336567737336717736726874353638347563667334763461647738767675777565616b706d6e783838656a33637163797138647378776a36737a786176356c757a65706c67616830346a7834336e6567767a6a6d666a676c307774677a6b7833737078356c397079327332746e377168656d7776306833376879756a35376a776538706b687037673767396d716b71396a756d68", 6],
[null, "294ef2e7123660dd5154dc0653885b521d3687a19803f575e4e54f22291934064ed7b9173a585c0b1639fffc3c676867c487f715ec1d8051efcd023d59ad4806", "cdf74b6237c88977205a7114da58ca3c0f0a008c867f9d3be2a741360241c576d459a06cfaec23b4533f0bd1883443e05faafad8a0610f91790811e2a7d5e238", 65534, null, "7569766b3137677138756a793761796a36337363746d6c7433706d6d6d786b7038356767346a7334306a636c7230366a6a76736c303063616b66707461716373716676716d717675396b79657639686367326d77793063336d796879366675676434667668366e793939306a33677568386a703439637472633564346b636d7375797572676c3761716b346e35366d76763479657670376e66676c6832777632657234747574346d7863656574796a7833736466666c66763233716374736d33386664617838657535727777667a716d686876616d796178613667686361636c7034736b6e756b726e366a6673676c737267797135657633", 7],
[null, null, "72ce915da8953d5994a022a0466bc8a14d2643345a0d14a06f07d0c0bab9e7ab1086dc2a5f883475a157fa6e7ef03afc7ab16c92ffa86e11f95c0a283c77511c", 65534, null, "7569766b31336d377970666b75687039636e396d666c6a74787165326d6d736a6e326666367637676b39737361787a6d6c6a30333637327476326e3737783777756336643070707337746a74747867796b737063676a666d766865386d346479676b366d6430346a6d7a766a6d39636a64636430357a73336679686867366632726e73636e72667a73673963667738", 8],
["12b56da9c382857deecc40a98d5f2935395ee4762dd21afdbb5d47fa9a6dd984039b50a122f26ede2e13ff63b130c90f4c0f951ae8a81ddc1a4c987754f144c536", "204f19a123bdbbba7159510e52376938fb893ebdadde04d5f0646a3ad0f4cbc67c74277a2206cf8ecbfc565cfb44765a6fbf3b66069f9d75b914c01345af8702", "82cc9d79742fe5ae9a142b9336a98677b154fe20401eb18998dbed915b0453ce6eb1b28062dbe644840487082089bf08e1f549a53226084252f9a7f98e41e820", 65534, null, "7569766b31647172686e666339676368716b6c686e6d6e6a3936646a713364383238616e683063393570797664383537303735396a726838703379726c7970686866643832646a35356b7670646b76776c72376e3371306a33686b30306334396e786b6b30337339356d67766d656c373266756d7a7761617a327a673839667738686e33373373356435713973647633707a333468756d39783938356d35336e6a35736663776b366173307775757973786135327a32346a7574646e6e786133633732363878707134346a3763347435766838736471716571386e6e7971726d337973307972356c6a3564686373667277656d636477396c3668366d666337677638686d646e6e6a6b326778716435686c327630727174357972353837776c713778366e66617873376d64667734356437346535707a78307671307a67367532706d383037786536787a6a71637435656e36613834716d647077666a7478756a6a7a75", 9]
["2a5fe160817c62b0295912725e72430d18e3572cb6eb2b031599c63a4449f56702679e6435568e0968502404d412744aa3b7b12f1afa9e7233f7425204e428e943", "204f19a123bdbbba7159510e52376938fb893ebdadde04d5f0646a3ad0f4cbc67c74277a2206cf8ecbfc565cfb44765a6fbf3b66069f9d75b914c01345af8702", "82cc9d79742fe5ae9a142b9336a98677b154fe20401eb18998dbed915b0453ce6eb1b28062dbe644840487082089bf08e1f549a53226084252f9a7f98e41e820", 65534, null, "7569766b3133356474393374756c79676a7a337a67666834303666636d616a726a727239637a767a383466396d66706a353032376b6b763979687a6c68726c6e6536336c6a74336a796639786e37366e71373677387779393975683578346c6e6b7874396836367537777972723977676730757565306a6d36397235387837637176616175396571386a783563703774746e39387277366a6b363961707138336a786b3863786e336876366c6d7539366d6a35797a366a7a6c79676c30396c7463337578303230666a68326b686378797a6c6b6e6c746a747766796a7574783739766536766b6c3768716333373839646c386774737a7878777670616371707335397a7574666872716b3875676d3563336b6b7a72657139353573386438727030647163717a39356877377136666467653870666463356a37683261733574786b687538766d6d34336e646b6172787065756c7a63676d7739667a396b376872616776", 9]
]

View File

@ -0,0 +1,192 @@
struct TestVector {
c: [u8; 32],
pk: [u8; 33],
address: [u8; 20],
external_ovk: [u8; 32],
internal_ovk: [u8; 32],
account: u32,
};
// From https://github.com/zcash-hackworks/zcash-test-vectors/blob/master/bip_0032.py
let test_vectors = vec![
TestVector {
c: [
0x95, 0xd7, 0x6e, 0xbc, 0xf7, 0x24, 0xa9, 0xa3, 0x14, 0x98, 0x62, 0xe5, 0x64, 0x05, 0x8b, 0x03, 0xe0, 0xb5, 0x54, 0xee, 0x95, 0x34, 0xae, 0xbd, 0x17, 0xc8, 0x33, 0xd0, 0xda, 0x39, 0xc2, 0x9f
],
pk: [
0x03, 0xe7, 0x9a, 0x82, 0xb8, 0x13, 0x90, 0x42, 0xce, 0xf6, 0x6f, 0x65, 0x90, 0x29, 0x51, 0x11, 0x08, 0x59, 0x2b, 0xcd, 0xc4, 0xd3, 0x57, 0xf7, 0x2d, 0xef, 0xc9, 0x58, 0x9c, 0xec, 0x35, 0x2c, 0x4b
],
address: [
0x56, 0x86, 0xc3, 0xda, 0x4d, 0x81, 0x05, 0x3f, 0x2e, 0x23, 0x83, 0x8e, 0x13, 0x14, 0xab, 0x2f, 0xb9, 0xcd, 0x63, 0x5c
],
external_ovk: [
0xca, 0x64, 0xe3, 0xa5, 0x21, 0xc0, 0x46, 0x0b, 0x25, 0xb1, 0x65, 0xf2, 0x25, 0x57, 0x4c, 0x18, 0xe6, 0xc0, 0x44, 0x85, 0xe7, 0x0b, 0x6b, 0xd8, 0xfe, 0x14, 0x12, 0xf8, 0xa1, 0x94, 0x06, 0xba
],
internal_ovk: [
0x72, 0x16, 0x5f, 0x26, 0xcf, 0x8e, 0xbd, 0x2d, 0x4f, 0x10, 0x11, 0x2c, 0xc9, 0xa9, 0x8d, 0x64, 0xfc, 0x6d, 0xf4, 0x4d, 0xef, 0xc0, 0xe1, 0x8e, 0x4d, 0x46, 0xd9, 0x5b, 0x51, 0x1e, 0x2f, 0x88
],
account: 0,
},
TestVector {
c: [
0x31, 0xca, 0x89, 0x77, 0x87, 0x8b, 0xe1, 0xc9, 0x33, 0x48, 0x7d, 0xf6, 0x0c, 0x37, 0x91, 0xa5, 0x5d, 0xe9, 0xa3, 0x22, 0xb8, 0xb4, 0x5a, 0xf0, 0xe4, 0x13, 0x05, 0x77, 0x08, 0x24, 0xb1, 0xc1
],
pk: [
0x03, 0x55, 0xf9, 0xbe, 0x45, 0x1e, 0x1b, 0x69, 0x88, 0xc4, 0xfa, 0xab, 0xd4, 0x03, 0x23, 0xc2, 0x9b, 0xa1, 0xce, 0x48, 0x8e, 0x5a, 0x87, 0xff, 0xe3, 0x5f, 0xaa, 0x47, 0x2d, 0x63, 0xd0, 0xd3, 0xf6
],
address: [
0xdd, 0x46, 0x1b, 0xb0, 0x02, 0x9e, 0xfe, 0x1f, 0x27, 0xd2, 0x1d, 0xfd, 0xe6, 0x58, 0xc2, 0x00, 0xad, 0xcf, 0x25, 0x79
],
external_ovk: [
0x42, 0xfe, 0x13, 0x22, 0xbb, 0x57, 0x3b, 0x3c, 0x7f, 0x78, 0x55, 0x7f, 0xfb, 0xd0, 0x43, 0x78, 0x8f, 0xdb, 0xdd, 0x19, 0xcf, 0x71, 0xd3, 0x51, 0x66, 0x81, 0x88, 0x25, 0xec, 0x41, 0xa0, 0x80
],
internal_ovk: [
0x20, 0x6a, 0xe6, 0x74, 0xae, 0x47, 0x09, 0xd2, 0xce, 0x9e, 0x0f, 0x4a, 0x7c, 0x36, 0xef, 0x11, 0xf2, 0x65, 0x0a, 0x48, 0x98, 0x03, 0xbd, 0xd1, 0xba, 0xcb, 0x51, 0x67, 0x76, 0xaf, 0x62, 0x93
],
account: 1,
},
TestVector {
c: [
0xdf, 0xd1, 0xfc, 0x19, 0x34, 0x09, 0xea, 0x55, 0x6b, 0xe8, 0x94, 0x96, 0x2d, 0xa2, 0xc4, 0x0e, 0xa9, 0x43, 0x32, 0x17, 0x23, 0x8a, 0x88, 0xc4, 0x6f, 0x5e, 0x4f, 0xac, 0xcf, 0x8a, 0xba, 0x00
],
pk: [
0x02, 0x82, 0x11, 0x5e, 0xff, 0xfd, 0xa4, 0x67, 0x6b, 0x29, 0x7a, 0xe8, 0xb7, 0xb3, 0x7b, 0xb4, 0xa5, 0xbf, 0xfb, 0x1d, 0xe2, 0xd6, 0x6e, 0x55, 0x82, 0x7f, 0xf7, 0x13, 0x55, 0xeb, 0xfd, 0xac, 0x49
],
address: [
0xa2, 0x5d, 0xef, 0x5a, 0x17, 0x3b, 0x94, 0x96, 0x8a, 0x36, 0xbc, 0xb9, 0x58, 0x9c, 0x6f, 0x4b, 0xd6, 0x60, 0xb7, 0x21
],
external_ovk: [
0xa8, 0x3b, 0x30, 0x8c, 0x94, 0xef, 0x04, 0x6c, 0x4a, 0x8a, 0xb7, 0xcd, 0xcb, 0x31, 0x4c, 0xbf, 0x1a, 0x49, 0xd4, 0xef, 0xca, 0x44, 0x4e, 0x2f, 0x55, 0xda, 0x11, 0x33, 0x52, 0x9c, 0x23, 0xec
],
internal_ovk: [
0x6b, 0x68, 0xea, 0x6b, 0xb3, 0x1f, 0x3d, 0x2f, 0xc8, 0x59, 0x2f, 0x11, 0x87, 0x0c, 0x0e, 0x96, 0x6b, 0x16, 0x8c, 0x02, 0xb5, 0xa1, 0xac, 0x56, 0x33, 0xcc, 0xdd, 0xa0, 0xcd, 0x36, 0xec, 0xdf
],
account: 2,
},
TestVector {
c: [
0x7b, 0xb7, 0xc4, 0x15, 0x99, 0x43, 0xc7, 0xf7, 0x54, 0xce, 0x2e, 0x8f, 0x3c, 0xc7, 0x12, 0x2b, 0x0e, 0xbc, 0x23, 0x4a, 0xf9, 0x2a, 0x67, 0x23, 0xf3, 0x1e, 0x69, 0x15, 0xb1, 0x13, 0x83, 0x98
],
pk: [
0x03, 0xf4, 0xd0, 0xad, 0x44, 0x10, 0x8d, 0x7f, 0x93, 0x09, 0x75, 0xf2, 0x79, 0xfd, 0xd8, 0x92, 0x56, 0x59, 0x49, 0xe3, 0xa1, 0xf6, 0xe8, 0x03, 0x4a, 0x50, 0x03, 0x18, 0xf7, 0xde, 0x3b, 0x92, 0xac
],
address: [
0xf6, 0x91, 0x89, 0x2c, 0xa8, 0x8d, 0x10, 0x86, 0xe0, 0x22, 0x83, 0x57, 0xd5, 0x74, 0xf1, 0x2b, 0xa4, 0xcf, 0xb6, 0x42
],
external_ovk: [
0x6b, 0xdb, 0x72, 0x2a, 0x0d, 0x8f, 0x33, 0xce, 0x6e, 0x1c, 0x27, 0xb7, 0xc1, 0x1c, 0x7f, 0x8f, 0x9c, 0xd0, 0x13, 0x90, 0x42, 0xdd, 0x84, 0x3c, 0x56, 0xa7, 0xb0, 0xa6, 0xa3, 0x5a, 0xc1, 0x9f
],
internal_ovk: [
0xb0, 0x52, 0x52, 0x83, 0x07, 0x6f, 0x38, 0x55, 0xcc, 0x72, 0x03, 0x91, 0x29, 0xec, 0x19, 0x1b, 0xe8, 0x77, 0x58, 0xcb, 0x26, 0x79, 0x36, 0x54, 0x8d, 0xc0, 0xce, 0x62, 0x08, 0xcb, 0x17, 0xce
],
account: 3,
},
TestVector {
c: [
0xd2, 0x1c, 0x26, 0x01, 0xe1, 0x05, 0x28, 0x88, 0x64, 0xd9, 0xb5, 0x1c, 0xa9, 0x96, 0x65, 0x23, 0xec, 0xf5, 0x75, 0xa0, 0x97, 0x97, 0xac, 0x29, 0xfc, 0x02, 0xad, 0x33, 0x90, 0x2e, 0x38, 0x18
],
pk: [
0x02, 0xbb, 0xb5, 0xbe, 0xdb, 0xb9, 0x54, 0xdd, 0xff, 0x2e, 0x9a, 0x7f, 0xcf, 0xa9, 0x89, 0xe2, 0x59, 0xd9, 0x79, 0x18, 0x57, 0x02, 0x84, 0xd3, 0xa2, 0x0f, 0x8f, 0x30, 0x7a, 0x41, 0x50, 0xab, 0x57
],
address: [
0x35, 0x1d, 0xd7, 0x8e, 0x90, 0x8e, 0x0c, 0xd1, 0xe4, 0x14, 0xb9, 0x30, 0x74, 0xaa, 0xb2, 0xd5, 0xe4, 0xbe, 0xf3, 0x99
],
external_ovk: [
0xef, 0x65, 0xbf, 0x5e, 0x59, 0xa6, 0x7b, 0xe3, 0x64, 0x4e, 0xd0, 0x50, 0xf2, 0x73, 0x06, 0x12, 0xb1, 0x5e, 0x61, 0xe1, 0x46, 0xec, 0x84, 0x54, 0x43, 0xf2, 0x40, 0x46, 0xa3, 0x84, 0x14, 0x64
],
internal_ovk: [
0x28, 0x82, 0xa9, 0xf2, 0x67, 0x4b, 0x27, 0x2b, 0x67, 0x4f, 0xc4, 0x2c, 0x53, 0x5b, 0x3d, 0x4d, 0x8f, 0x5b, 0xd3, 0xe7, 0xc4, 0x9a, 0xd5, 0x0f, 0xa0, 0x65, 0xdd, 0xf8, 0x59, 0xbe, 0x87, 0xda
],
account: 4,
},
TestVector {
c: [
0x6e, 0x65, 0x07, 0xcd, 0xd2, 0x0e, 0x4f, 0x14, 0x99, 0xb1, 0xd1, 0x0f, 0x27, 0x01, 0xde, 0x41, 0x06, 0xb5, 0xbc, 0x36, 0xcb, 0xe1, 0x63, 0x9c, 0x5e, 0xa1, 0x12, 0x7e, 0x20, 0xce, 0xf7, 0x3d
],
pk: [
0x03, 0x01, 0x61, 0x1d, 0xce, 0xbf, 0x65, 0xf3, 0x29, 0x12, 0x1b, 0x01, 0xeb, 0x09, 0x8c, 0xf4, 0xc5, 0x80, 0x8c, 0x73, 0x8e, 0x9c, 0x6f, 0x9c, 0xf9, 0x53, 0xe8, 0x82, 0x25, 0x8f, 0xf7, 0xcc, 0x1b
],
address: [
0x8c, 0xd7, 0xcf, 0x76, 0x83, 0xeb, 0x66, 0x3b, 0x5f, 0xa6, 0xe9, 0xf6, 0x2f, 0x86, 0x80, 0x5f, 0x31, 0xd6, 0x2c, 0x79
],
external_ovk: [
0x38, 0x07, 0x3c, 0xb6, 0x4c, 0x90, 0x8e, 0xb3, 0xf8, 0x91, 0xff, 0x19, 0xc0, 0x79, 0x34, 0xd1, 0xed, 0x1b, 0xf8, 0xe0, 0x6e, 0xdc, 0xdd, 0x16, 0x28, 0x26, 0x78, 0x2a, 0x19, 0xa4, 0xec, 0x46
],
internal_ovk: [
0x85, 0xdc, 0x55, 0xe4, 0x0b, 0x68, 0xb9, 0x8a, 0x4a, 0x7d, 0xc3, 0xfb, 0x3d, 0xa0, 0xc3, 0xc5, 0x90, 0x2c, 0xa5, 0xdc, 0x81, 0x82, 0x6e, 0x14, 0xc0, 0x9f, 0xed, 0x37, 0xa4, 0x3c, 0xa5, 0x37
],
account: 5,
},
TestVector {
c: [
0x55, 0xca, 0xa7, 0x7a, 0x0f, 0x3c, 0xc3, 0xd6, 0x79, 0xe3, 0xd2, 0xde, 0xe1, 0x79, 0x3e, 0x4a, 0xe7, 0xe0, 0x06, 0x3c, 0x2e, 0x91, 0xa4, 0xc8, 0x10, 0xae, 0x9b, 0x46, 0xc0, 0xff, 0xce, 0x9e
],
pk: [
0x02, 0x9f, 0x02, 0x72, 0x95, 0x72, 0x10, 0x7a, 0xd5, 0xbd, 0xd2, 0xa7, 0x6f, 0xff, 0x16, 0x5d, 0xcb, 0x96, 0x37, 0xa6, 0x20, 0x23, 0x6d, 0x2d, 0x86, 0x0e, 0xd7, 0xbe, 0xd9, 0xcd, 0x70, 0x50, 0x9b
],
address: [
0x3c, 0xb6, 0x07, 0xa9, 0xfa, 0xee, 0xb3, 0xf1, 0x43, 0x87, 0xc0, 0x2b, 0x40, 0x7a, 0x1e, 0x80, 0xb2, 0x2f, 0x73, 0xd5
],
external_ovk: [
0x23, 0x6a, 0xd6, 0x54, 0xd3, 0x99, 0x8a, 0xf3, 0x38, 0x47, 0xe9, 0x6d, 0x55, 0x08, 0x9c, 0xc8, 0x34, 0xa2, 0x4a, 0x9f, 0xf9, 0xb1, 0xa7, 0x8e, 0x9a, 0x84, 0xb0, 0x82, 0xd1, 0x72, 0x07, 0x63
],
internal_ovk: [
0x9c, 0x56, 0xcc, 0xac, 0xf0, 0xf3, 0x05, 0x2e, 0x33, 0xa8, 0x08, 0xd8, 0xc1, 0x69, 0xa9, 0xa9, 0xd0, 0x2a, 0x5f, 0x7d, 0x45, 0x2f, 0x7a, 0xb0, 0x72, 0x03, 0x87, 0xf3, 0xfb, 0x20, 0x95, 0xa0
],
account: 6,
},
TestVector {
c: [
0xcc, 0x1e, 0x77, 0xa6, 0x7d, 0x42, 0x9d, 0x76, 0x79, 0x1b, 0xe7, 0x4c, 0x6f, 0x36, 0x2f, 0x71, 0xc9, 0x17, 0x16, 0x99, 0xae, 0x6d, 0xaf, 0x86, 0x14, 0xcb, 0xb0, 0x51, 0x21, 0xd5, 0x6b, 0x23
],
pk: [
0x02, 0x33, 0x1a, 0x06, 0x71, 0xa6, 0xf7, 0xca, 0xcb, 0x03, 0x4c, 0x35, 0x32, 0x19, 0x8e, 0xa9, 0xd9, 0xb1, 0x4f, 0xaa, 0x72, 0x09, 0xc1, 0x66, 0xbf, 0xf3, 0x7b, 0x24, 0x34, 0x2d, 0x40, 0x18, 0x51
],
address: [
0xa6, 0x06, 0x42, 0xb8, 0xf3, 0xce, 0xdd, 0x92, 0xef, 0x94, 0x7f, 0x65, 0xbe, 0x00, 0x2f, 0xd7, 0x30, 0xcf, 0x34, 0xf8
],
external_ovk: [
0x33, 0xc3, 0x06, 0x12, 0xea, 0xb3, 0x7d, 0x94, 0xcd, 0x09, 0xdf, 0xb7, 0x16, 0x4e, 0x21, 0xc1, 0x30, 0x81, 0xf5, 0x7d, 0x12, 0x86, 0x12, 0x51, 0xd2, 0xe3, 0x0d, 0x96, 0x44, 0xea, 0xff, 0xa8
],
internal_ovk: [
0xf5, 0x44, 0x46, 0xd3, 0xa0, 0x93, 0x83, 0x41, 0x3d, 0x81, 0x5e, 0x40, 0xc5, 0x55, 0x1d, 0x9e, 0x69, 0xe0, 0xd6, 0xc1, 0xdc, 0x23, 0x25, 0x87, 0xf8, 0xc0, 0x6c, 0x4b, 0x7b, 0x2d, 0x1c, 0xe0
],
account: 7,
},
TestVector {
c: [
0x71, 0x9d, 0x7f, 0x24, 0xff, 0x97, 0x92, 0xb1, 0x9f, 0xba, 0xff, 0x6e, 0xad, 0xfc, 0x74, 0x45, 0x47, 0xc3, 0x7f, 0x43, 0xa4, 0x5c, 0x9d, 0xc3, 0x1e, 0x35, 0x7e, 0xf8, 0x7b, 0x7d, 0xde, 0x7c
],
pk: [
0x03, 0xc6, 0xd2, 0x7e, 0xc1, 0x86, 0x57, 0xee, 0xb8, 0x4d, 0x33, 0x21, 0x1b, 0x5c, 0xca, 0x15, 0xeb, 0x70, 0x64, 0x00, 0x45, 0x8d, 0x4e, 0xda, 0x9c, 0x03, 0xff, 0xe5, 0xfa, 0x25, 0xc9, 0x3e, 0x95
],
address: [
0xd8, 0xb3, 0xdb, 0x57, 0x49, 0x99, 0x17, 0xb8, 0x0f, 0xa9, 0x8c, 0x25, 0x51, 0x98, 0x5d, 0x68, 0x5a, 0xf0, 0x4f, 0xe5
],
external_ovk: [
0xeb, 0x28, 0x92, 0x3c, 0xde, 0x62, 0xe4, 0xba, 0xdd, 0xdf, 0x17, 0xae, 0x19, 0x6d, 0x5f, 0x9f, 0x82, 0xfe, 0x5a, 0x35, 0x30, 0x0d, 0xaf, 0xfb, 0x27, 0x83, 0xdf, 0xda, 0x72, 0x89, 0x73, 0x06
],
internal_ovk: [
0x0e, 0xee, 0xac, 0x7d, 0x5f, 0x1d, 0x19, 0xe1, 0xcf, 0xb9, 0xfc, 0xb1, 0x94, 0xa6, 0x82, 0xb2, 0xf9, 0x63, 0x7c, 0x51, 0xed, 0xe1, 0x1c, 0x9c, 0xd2, 0x7c, 0xba, 0x3c, 0x48, 0x06, 0xa9, 0x0d
],
account: 8,
},
TestVector {
c: [
0x12, 0x90, 0xd6, 0xd1, 0x93, 0x87, 0xd7, 0xed, 0xd5, 0x2a, 0x7f, 0xfa, 0xf3, 0xe1, 0x04, 0x73, 0x1f, 0x76, 0x95, 0xd0, 0x3b, 0x45, 0xce, 0xdc, 0xc2, 0x0f, 0x3d, 0x00, 0x2d, 0x5c, 0x29, 0x6d
],
pk: [
0x03, 0x44, 0xd2, 0xf1, 0xd0, 0xe0, 0x1b, 0x90, 0x70, 0xd2, 0x67, 0x95, 0x59, 0x9a, 0x6e, 0x57, 0x25, 0x41, 0xe0, 0x4d, 0x9e, 0x4b, 0xc2, 0x05, 0x42, 0x64, 0xcf, 0x31, 0x77, 0x20, 0x14, 0xd7, 0xfa
],
address: [
0x7e, 0xc0, 0x64, 0xac, 0xdf, 0x50, 0xe7, 0xa3, 0x04, 0xe3, 0xeb, 0x24, 0xa5, 0x9d, 0xd3, 0x7c, 0xf2, 0x01, 0x57, 0xae
],
external_ovk: [
0x83, 0x7e, 0x51, 0xe3, 0x18, 0x91, 0xc9, 0x42, 0xd3, 0x5c, 0x2b, 0x63, 0x15, 0x65, 0x62, 0xf5, 0x5c, 0xe7, 0x0a, 0x44, 0xc3, 0x65, 0xba, 0x1e, 0xcd, 0xe6, 0xd8, 0x9e, 0x39, 0x6e, 0x63, 0x3a
],
internal_ovk: [
0x8e, 0xd8, 0xca, 0xda, 0x07, 0x43, 0xc9, 0x1f, 0x97, 0x24, 0x45, 0x13, 0xf8, 0x79, 0x1d, 0x5a, 0x49, 0x70, 0x26, 0x3d, 0xb2, 0x53, 0xc6, 0x81, 0x88, 0x63, 0x3a, 0xb5, 0x9b, 0xd0, 0x15, 0x78
],
account: 9,
},
];

View File

@ -27,7 +27,7 @@
},
TestVector {
p2pkh_bytes: Some([
0xb3, 0x53, 0x42, 0x01, 0xcf, 0xb1, 0xcd, 0x8d, 0xbf, 0x69, 0xb8, 0x25, 0x0c, 0x18, 0xef, 0x41, 0x29, 0x4c, 0xa9, 0x79
0xa7, 0x5a, 0xa9, 0xe7, 0xd2, 0x8f, 0xd8, 0xc0, 0xcb, 0xc0, 0xf3, 0x9a, 0x9f, 0x5e, 0x43, 0xab, 0xbd, 0x40, 0x29, 0x79
]),
p2sh_bytes: None,
sapling_raw_addr: Some([
@ -37,7 +37,7 @@
0xce, 0xcb, 0xe5, 0xe6, 0x89, 0xa4, 0x53, 0xa3, 0xfe, 0x10, 0xcc, 0xf7, 0x61, 0x7e, 0x6c, 0x1f, 0xb3, 0x82, 0x81, 0x9d, 0x7f, 0xc9, 0x20, 0x0a, 0x1f, 0x42, 0x09, 0x2a, 0xc8, 0x4a, 0x30, 0x37, 0x8f, 0x8c, 0x1f, 0xb9, 0x0d, 0xff, 0x71, 0xa6, 0xd5, 0x04, 0x2d
]),
unified_addr: vec![
0x75, 0x31, 0x6e, 0x30, 0x65, 0x73, 0x63, 0x34, 0x6d, 0x77, 0x6d, 0x79, 0x74, 0x33, 0x6b, 0x6a, 0x77, 0x36, 0x67, 0x30, 0x6e, 0x7a, 0x7a, 0x70, 0x79, 0x61, 0x39, 0x77, 0x32, 0x68, 0x36, 0x6a, 0x37, 0x6b, 0x63, 0x68, 0x6d, 0x30, 0x66, 0x6c, 0x67, 0x67, 0x70, 0x78, 0x39, 0x6c, 0x67, 0x64, 0x71, 0x76, 0x32, 0x6b, 0x6d, 0x68, 0x6a, 0x39, 0x76, 0x61, 0x66, 0x34, 0x64, 0x6d, 0x68, 0x79, 0x7a, 0x39, 0x6e, 0x34, 0x33, 0x68, 0x6c, 0x73, 0x34, 0x6c, 0x65, 0x73, 0x77, 0x33, 0x73, 0x72, 0x76, 0x6c, 0x30, 0x38, 0x79, 0x71, 0x72, 0x6b, 0x33, 0x32, 0x6c, 0x38, 0x76, 0x61, 0x67, 0x30, 0x39, 0x79, 0x79, 0x67, 0x6c, 0x37, 0x61, 0x35, 0x70, 0x68, 0x37, 0x36, 0x79, 0x61, 0x67, 0x61, 0x63, 0x76, 0x30, 0x30, 0x68, 0x32, 0x33, 0x73, 0x39, 0x73, 0x33, 0x37, 0x34, 0x30, 0x6c, 0x75, 0x34, 0x78, 0x65, 0x6d, 0x61, 0x76, 0x70, 0x6e, 0x61, 0x30, 0x78, 0x79, 0x63, 0x74, 0x78, 0x7a, 0x35, 0x73, 0x75, 0x37, 0x37, 0x67, 0x79, 0x73, 0x32, 0x64, 0x63, 0x63, 0x76, 0x36, 0x6b, 0x63, 0x6e, 0x34, 0x36, 0x66, 0x33, 0x30, 0x77, 0x66, 0x6b, 0x38, 0x64, 0x79, 0x7a, 0x71, 0x71, 0x75, 0x6d, 0x6e, 0x7a, 0x72, 0x61, 0x33, 0x63, 0x73, 0x79, 0x63, 0x34, 0x77, 0x34, 0x6b, 0x66, 0x78, 0x75, 0x30, 0x6d, 0x71, 0x6a, 0x6b, 0x70, 0x72, 0x70, 0x66, 0x74, 0x70, 0x75, 0x64, 0x6b, 0x6e, 0x63, 0x65, 0x66, 0x61, 0x32
0x75, 0x31, 0x6a, 0x38, 0x37, 0x72, 0x75, 0x38, 0x79, 0x36, 0x6c, 0x34, 0x71, 0x64, 0x63, 0x6d, 0x77, 0x71, 0x35, 0x30, 0x72, 0x67, 0x67, 0x64, 0x6c, 0x34, 0x35, 0x68, 0x70, 0x73, 0x74, 0x74, 0x33, 0x33, 0x63, 0x65, 0x6e, 0x70, 0x74, 0x7a, 0x71, 0x74, 0x37, 0x71, 0x37, 0x6a, 0x61, 0x33, 0x71, 0x68, 0x6e, 0x72, 0x78, 0x64, 0x73, 0x65, 0x36, 0x66, 0x7a, 0x30, 0x34, 0x74, 0x6d, 0x70, 0x72, 0x74, 0x63, 0x38, 0x6d, 0x37, 0x6a, 0x39, 0x61, 0x34, 0x75, 0x75, 0x67, 0x79, 0x63, 0x70, 0x61, 0x63, 0x33, 0x6b, 0x78, 0x6e, 0x67, 0x6d, 0x66, 0x63, 0x79, 0x68, 0x67, 0x38, 0x66, 0x37, 0x79, 0x63, 0x65, 0x71, 0x36, 0x37, 0x7a, 0x67, 0x77, 0x72, 0x64, 0x36, 0x6e, 0x75, 0x6a, 0x30, 0x63, 0x7a, 0x6e, 0x63, 0x64, 0x70, 0x76, 0x39, 0x39, 0x30, 0x68, 0x38, 0x65, 0x38, 0x61, 0x38, 0x75, 0x61, 0x39, 0x61, 0x78, 0x77, 0x6e, 0x36, 0x6e, 0x77, 0x71, 0x78, 0x76, 0x30, 0x65, 0x65, 0x39, 0x63, 0x63, 0x6e, 0x79, 0x6a, 0x64, 0x75, 0x6c, 0x63, 0x6c, 0x37, 0x79, 0x39, 0x71, 0x61, 0x78, 0x32, 0x64, 0x75, 0x7a, 0x34, 0x71, 0x75, 0x36, 0x67, 0x74, 0x63, 0x67, 0x71, 0x35, 0x30, 0x33, 0x68, 0x73, 0x63, 0x74, 0x34, 0x67, 0x6d, 0x33, 0x7a, 0x68, 0x67, 0x76, 0x67, 0x67, 0x66, 0x79, 0x74, 0x6b, 0x73, 0x65, 0x33, 0x33, 0x6b, 0x75, 0x7a, 0x36, 0x6d, 0x33, 0x76, 0x36, 0x68, 0x30, 0x36, 0x67, 0x6b, 0x30
],
account: 1,
diversifier_index: 3,

View File

@ -25,7 +25,7 @@
},
TestVector {
t_key_bytes: Some([
0x18, 0xd9, 0x61, 0x4f, 0xc8, 0x20, 0x90, 0x5d, 0x04, 0x2b, 0xb1, 0xef, 0x9c, 0xa3, 0xf2, 0x49, 0x88, 0xc7, 0xb3, 0x53, 0x42, 0x01, 0xcf, 0xb1, 0xcd, 0x8d, 0xbf, 0x69, 0xb8, 0x25, 0x0c, 0x18, 0x02, 0x82, 0x03, 0x46, 0xfc, 0xec, 0x8e, 0xa1, 0x27, 0x6d, 0xb2, 0xe6, 0x15, 0xb8, 0xce, 0xd2, 0xfe, 0x4c, 0xf7, 0x46, 0x8c, 0x1e, 0xf4, 0x53, 0x14, 0x61, 0x95, 0xb4, 0xd7, 0xbc, 0x13, 0xa4, 0xdc
0x31, 0xca, 0x89, 0x77, 0x87, 0x8b, 0xe1, 0xc9, 0x33, 0x48, 0x7d, 0xf6, 0x0c, 0x37, 0x91, 0xa5, 0x5d, 0xe9, 0xa3, 0x22, 0xb8, 0xb4, 0x5a, 0xf0, 0xe4, 0x13, 0x05, 0x77, 0x08, 0x24, 0xb1, 0xc1, 0x03, 0x55, 0xf9, 0xbe, 0x45, 0x1e, 0x1b, 0x69, 0x88, 0xc4, 0xfa, 0xab, 0xd4, 0x03, 0x23, 0xc2, 0x9b, 0xa1, 0xce, 0x48, 0x8e, 0x5a, 0x87, 0xff, 0xe3, 0x5f, 0xaa, 0x47, 0x2d, 0x63, 0xd0, 0xd3, 0xf6
]),
sapling_fvk_bytes: Some([
0xd3, 0x95, 0x6a, 0xdb, 0x00, 0xda, 0x31, 0x2a, 0xc8, 0xc2, 0x53, 0xb0, 0xa1, 0xd4, 0x81, 0xb7, 0x25, 0x4a, 0x0d, 0x05, 0x61, 0x3d, 0xaf, 0x6d, 0x22, 0x43, 0x8c, 0x96, 0x6b, 0xb9, 0x79, 0x4e, 0x23, 0x3b, 0x04, 0x63, 0xe2, 0x23, 0x17, 0x61, 0x76, 0xa6, 0x8e, 0x53, 0x0c, 0xbe, 0xb4, 0x62, 0x09, 0xd4, 0x8b, 0xc6, 0x5c, 0x9f, 0x6d, 0x23, 0x4b, 0xec, 0x0e, 0x26, 0x72, 0x9c, 0xd1, 0xe3, 0x2a, 0x6b, 0xf1, 0x1b, 0x9c, 0x6f, 0x0e, 0x29, 0xde, 0x42, 0x56, 0x1c, 0xde, 0x1e, 0x99, 0x1b, 0xd5, 0xc0, 0x81, 0x32, 0x68, 0x48, 0xad, 0x9e, 0x86, 0xfa, 0xba, 0x40, 0x95, 0x0c, 0xb4, 0xea, 0xd0, 0xc1, 0x3a, 0x68, 0x31, 0x8b, 0x37, 0x62, 0xec, 0xe8, 0x90, 0x78, 0x2f, 0xcf, 0xdc, 0xb5, 0x7f, 0x9d, 0x85, 0x42, 0x9f, 0x31, 0x6e, 0xf2, 0x00, 0x3d, 0xf5, 0x64, 0xf1, 0x47, 0xb2, 0x8a
@ -34,13 +34,13 @@
unknown_fvk_typecode: 65530,
unknown_fvk_bytes: None,
unified_fvk: vec![
0x75, 0x76, 0x69, 0x65, 0x77, 0x31, 0x6b, 0x74, 0x6d, 0x35, 0x64, 0x38, 0x39, 0x61, 0x66, 0x6c, 0x63, 0x66, 0x7a, 0x35, 0x65, 0x76, 0x64, 0x30, 0x61, 0x32, 0x6e, 0x6d, 0x61, 0x39, 0x61, 0x34, 0x6a, 0x72, 0x70, 0x71, 0x71, 0x61, 0x37, 0x33, 0x37, 0x61, 0x6a, 0x75, 0x38, 0x6a, 0x70, 0x77, 0x6a, 0x79, 0x68, 0x63, 0x76, 0x38, 0x68, 0x63, 0x6a, 0x78, 0x75, 0x6e, 0x6b, 0x63, 0x68, 0x70, 0x35, 0x6c, 0x70, 0x72, 0x70, 0x71, 0x32, 0x6b, 0x6d, 0x79, 0x61, 0x66, 0x67, 0x34, 0x76, 0x6e, 0x35, 0x67, 0x75, 0x76, 0x6e, 0x6b, 0x32, 0x78, 0x74, 0x7a, 0x68, 0x37, 0x37, 0x36, 0x6b, 0x37, 0x61, 0x37, 0x79, 0x6e, 0x65, 0x6c, 0x34, 0x39, 0x77, 0x73, 0x66, 0x34, 0x67, 0x71, 0x68, 0x77, 0x61, 0x74, 0x6e, 0x72, 0x34, 0x70, 0x6c, 0x72, 0x7a, 0x63, 0x36, 0x66, 0x33, 0x35, 0x39, 0x32, 0x6d, 0x78, 0x71, 0x33, 0x67, 0x6d, 0x30, 0x64, 0x6a, 0x6d, 0x79, 0x6b, 0x61, 0x38, 0x71, 0x37, 0x79, 0x72, 0x6a, 0x64, 0x33, 0x74, 0x6d, 0x73, 0x73, 0x35, 0x66, 0x78, 0x6b, 0x6c, 0x73, 0x65, 0x70, 0x33, 0x78, 0x61, 0x71, 0x67, 0x66, 0x6b, 0x75, 0x6e, 0x33, 0x61, 0x72, 0x33, 0x66, 0x30, 0x6b, 0x66, 0x74, 0x39, 0x6e, 0x32, 0x36, 0x63, 0x74, 0x34, 0x38, 0x7a, 0x32, 0x32, 0x78, 0x6d, 0x75, 0x36, 0x70, 0x36, 0x6d, 0x71, 0x39, 0x74, 0x71, 0x35, 0x35, 0x39, 0x63, 0x78, 0x78, 0x6e, 0x71, 0x32, 0x6b, 0x61, 0x70, 0x66, 0x71, 0x76, 0x67, 0x75, 0x38, 0x6d, 0x34, 0x7a, 0x78, 0x78, 0x38, 0x70, 0x76, 0x66, 0x72, 0x30, 0x35, 0x38, 0x75, 0x39, 0x6e, 0x6d, 0x7a, 0x35, 0x77, 0x61, 0x7a, 0x6c, 0x75, 0x65, 0x67, 0x79, 0x32, 0x66, 0x65, 0x70, 0x75, 0x65, 0x63, 0x36, 0x34, 0x38, 0x34, 0x39, 0x70, 0x36, 0x77, 0x78, 0x79, 0x65, 0x74, 0x65, 0x6a, 0x32, 0x75, 0x6d, 0x67, 0x70, 0x74, 0x6b, 0x36, 0x64, 0x67, 0x6e, 0x78, 0x75, 0x39, 0x39, 0x7a, 0x67, 0x6d, 0x35, 0x71, 0x37, 0x61, 0x32, 0x70, 0x72, 0x6a, 0x6b, 0x61, 0x6b, 0x71, 0x7a, 0x35, 0x79, 0x72, 0x6b, 0x76, 0x38, 0x65, 0x35, 0x37, 0x77, 0x66, 0x66, 0x6a, 0x36, 0x6b, 0x78, 0x32, 0x71, 0x70, 0x74, 0x71, 0x70, 0x63, 0x77, 0x39, 0x6a, 0x68, 0x66, 0x38, 0x73, 0x6c, 0x66, 0x38, 0x63, 0x66, 0x66, 0x65, 0x76, 0x65, 0x32, 0x34, 0x30, 0x32, 0x71, 0x35, 0x6b, 0x75, 0x30, 0x75, 0x33, 0x32, 0x61, 0x63, 0x64, 0x72
0x75, 0x76, 0x69, 0x65, 0x77, 0x31, 0x61, 0x7a, 0x35, 0x33, 0x34, 0x34, 0x76, 0x6d, 0x64, 0x6b, 0x30, 0x64, 0x33, 0x61, 0x64, 0x72, 0x79, 0x65, 0x74, 0x78, 0x6e, 0x63, 0x70, 0x74, 0x78, 0x64, 0x33, 0x33, 0x75, 0x75, 0x6c, 0x66, 0x66, 0x35, 0x63, 0x71, 0x65, 0x77, 0x63, 0x73, 0x6c, 0x65, 0x70, 0x7a, 0x36, 0x64, 0x77, 0x65, 0x35, 0x70, 0x38, 0x34, 0x75, 0x72, 0x7a, 0x65, 0x30, 0x67, 0x61, 0x68, 0x68, 0x32, 0x61, 0x39, 0x6e, 0x66, 0x71, 0x37, 0x36, 0x76, 0x33, 0x7a, 0x68, 0x77, 0x74, 0x65, 0x70, 0x7a, 0x68, 0x32, 0x35, 0x61, 0x64, 0x6a, 0x75, 0x65, 0x78, 0x75, 0x63, 0x78, 0x34, 0x7a, 0x73, 0x66, 0x77, 0x35, 0x73, 0x75, 0x67, 0x77, 0x6d, 0x37, 0x6b, 0x66, 0x38, 0x30, 0x74, 0x70, 0x33, 0x68, 0x65, 0x77, 0x7a, 0x30, 0x66, 0x77, 0x30, 0x7a, 0x7a, 0x6e, 0x61, 0x6b, 0x78, 0x64, 0x6d, 0x70, 0x72, 0x76, 0x6a, 0x74, 0x6a, 0x6d, 0x37, 0x34, 0x38, 0x79, 0x75, 0x64, 0x6b, 0x7a, 0x6e, 0x78, 0x6c, 0x75, 0x6c, 0x36, 0x36, 0x6e, 0x67, 0x64, 0x35, 0x78, 0x6c, 0x6e, 0x35, 0x39, 0x68, 0x79, 0x72, 0x63, 0x30, 0x7a, 0x77, 0x70, 0x66, 0x78, 0x34, 0x6e, 0x6b, 0x64, 0x6b, 0x6b, 0x73, 0x34, 0x74, 0x73, 0x75, 0x72, 0x6d, 0x38, 0x38, 0x39, 0x37, 0x71, 0x36, 0x72, 0x79, 0x66, 0x72, 0x61, 0x39, 0x34, 0x63, 0x71, 0x79, 0x61, 0x34, 0x6b, 0x6e, 0x6e, 0x64, 0x64, 0x32, 0x74, 0x6b, 0x33, 0x73, 0x76, 0x6b, 0x67, 0x77, 0x77, 0x37, 0x37, 0x6e, 0x37, 0x76, 0x65, 0x71, 0x72, 0x63, 0x66, 0x66, 0x79, 0x65, 0x6a, 0x7a, 0x78, 0x76, 0x37, 0x32, 0x71, 0x6c, 0x77, 0x71, 0x77, 0x6e, 0x30, 0x73, 0x7a, 0x39, 0x35, 0x61, 0x39, 0x66, 0x78, 0x6e, 0x66, 0x70, 0x63, 0x72, 0x65, 0x38, 0x37, 0x7a, 0x63, 0x66, 0x68, 0x75, 0x67, 0x36, 0x77, 0x36, 0x6e, 0x71, 0x6e, 0x76, 0x30, 0x65, 0x63, 0x61, 0x64, 0x76, 0x6e, 0x38, 0x6c, 0x6c, 0x36, 0x6d, 0x72, 0x6e, 0x32, 0x64, 0x6a, 0x6b, 0x66, 0x78, 0x67, 0x6e, 0x34, 0x79, 0x64, 0x72, 0x63, 0x70, 0x6d, 0x73, 0x37, 0x61, 0x6b, 0x6a, 0x78, 0x34, 0x39, 0x34, 0x78, 0x36, 0x6b, 0x79, 0x6c, 0x6d, 0x30, 0x6d, 0x34, 0x72, 0x67, 0x35, 0x73, 0x61, 0x71, 0x6e, 0x75, 0x36, 0x33, 0x32, 0x30, 0x7a, 0x38, 0x39, 0x64, 0x6c, 0x6d, 0x34, 0x38, 0x74, 0x70, 0x73, 0x61, 0x75, 0x38, 0x7a, 0x65, 0x36, 0x39, 0x61, 0x7a, 0x67
],
account: 1,
},
TestVector {
t_key_bytes: Some([
0x25, 0x94, 0x6f, 0x62, 0xc2, 0xfa, 0x7b, 0x2f, 0xec, 0xbc, 0xb6, 0x4b, 0x69, 0x68, 0x91, 0x2a, 0x63, 0x81, 0xce, 0x3d, 0xc1, 0x66, 0xd5, 0x6a, 0x1d, 0x62, 0xf5, 0xa8, 0xd7, 0x55, 0x1d, 0xb5, 0x03, 0x06, 0x2c, 0xaf, 0x06, 0xc8, 0x96, 0x38, 0x77, 0x4b, 0x69, 0x8a, 0xaa, 0xfc, 0x8c, 0x83, 0x4f, 0xb2, 0x69, 0x6f, 0x70, 0xc3, 0xcd, 0xc7, 0x0f, 0x45, 0x28, 0xf4, 0xdd, 0xae, 0x53, 0xf9, 0xe1
0xdf, 0xd1, 0xfc, 0x19, 0x34, 0x09, 0xea, 0x55, 0x6b, 0xe8, 0x94, 0x96, 0x2d, 0xa2, 0xc4, 0x0e, 0xa9, 0x43, 0x32, 0x17, 0x23, 0x8a, 0x88, 0xc4, 0x6f, 0x5e, 0x4f, 0xac, 0xcf, 0x8a, 0xba, 0x00, 0x02, 0x82, 0x11, 0x5e, 0xff, 0xfd, 0xa4, 0x67, 0x6b, 0x29, 0x7a, 0xe8, 0xb7, 0xb3, 0x7b, 0xb4, 0xa5, 0xbf, 0xfb, 0x1d, 0xe2, 0xd6, 0x6e, 0x55, 0x82, 0x7f, 0xf7, 0x13, 0x55, 0xeb, 0xfd, 0xac, 0x49
]),
sapling_fvk_bytes: Some([
0x0f, 0xec, 0x4a, 0x45, 0x53, 0xbd, 0xe5, 0x63, 0x8f, 0xf9, 0x7a, 0xc2, 0x62, 0x63, 0x5d, 0xdc, 0xe4, 0xfd, 0x10, 0xe9, 0xb9, 0xee, 0xdb, 0x3b, 0xf2, 0xb6, 0x0a, 0x4c, 0xb0, 0x17, 0x30, 0xe1, 0x97, 0x1d, 0xb5, 0xd0, 0x92, 0x1a, 0x68, 0xa3, 0xe4, 0xd7, 0x83, 0x79, 0x07, 0x6f, 0x47, 0xfb, 0x26, 0x38, 0x8a, 0x87, 0x4a, 0x16, 0xc1, 0x4d, 0xd2, 0x1c, 0xac, 0xfc, 0x0f, 0x14, 0x47, 0x5e, 0x43, 0x81, 0xed, 0x27, 0xa5, 0x00, 0x2e, 0xa7, 0xa9, 0xc8, 0x73, 0x39, 0xd6, 0x6b, 0xa1, 0x46, 0x75, 0xe7, 0xf8, 0x06, 0xd9, 0x58, 0x0b, 0x2e, 0x71, 0xc4, 0xd1, 0x66, 0xc1, 0x52, 0x43, 0xa5, 0x7b, 0x2c, 0xe2, 0x9b, 0x1c, 0x44, 0x1f, 0xb6, 0x85, 0x34, 0xde, 0x04, 0x41, 0xe5, 0xd7, 0x5c, 0x2d, 0xa2, 0x46, 0x67, 0x37, 0x2d, 0x9a, 0xe6, 0xdb, 0x6c, 0xf6, 0x36, 0x93, 0xf4, 0x4d, 0x86
@ -53,7 +53,7 @@
0x1a, 0x03, 0x55, 0x87, 0xd5, 0xfb, 0x1a, 0x38, 0xe0, 0x1d, 0x94, 0x90, 0x3d, 0x3c, 0x3e, 0x0a, 0xd3, 0x36, 0x0c, 0x1d, 0x37, 0x10, 0xac, 0xd2, 0x0b, 0x18, 0x3e, 0x31, 0xd4, 0x9f, 0x25, 0xc9, 0xa1, 0x38, 0xf4, 0x9b, 0x1a, 0x53, 0x7e, 0xdc, 0xf0, 0x4b, 0xe3, 0x4a, 0x98, 0x51, 0xa7, 0xaf, 0x9d, 0xb6, 0x99, 0x0e, 0xd8, 0x3d, 0xd6, 0x4a, 0xf3, 0x59, 0x7c, 0x04, 0x32, 0x3e, 0xa5, 0x1b, 0x00, 0x52, 0xad, 0x80, 0x84, 0xa8, 0xb9, 0xda, 0x94, 0x8d, 0x32, 0x0d, 0xad, 0xd6, 0x4f, 0x54, 0x31, 0xe6, 0x1d, 0xdf, 0x65, 0x8d, 0x24, 0xae, 0x67, 0xc2, 0x2c, 0x8d, 0x13, 0x09, 0x13, 0x1f, 0xc0, 0x0f, 0xe7, 0xf2, 0x35, 0x73, 0x42, 0x76, 0xd3, 0x8d, 0x47, 0xf1, 0xe1, 0x91, 0xe0, 0x0c, 0x7a, 0x1d, 0x48, 0xaf, 0x04, 0x68, 0x27, 0x59, 0x1e, 0x97, 0x33, 0xa9, 0x7f, 0xa6, 0xb6, 0x79, 0xf3, 0xdc, 0x60, 0x1d, 0x00, 0x82, 0x85, 0xed, 0xcb, 0xda, 0xe6, 0x9c, 0xe8, 0xfc, 0x1b, 0xe4, 0xaa, 0xc0, 0x0f, 0xf2, 0x71, 0x1e, 0xbd, 0x93, 0x1d, 0xe5, 0x18, 0x85, 0x68, 0x78, 0xf7, 0x34, 0x76
]),
unified_fvk: vec![
0x75, 0x76, 0x69, 0x65, 0x77, 0x31, 0x30, 0x71, 0x65, 0x7a, 0x63, 0x6b, 0x63, 0x64, 0x66, 0x67, 0x74, 0x68, 0x39, 0x35, 0x70, 0x71, 0x70, 0x76, 0x73, 0x64, 0x77, 0x35, 0x63, 0x73, 0x37, 0x68, 0x39, 0x34, 0x78, 0x63, 0x30, 0x36, 0x34, 0x65, 0x65, 0x76, 0x76, 0x39, 0x32, 0x36, 0x72, 0x64, 0x71, 0x34, 0x39, 0x33, 0x37, 0x73, 0x67, 0x78, 0x76, 0x77, 0x34, 0x78, 0x68, 0x77, 0x70, 0x79, 0x73, 0x34, 0x70, 0x33, 0x68, 0x37, 0x66, 0x38, 0x75, 0x34, 0x6d, 0x68, 0x35, 0x35, 0x79, 0x79, 0x6b, 0x37, 0x6d, 0x33, 0x7a, 0x6d, 0x68, 0x73, 0x76, 0x6d, 0x78, 0x33, 0x76, 0x61, 0x66, 0x68, 0x77, 0x39, 0x34, 0x37, 0x6e, 0x35, 0x6a, 0x68, 0x61, 0x33, 0x6b, 0x70, 0x6c, 0x63, 0x34, 0x79, 0x74, 0x65, 0x61, 0x61, 0x33, 0x37, 0x75, 0x39, 0x76, 0x64, 0x36, 0x71, 0x38, 0x33, 0x64, 0x72, 0x77, 0x75, 0x6d, 0x70, 0x32, 0x6d, 0x63, 0x39, 0x32, 0x79, 0x78, 0x74, 0x6b, 0x71, 0x71, 0x68, 0x78, 0x37, 0x36, 0x39, 0x64, 0x75, 0x63, 0x73, 0x7a, 0x77, 0x30, 0x68, 0x63, 0x6a, 0x39, 0x33, 0x73, 0x76, 0x64, 0x63, 0x36, 0x6b, 0x76, 0x64, 0x72, 0x6c, 0x71, 0x64, 0x6e, 0x67, 0x34, 0x7a, 0x6c, 0x37, 0x79, 0x7a, 0x74, 0x76, 0x73, 0x64, 0x7a, 0x76, 0x77, 0x30, 0x75, 0x6a, 0x37, 0x67, 0x34, 0x36, 0x75, 0x38, 0x39, 0x66, 0x7a, 0x64, 0x73, 0x37, 0x6a, 0x72, 0x33, 0x73, 0x77, 0x6b, 0x75, 0x35, 0x39, 0x6e, 0x66, 0x33, 0x64, 0x6d, 0x71, 0x76, 0x39, 0x73, 0x61, 0x73, 0x68, 0x34, 0x6c, 0x77, 0x74, 0x76, 0x6e, 0x38, 0x71, 0x73, 0x7a, 0x30, 0x38, 0x66, 0x34, 0x7a, 0x72, 0x6e, 0x61, 0x68, 0x61, 0x34, 0x36, 0x73, 0x6c, 0x73, 0x38, 0x74, 0x73, 0x6d, 0x6b, 0x74, 0x32, 0x66, 0x68, 0x32, 0x38, 0x6a, 0x75, 0x77, 0x70, 0x75, 0x77, 0x36, 0x6a, 0x33, 0x65, 0x37, 0x34, 0x73, 0x67, 0x30, 0x75, 0x38, 0x63, 0x70, 0x33, 0x6d, 0x38, 0x76, 0x78, 0x67, 0x63, 0x33, 0x61, 0x6b, 0x63, 0x6a, 0x65, 0x65, 0x6b, 0x6b, 0x33, 0x77, 0x68, 0x70, 0x71, 0x37, 0x33, 0x67, 0x6b, 0x67, 0x65, 0x78, 0x68, 0x38, 0x76, 0x76, 0x32, 0x30, 0x33, 0x61, 0x34, 0x32, 0x6e, 0x65, 0x67, 0x76, 0x37, 0x6a, 0x64, 0x36, 0x66, 0x32, 0x6d, 0x34, 0x73, 0x38, 0x63, 0x76, 0x6c, 0x7a, 0x39, 0x6e, 0x32, 0x75, 0x61, 0x61, 0x32, 0x36, 0x63, 0x6b, 0x75, 0x63, 0x37, 0x73, 0x30, 0x67, 0x70, 0x34, 0x6e, 0x64, 0x36, 0x6b, 0x6e, 0x6e, 0x75, 0x67, 0x71, 0x67, 0x6b, 0x71, 0x39, 0x68, 0x30, 0x39, 0x65, 0x79, 0x75, 0x76, 0x67, 0x38, 0x76, 0x67, 0x37, 0x75, 0x71, 0x6a, 0x70, 0x37, 0x39, 0x72, 0x34, 0x39, 0x30, 0x65, 0x35, 0x63, 0x71, 0x39, 0x67, 0x74, 0x38, 0x35, 0x37, 0x6d, 0x6b, 0x35, 0x75, 0x36, 0x67, 0x37, 0x68, 0x37, 0x61, 0x78, 0x66, 0x34, 0x71, 0x79, 0x72, 0x64, 0x32, 0x73, 0x38, 0x63, 0x39, 0x6a, 0x67, 0x36, 0x79, 0x74, 0x7a, 0x73, 0x64, 0x71, 0x77, 0x36, 0x70, 0x30, 0x72, 0x77, 0x38, 0x70, 0x38, 0x30, 0x71, 0x35, 0x32, 0x68, 0x74, 0x74, 0x6e, 0x6b, 0x33, 0x61, 0x68, 0x68, 0x68, 0x38, 0x63, 0x74, 0x77, 0x64, 0x6a, 0x66, 0x6c, 0x7a, 0x63, 0x6d, 0x68, 0x6c, 0x71, 0x68, 0x75, 0x66, 0x30, 0x36, 0x75, 0x68, 0x6d, 0x75, 0x6c, 0x76, 0x6b, 0x75, 0x71, 0x6b, 0x39, 0x75, 0x36, 0x75, 0x75, 0x6b, 0x68, 0x33, 0x30, 0x72, 0x33, 0x72, 0x35, 0x30, 0x73, 0x6d, 0x70, 0x67, 0x78, 0x35, 0x65, 0x67, 0x6e, 0x79, 0x76, 0x37, 0x6d, 0x35, 0x36, 0x63, 0x68, 0x7a, 0x6c, 0x6a, 0x67, 0x76, 0x79, 0x71, 0x66, 0x30, 0x65, 0x77, 0x6e, 0x6c, 0x39, 0x36, 0x38, 0x77, 0x79, 0x74, 0x77, 0x38, 0x76, 0x71, 0x37, 0x33, 0x6b, 0x61, 0x7a, 0x39, 0x79, 0x35, 0x6d, 0x66, 0x6a, 0x38, 0x33, 0x65, 0x32, 0x39, 0x72, 0x38, 0x61, 0x64, 0x6a, 0x6a, 0x33, 0x35, 0x33, 0x33, 0x6d, 0x65, 0x74, 0x72, 0x71, 0x71, 0x38, 0x6d, 0x32, 0x38, 0x79, 0x79, 0x30, 0x36, 0x63, 0x76, 0x79, 0x66, 0x76, 0x76, 0x6b, 0x32, 0x74, 0x6a, 0x66, 0x78, 0x6b, 0x65, 0x78, 0x66, 0x70, 0x6b, 0x73, 0x6a, 0x38, 0x30, 0x63, 0x37, 0x77, 0x73, 0x6e, 0x75, 0x6d, 0x71, 0x68, 0x74, 0x76, 0x34, 0x70, 0x75, 0x6b, 0x76, 0x6b, 0x37, 0x38, 0x61, 0x74, 0x70, 0x66, 0x72, 0x32, 0x77, 0x71, 0x6a, 0x34, 0x63, 0x75, 0x65, 0x74, 0x77, 0x7a, 0x34, 0x68, 0x6e, 0x33, 0x6e, 0x75, 0x38, 0x64, 0x75, 0x67, 0x68, 0x63, 0x77, 0x67, 0x35, 0x76, 0x6c, 0x67, 0x68, 0x73, 0x6e, 0x33, 0x73, 0x77, 0x72, 0x39, 0x32, 0x35, 0x74, 0x70, 0x66, 0x75, 0x67, 0x66, 0x65, 0x6c, 0x30, 0x63, 0x61, 0x74, 0x68, 0x6e, 0x61, 0x6a, 0x63, 0x35, 0x77, 0x6a, 0x6c, 0x6a, 0x67, 0x68, 0x36, 0x6a, 0x7a, 0x6d, 0x71, 0x36, 0x74, 0x77, 0x6c, 0x72, 0x7a, 0x6e, 0x33, 0x6a, 0x6b, 0x7a, 0x72, 0x6c, 0x68, 0x35, 0x30, 0x6b, 0x75, 0x64, 0x37, 0x61, 0x72, 0x64, 0x64, 0x36, 0x6c, 0x35, 0x72, 0x74, 0x64, 0x32, 0x33, 0x39, 0x72, 0x33, 0x76, 0x35, 0x6e, 0x64, 0x37, 0x63, 0x68, 0x33, 0x6e, 0x6d, 0x39, 0x6d, 0x75, 0x30, 0x6e, 0x36, 0x72, 0x77, 0x35, 0x7a, 0x67, 0x6a, 0x74, 0x71, 0x32, 0x35, 0x6d, 0x78, 0x6b, 0x68, 0x64, 0x34, 0x6a, 0x6d, 0x6d, 0x7a, 0x37, 0x39, 0x75, 0x32, 0x34, 0x74, 0x6e, 0x74, 0x63, 0x33, 0x7a, 0x67, 0x73, 0x32, 0x6b
0x75, 0x76, 0x69, 0x65, 0x77, 0x31, 0x63, 0x76, 0x74, 0x6c, 0x70, 0x78, 0x32, 0x75, 0x71, 0x33, 0x6a, 0x73, 0x76, 0x63, 0x32, 0x64, 0x6e, 0x34, 0x6e, 0x39, 0x61, 0x79, 0x65, 0x6d, 0x65, 0x7a, 0x64, 0x70, 0x65, 0x76, 0x30, 0x79, 0x6c, 0x7a, 0x38, 0x6e, 0x38, 0x77, 0x71, 0x71, 0x32, 0x6b, 0x35, 0x36, 0x6b, 0x71, 0x78, 0x36, 0x68, 0x6c, 0x74, 0x63, 0x65, 0x66, 0x77, 0x73, 0x67, 0x36, 0x61, 0x79, 0x73, 0x30, 0x73, 0x7a, 0x73, 0x34, 0x61, 0x6e, 0x6a, 0x76, 0x65, 0x67, 0x72, 0x6a, 0x67, 0x30, 0x70, 0x73, 0x67, 0x6e, 0x67, 0x33, 0x73, 0x6b, 0x6e, 0x36, 0x73, 0x68, 0x66, 0x65, 0x71, 0x66, 0x6b, 0x33, 0x73, 0x34, 0x30, 0x77, 0x61, 0x37, 0x6b, 0x38, 0x61, 0x63, 0x70, 0x64, 0x6a, 0x6b, 0x6d, 0x37, 0x39, 0x36, 0x6e, 0x66, 0x70, 0x79, 0x37, 0x34, 0x68, 0x6e, 0x78, 0x6c, 0x38, 0x6e, 0x6c, 0x33, 0x78, 0x71, 0x7a, 0x67, 0x64, 0x72, 0x63, 0x6d, 0x78, 0x34, 0x72, 0x65, 0x65, 0x30, 0x63, 0x70, 0x66, 0x66, 0x67, 0x78, 0x63, 0x77, 0x35, 0x6a, 0x71, 0x7a, 0x73, 0x6a, 0x34, 0x63, 0x78, 0x65, 0x6b, 0x71, 0x6a, 0x63, 0x64, 0x63, 0x6c, 0x75, 0x6c, 0x6b, 0x30, 0x6c, 0x39, 0x74, 0x32, 0x70, 0x77, 0x67, 0x6e, 0x68, 0x61, 0x61, 0x7a, 0x32, 0x6d, 0x66, 0x36, 0x61, 0x63, 0x30, 0x77, 0x66, 0x74, 0x64, 0x65, 0x39, 0x63, 0x79, 0x38, 0x38, 0x36, 0x75, 0x61, 0x6a, 0x6d, 0x64, 0x35, 0x63, 0x73, 0x78, 0x38, 0x6a, 0x39, 0x78, 0x65, 0x79, 0x67, 0x79, 0x7a, 0x35, 0x6a, 0x6e, 0x72, 0x6c, 0x64, 0x71, 0x77, 0x36, 0x70, 0x72, 0x39, 0x6c, 0x78, 0x36, 0x63, 0x73, 0x36, 0x6a, 0x6c, 0x6a, 0x30, 0x7a, 0x6e, 0x64, 0x79, 0x66, 0x66, 0x64, 0x39, 0x6c, 0x77, 0x74, 0x79, 0x65, 0x30, 0x7a, 0x38, 0x39, 0x33, 0x36, 0x73, 0x6e, 0x35, 0x35, 0x61, 0x68, 0x63, 0x67, 0x6a, 0x79, 0x70, 0x75, 0x35, 0x34, 0x68, 0x7a, 0x30, 0x33, 0x39, 0x61, 0x6a, 0x61, 0x75, 0x6a, 0x6b, 0x37, 0x73, 0x32, 0x35, 0x73, 0x63, 0x61, 0x75, 0x64, 0x6a, 0x61, 0x76, 0x73, 0x30, 0x32, 0x76, 0x34, 0x71, 0x76, 0x77, 0x6e, 0x6e, 0x6c, 0x6a, 0x6b, 0x6a, 0x38, 0x66, 0x33, 0x6c, 0x72, 0x30, 0x70, 0x71, 0x70, 0x34, 0x64, 0x66, 0x70, 0x73, 0x75, 0x71, 0x34, 0x71, 0x79, 0x30, 0x39, 0x66, 0x64, 0x63, 0x35, 0x72, 0x73, 0x37, 0x65, 0x36, 0x76, 0x76, 0x32, 0x32, 0x71, 0x6d, 0x78, 0x77, 0x78, 0x71, 0x77, 0x74, 0x35, 0x73, 0x35, 0x76, 0x6c, 0x30, 0x64, 0x6e, 0x76, 0x38, 0x33, 0x65, 0x75, 0x37, 0x33, 0x79, 0x38, 0x66, 0x72, 0x70, 0x72, 0x70, 0x65, 0x64, 0x38, 0x30, 0x68, 0x6c, 0x6d, 0x75, 0x33, 0x74, 0x35, 0x39, 0x61, 0x30, 0x6a, 0x6e, 0x78, 0x76, 0x6b, 0x78, 0x32, 0x79, 0x68, 0x35, 0x64, 0x70, 0x68, 0x71, 0x64, 0x76, 0x6e, 0x68, 0x7a, 0x35, 0x74, 0x74, 0x68, 0x7a, 0x6a, 0x61, 0x38, 0x77, 0x6b, 0x34, 0x36, 0x64, 0x6b, 0x7a, 0x6b, 0x6e, 0x37, 0x67, 0x35, 0x6a, 0x39, 0x79, 0x67, 0x61, 0x39, 0x38, 0x79, 0x71, 0x37, 0x78, 0x30, 0x61, 0x73, 0x73, 0x61, 0x76, 0x65, 0x78, 0x38, 0x67, 0x30, 0x6b, 0x70, 0x76, 0x75, 0x6e, 0x67, 0x37, 0x70, 0x71, 0x33, 0x63, 0x6e, 0x6c, 0x33, 0x66, 0x61, 0x7a, 0x33, 0x32, 0x32, 0x66, 0x76, 0x66, 0x7a, 0x6e, 0x77, 0x39, 0x65, 0x6b, 0x73, 0x32, 0x74, 0x65, 0x79, 0x66, 0x64, 0x75, 0x36, 0x78, 0x73, 0x77, 0x72, 0x6a, 0x66, 0x74, 0x76, 0x78, 0x32, 0x33, 0x76, 0x65, 0x35, 0x66, 0x6b, 0x79, 0x71, 0x34, 0x75, 0x34, 0x67, 0x6e, 0x35, 0x73, 0x64, 0x36, 0x6c, 0x34, 0x70, 0x67, 0x6d, 0x6e, 0x75, 0x79, 0x64, 0x61, 0x70, 0x66, 0x37, 0x78, 0x76, 0x33, 0x73, 0x71, 0x75, 0x36, 0x32, 0x6a, 0x64, 0x37, 0x6d, 0x66, 0x67, 0x66, 0x32, 0x6a, 0x73, 0x38, 0x63, 0x7a, 0x68, 0x77, 0x30, 0x74, 0x6c, 0x64, 0x32, 0x64, 0x61, 0x7a, 0x7a, 0x79, 0x77, 0x72, 0x79, 0x74, 0x66, 0x78, 0x67, 0x65, 0x71, 0x6c, 0x7a, 0x66, 0x63, 0x35, 0x61, 0x36, 0x77, 0x72, 0x71, 0x32, 0x34, 0x38, 0x77, 0x30, 0x78, 0x32, 0x32, 0x78, 0x6b, 0x77, 0x36, 0x71, 0x70, 0x38, 0x36, 0x38, 0x67, 0x78, 0x35, 0x71, 0x77, 0x65, 0x35, 0x70, 0x78, 0x73, 0x64, 0x64, 0x37, 0x64, 0x39, 0x75, 0x66, 0x36, 0x74, 0x73, 0x32, 0x63, 0x6e, 0x32, 0x6e, 0x75, 0x30, 0x38, 0x76, 0x78, 0x68, 0x68, 0x75, 0x77, 0x66, 0x64, 0x76, 0x34, 0x6b, 0x6c, 0x77, 0x65, 0x37, 0x7a, 0x68, 0x6c, 0x34, 0x6d, 0x64, 0x39, 0x65, 0x32, 0x67, 0x71, 0x72, 0x32, 0x6a, 0x7a, 0x64, 0x63, 0x37, 0x7a, 0x6e, 0x38, 0x68, 0x75, 0x67, 0x64, 0x37, 0x33, 0x75, 0x36, 0x6d, 0x33, 0x37, 0x6c, 0x7a, 0x39, 0x35, 0x78, 0x67, 0x70, 0x30, 0x70, 0x39, 0x76, 0x73, 0x76, 0x74, 0x34, 0x74, 0x67, 0x38, 0x76, 0x63, 0x70, 0x63, 0x75, 0x72, 0x35, 0x36, 0x32, 0x67, 0x6a, 0x37, 0x34, 0x61, 0x70, 0x6a, 0x68, 0x38, 0x7a, 0x65, 0x6e, 0x37, 0x70, 0x79, 0x61, 0x73, 0x72, 0x72, 0x67, 0x6c, 0x34, 0x30, 0x7a, 0x6b, 0x6b, 0x79, 0x67, 0x76, 0x72, 0x68, 0x66, 0x30, 0x72, 0x72, 0x6a, 0x71, 0x68, 0x35, 0x77, 0x37, 0x79, 0x38, 0x66, 0x68, 0x39, 0x67, 0x37, 0x33, 0x72, 0x79, 0x65, 0x67, 0x6a, 0x64, 0x67, 0x70, 0x63, 0x32, 0x77, 0x77, 0x35, 0x73, 0x68, 0x75, 0x73, 0x72, 0x37, 0x77, 0x6b, 0x74
],
account: 2,
},
@ -143,7 +143,7 @@
},
TestVector {
t_key_bytes: Some([
0x12, 0xb5, 0x6d, 0xa9, 0xc3, 0x82, 0x85, 0x7d, 0xee, 0xcc, 0x40, 0xa9, 0x8d, 0x5f, 0x29, 0x35, 0x39, 0x5e, 0xe4, 0x76, 0x2d, 0xd2, 0x1a, 0xfd, 0xbb, 0x5d, 0x47, 0xfa, 0x9a, 0x6d, 0xd9, 0x84, 0x03, 0x9b, 0x50, 0xa1, 0x22, 0xf2, 0x6e, 0xde, 0x2e, 0x13, 0xff, 0x63, 0xb1, 0x30, 0xc9, 0x0f, 0x4c, 0x0f, 0x95, 0x1a, 0xe8, 0xa8, 0x1d, 0xdc, 0x1a, 0x4c, 0x98, 0x77, 0x54, 0xf1, 0x44, 0xc5, 0x36
0x12, 0x90, 0xd6, 0xd1, 0x93, 0x87, 0xd7, 0xed, 0xd5, 0x2a, 0x7f, 0xfa, 0xf3, 0xe1, 0x04, 0x73, 0x1f, 0x76, 0x95, 0xd0, 0x3b, 0x45, 0xce, 0xdc, 0xc2, 0x0f, 0x3d, 0x00, 0x2d, 0x5c, 0x29, 0x6d, 0x03, 0x44, 0xd2, 0xf1, 0xd0, 0xe0, 0x1b, 0x90, 0x70, 0xd2, 0x67, 0x95, 0x59, 0x9a, 0x6e, 0x57, 0x25, 0x41, 0xe0, 0x4d, 0x9e, 0x4b, 0xc2, 0x05, 0x42, 0x64, 0xcf, 0x31, 0x77, 0x20, 0x14, 0xd7, 0xfa
]),
sapling_fvk_bytes: Some([
0x65, 0xae, 0xee, 0x89, 0xce, 0x97, 0x11, 0x99, 0x48, 0x7a, 0xc9, 0x59, 0xc2, 0x96, 0x0c, 0xee, 0x07, 0x47, 0x7b, 0xad, 0x7d, 0x07, 0xa4, 0xc7, 0x1a, 0x36, 0x38, 0x94, 0xd6, 0x71, 0xed, 0xc7, 0x09, 0x02, 0x13, 0xb1, 0xb2, 0x5d, 0x74, 0xd9, 0xd0, 0x7c, 0xbe, 0x5b, 0x50, 0x34, 0x24, 0x8b, 0xad, 0x5b, 0xc5, 0x39, 0x49, 0x72, 0xc8, 0x53, 0x2e, 0xa2, 0x4b, 0x3f, 0x38, 0x87, 0xf9, 0xe6, 0xd3, 0x12, 0xca, 0x8e, 0xd2, 0x44, 0xaf, 0x57, 0xce, 0x04, 0x12, 0x20, 0x9b, 0xa3, 0xd5, 0x37, 0xbc, 0xac, 0x08, 0xbf, 0x7f, 0x64, 0x74, 0x41, 0x00, 0xda, 0xfa, 0xc5, 0x5f, 0xb2, 0x56, 0x29, 0x20, 0x4f, 0x19, 0xa1, 0x23, 0xbd, 0xbb, 0xba, 0x71, 0x59, 0x51, 0x0e, 0x52, 0x37, 0x69, 0x38, 0xfb, 0x89, 0x3e, 0xbd, 0xad, 0xde, 0x04, 0xd5, 0xf0, 0x64, 0x6a, 0x3a, 0xd0, 0xf4, 0xcb, 0xc6
@ -154,7 +154,7 @@
unknown_fvk_typecode: 65534,
unknown_fvk_bytes: None,
unified_fvk: vec![
0x75, 0x76, 0x69, 0x65, 0x77, 0x31, 0x71, 0x6e, 0x35, 0x73, 0x79, 0x75, 0x77, 0x35, 0x35, 0x75, 0x33, 0x6c, 0x34, 0x79, 0x78, 0x6b, 0x39, 0x7a, 0x79, 0x70, 0x63, 0x30, 0x6e, 0x65, 0x73, 0x6c, 0x78, 0x79, 0x32, 0x36, 0x75, 0x34, 0x30, 0x67, 0x6e, 0x6e, 0x63, 0x6a, 0x63, 0x6d, 0x61, 0x74, 0x34, 0x38, 0x78, 0x33, 0x77, 0x79, 0x39, 0x34, 0x70, 0x70, 0x73, 0x6a, 0x39, 0x34, 0x36, 0x6d, 0x67, 0x71, 0x32, 0x6a, 0x77, 0x76, 0x32, 0x6b, 0x66, 0x38, 0x63, 0x39, 0x68, 0x79, 0x33, 0x39, 0x73, 0x68, 0x68, 0x33, 0x65, 0x79, 0x6b, 0x37, 0x76, 0x75, 0x73, 0x34, 0x38, 0x72, 0x76, 0x70, 0x39, 0x7a, 0x6d, 0x66, 0x78, 0x67, 0x34, 0x78, 0x65, 0x63, 0x76, 0x65, 0x70, 0x6e, 0x6d, 0x71, 0x6c, 0x6c, 0x6c, 0x71, 0x74, 0x32, 0x32, 0x65, 0x77, 0x36, 0x68, 0x30, 0x6b, 0x77, 0x61, 0x39, 0x70, 0x36, 0x65, 0x6b, 0x63, 0x38, 0x74, 0x72, 0x6b, 0x64, 0x75, 0x73, 0x6c, 0x78, 0x7a, 0x35, 0x73, 0x75, 0x68, 0x33, 0x67, 0x38, 0x30, 0x78, 0x67, 0x7a, 0x6c, 0x38, 0x33, 0x37, 0x66, 0x66, 0x32, 0x79, 0x78, 0x35, 0x76, 0x38, 0x67, 0x72, 0x35, 0x38, 0x66, 0x30, 0x32, 0x76, 0x76, 0x67, 0x77, 0x75, 0x30, 0x39, 0x7a, 0x34, 0x6a, 0x6d, 0x6a, 0x6a, 0x73, 0x79, 0x6c, 0x36, 0x32, 0x78, 0x32, 0x6b, 0x72, 0x6c, 0x35, 0x79, 0x67, 0x79, 0x6e, 0x76, 0x6a, 0x6c, 0x71, 0x70, 0x38, 0x7a, 0x68, 0x77, 0x37, 0x6e, 0x71, 0x68, 0x74, 0x75, 0x74, 0x61, 0x72, 0x6a, 0x63, 0x74, 0x39, 0x6a, 0x73, 0x6b, 0x78, 0x79, 0x30, 0x7a, 0x6c, 0x37, 0x71, 0x33, 0x7a, 0x70, 0x79, 0x6d, 0x38, 0x72, 0x36, 0x7a, 0x71, 0x37, 0x65, 0x74, 0x34, 0x74, 0x30, 0x38, 0x64, 0x6b, 0x63, 0x32, 0x63, 0x7a, 0x74, 0x71, 0x33, 0x6c, 0x67, 0x73, 0x30, 0x78, 0x6a, 0x6c, 0x79, 0x6a, 0x72, 0x66, 0x72, 0x76, 0x70, 0x35, 0x66, 0x64, 0x72, 0x6d, 0x6e, 0x74, 0x67, 0x75, 0x63, 0x73, 0x37, 0x68, 0x30, 0x64, 0x6b, 0x78, 0x38, 0x34, 0x37, 0x70, 0x70, 0x65, 0x38, 0x67, 0x7a, 0x6e, 0x39, 0x64, 0x32, 0x32, 0x78, 0x33, 0x79, 0x66, 0x77, 0x67, 0x66, 0x32, 0x77, 0x78, 0x70, 0x32, 0x73, 0x6e, 0x65, 0x7a, 0x6b, 0x66, 0x35, 0x38, 0x6e, 0x6b, 0x35, 0x6d, 0x72, 0x75, 0x36, 0x73, 0x65, 0x65, 0x6d, 0x71, 0x35, 0x61, 0x6c, 0x39, 0x73, 0x74, 0x6b, 0x75, 0x64, 0x78, 0x36, 0x38, 0x30, 0x39, 0x70, 0x75, 0x37, 0x66, 0x74, 0x63, 0x37, 0x75, 0x72, 0x39, 0x34, 0x72, 0x7a, 0x30, 0x71, 0x65, 0x71, 0x7a, 0x76, 0x33, 0x6e, 0x64, 0x6c, 0x33, 0x73, 0x6b, 0x64, 0x39, 0x6c, 0x6d, 0x65, 0x65, 0x74, 0x70, 0x66, 0x79, 0x32, 0x61, 0x6d, 0x36, 0x64, 0x66, 0x6e, 0x6b, 0x6c, 0x77, 0x65, 0x61, 0x65, 0x73, 0x63, 0x63, 0x63, 0x33, 0x33, 0x61, 0x39, 0x61, 0x63, 0x67, 0x30, 0x30, 0x70, 0x7a, 0x32, 0x32, 0x32, 0x74, 0x37, 0x77, 0x74, 0x35, 0x77, 0x75, 0x32, 0x30, 0x64, 0x64, 0x6a, 0x68, 0x74, 0x65, 0x79, 0x77, 0x7a, 0x76, 0x76, 0x6b, 0x35, 0x67, 0x72, 0x38, 0x35, 0x71, 0x33, 0x64, 0x34, 0x65, 0x76, 0x65, 0x76, 0x72, 0x38, 0x70, 0x38, 0x78, 0x6d, 0x33, 0x77, 0x38, 0x6d, 0x70, 0x75, 0x78, 0x61, 0x39, 0x76, 0x34, 0x70, 0x33, 0x33, 0x79, 0x79, 0x63, 0x73, 0x33, 0x76, 0x7a, 0x32, 0x33, 0x78, 0x76, 0x77, 0x73, 0x6d, 0x39, 0x72, 0x6d, 0x67, 0x6c, 0x39, 0x37, 0x7a, 0x34, 0x77, 0x30, 0x64, 0x32, 0x79, 0x65, 0x64, 0x35, 0x79, 0x63, 0x75, 0x35, 0x37, 0x72, 0x73, 0x36
0x75, 0x76, 0x69, 0x65, 0x77, 0x31, 0x63, 0x79, 0x6c, 0x67, 0x7a, 0x66, 0x6c, 0x70, 0x72, 0x76, 0x73, 0x34, 0x36, 0x6a, 0x67, 0x6c, 0x68, 0x74, 0x6b, 0x70, 0x65, 0x6b, 0x74, 0x39, 0x38, 0x61, 0x77, 0x78, 0x72, 0x70, 0x39, 0x7a, 0x30, 0x64, 0x71, 0x76, 0x68, 0x6e, 0x63, 0x36, 0x63, 0x75, 0x63, 0x76, 0x6e, 0x37, 0x66, 0x6c, 0x77, 0x72, 0x61, 0x66, 0x38, 0x74, 0x74, 0x71, 0x66, 0x6d, 0x36, 0x67, 0x33, 0x38, 0x75, 0x30, 0x75, 0x61, 0x33, 0x6a, 0x63, 0x6d, 0x6b, 0x71, 0x39, 0x72, 0x33, 0x33, 0x71, 0x6a, 0x67, 0x67, 0x74, 0x64, 0x67, 0x63, 0x32, 0x63, 0x71, 0x39, 0x6e, 0x74, 0x73, 0x6c, 0x38, 0x33, 0x7a, 0x6c, 0x39, 0x71, 0x72, 0x6d, 0x6a, 0x34, 0x68, 0x30, 0x65, 0x6c, 0x73, 0x65, 0x70, 0x6c, 0x66, 0x36, 0x78, 0x78, 0x77, 0x74, 0x74, 0x70, 0x6c, 0x77, 0x68, 0x36, 0x71, 0x74, 0x6d, 0x7a, 0x71, 0x38, 0x7a, 0x70, 0x61, 0x34, 0x34, 0x64, 0x63, 0x72, 0x73, 0x6c, 0x73, 0x6c, 0x76, 0x68, 0x75, 0x72, 0x61, 0x75, 0x6c, 0x78, 0x68, 0x6e, 0x77, 0x66, 0x6c, 0x76, 0x35, 0x36, 0x34, 0x61, 0x70, 0x68, 0x79, 0x6a, 0x6a, 0x75, 0x67, 0x71, 0x32, 0x74, 0x34, 0x38, 0x6e, 0x39, 0x65, 0x72, 0x32, 0x61, 0x73, 0x7a, 0x71, 0x67, 0x66, 0x78, 0x7a, 0x7a, 0x6b, 0x39, 0x33, 0x74, 0x68, 0x33, 0x35, 0x34, 0x64, 0x74, 0x68, 0x6e, 0x61, 0x67, 0x76, 0x36, 0x32, 0x75, 0x72, 0x30, 0x67, 0x70, 0x36, 0x7a, 0x63, 0x63, 0x70, 0x33, 0x77, 0x72, 0x65, 0x64, 0x6c, 0x6d, 0x65, 0x79, 0x76, 0x68, 0x63, 0x63, 0x36, 0x74, 0x30, 0x34, 0x65, 0x6c, 0x61, 0x79, 0x32, 0x70, 0x37, 0x70, 0x61, 0x77, 0x74, 0x65, 0x34, 0x73, 0x64, 0x74, 0x36, 0x74, 0x75, 0x65, 0x65, 0x61, 0x7a, 0x76, 0x77, 0x6e, 0x75, 0x34, 0x6d, 0x65, 0x66, 0x6e, 0x75, 0x79, 0x63, 0x79, 0x71, 0x6c, 0x32, 0x37, 0x38, 0x67, 0x6c, 0x65, 0x75, 0x71, 0x79, 0x34, 0x36, 0x75, 0x39, 0x39, 0x32, 0x35, 0x77, 0x77, 0x61, 0x6b, 0x34, 0x72, 0x37, 0x36, 0x37, 0x74, 0x7a, 0x6c, 0x36, 0x70, 0x64, 0x6c, 0x6c, 0x6a, 0x75, 0x6d, 0x61, 0x6c, 0x6a, 0x39, 0x30, 0x74, 0x67, 0x6a, 0x70, 0x72, 0x32, 0x39, 0x38, 0x37, 0x33, 0x6d, 0x75, 0x35, 0x36, 0x66, 0x35, 0x77, 0x35, 0x38, 0x66, 0x34, 0x30, 0x74, 0x71, 0x67, 0x63, 0x6e, 0x73, 0x72, 0x33, 0x67, 0x67, 0x67, 0x61, 0x35, 0x6e, 0x35, 0x7a, 0x6d, 0x64, 0x7a, 0x79, 0x77, 0x66, 0x34, 0x77, 0x6b, 0x7a, 0x38, 0x6a, 0x36, 0x78, 0x77, 0x77, 0x68, 0x68, 0x66, 0x70, 0x63, 0x66, 0x6a, 0x76, 0x35, 0x32, 0x65, 0x6b, 0x65, 0x38, 0x72, 0x6d, 0x67, 0x37, 0x75, 0x30, 0x6a, 0x70, 0x6c, 0x74, 0x38, 0x79, 0x66, 0x73, 0x70, 0x32, 0x7a, 0x6e, 0x78, 0x71, 0x30, 0x6d, 0x39, 0x76, 0x38, 0x38, 0x71, 0x34, 0x35, 0x73, 0x6b, 0x72, 0x38, 0x78, 0x39, 0x67, 0x75, 0x74, 0x67, 0x68, 0x37, 0x79, 0x68, 0x64, 0x6c, 0x63, 0x35, 0x67, 0x32, 0x6d, 0x71, 0x6b, 0x6a, 0x75, 0x33, 0x61, 0x33, 0x6e, 0x38, 0x30, 0x71, 0x39, 0x35, 0x68, 0x70, 0x37, 0x35, 0x70, 0x37, 0x66, 0x73, 0x76, 0x75, 0x39, 0x79, 0x77, 0x37, 0x75, 0x36, 0x6a, 0x61, 0x34, 0x68, 0x79, 0x32, 0x6e, 0x77, 0x65, 0x61, 0x6c, 0x63, 0x75, 0x30, 0x77, 0x33, 0x73, 0x67, 0x37, 0x75, 0x70, 0x61, 0x78, 0x64, 0x7a, 0x30, 0x67, 0x33, 0x35, 0x66, 0x78, 0x37, 0x78, 0x76, 0x64, 0x78, 0x33, 0x72, 0x67, 0x6c, 0x61, 0x61, 0x72, 0x76, 0x78, 0x38, 0x75, 0x37, 0x75, 0x74
],
account: 9,
},

View File

@ -25,7 +25,7 @@
},
TestVector {
t_key_bytes: Some([
0x18, 0xd9, 0x61, 0x4f, 0xc8, 0x20, 0x90, 0x5d, 0x04, 0x2b, 0xb1, 0xef, 0x9c, 0xa3, 0xf2, 0x49, 0x88, 0xc7, 0xb3, 0x53, 0x42, 0x01, 0xcf, 0xb1, 0xcd, 0x8d, 0xbf, 0x69, 0xb8, 0x25, 0x0c, 0x18, 0x02, 0x82, 0x03, 0x46, 0xfc, 0xec, 0x8e, 0xa1, 0x27, 0x6d, 0xb2, 0xe6, 0x15, 0xb8, 0xce, 0xd2, 0xfe, 0x4c, 0xf7, 0x46, 0x8c, 0x1e, 0xf4, 0x53, 0x14, 0x61, 0x95, 0xb4, 0xd7, 0xbc, 0x13, 0xa4, 0xdc
0x82, 0x47, 0xa8, 0xbb, 0x70, 0xd2, 0x1b, 0x1a, 0xa8, 0xb1, 0x9e, 0x32, 0xcd, 0xa1, 0x59, 0x10, 0xf5, 0x4d, 0x87, 0xe0, 0x08, 0x32, 0xcf, 0x7f, 0x29, 0xa3, 0x77, 0xad, 0x3b, 0x63, 0x2a, 0xf6, 0x02, 0x48, 0x11, 0xeb, 0x47, 0x6d, 0xa7, 0x7d, 0xb9, 0x2d, 0x1a, 0xc5, 0x4f, 0x3e, 0xb7, 0x51, 0x1e, 0x0c, 0x48, 0x33, 0x25, 0x91, 0x15, 0x36, 0x54, 0x6e, 0xa9, 0x7e, 0x02, 0xda, 0xa3, 0x78, 0x1e
]),
sapling_ivk_bytes: Some([
0xd0, 0xc1, 0x3a, 0x68, 0x31, 0x8b, 0x37, 0x62, 0xec, 0xe8, 0x90, 0x78, 0x2f, 0xcf, 0xdc, 0xb5, 0x7f, 0x9d, 0x85, 0x42, 0x9f, 0x31, 0x6e, 0xf2, 0x00, 0x3d, 0xf5, 0x64, 0xf1, 0x47, 0xb2, 0x8a, 0xf7, 0x1c, 0x77, 0xc6, 0x59, 0xa6, 0x41, 0xf5, 0x9a, 0x2c, 0x8e, 0xd0, 0xdf, 0x0c, 0x55, 0xfe, 0xbd, 0x82, 0x43, 0xa6, 0x9f, 0x09, 0xcc, 0x39, 0xf6, 0x02, 0x4d, 0xee, 0xeb, 0x30, 0xfc, 0x00
@ -34,13 +34,13 @@
unknown_ivk_typecode: 65530,
unknown_ivk_bytes: None,
unified_ivk: vec![
0x75, 0x69, 0x76, 0x6b, 0x31, 0x72, 0x73, 0x78, 0x6e, 0x37, 0x67, 0x78, 0x36, 0x7a, 0x74, 0x63, 0x65, 0x7a, 0x36, 0x72, 0x75, 0x78, 0x38, 0x36, 0x36, 0x67, 0x76, 0x36, 0x63, 0x6e, 0x39, 0x68, 0x68, 0x70, 0x78, 0x72, 0x68, 0x6d, 0x32, 0x79, 0x64, 0x61, 0x7a, 0x39, 0x71, 0x65, 0x66, 0x65, 0x74, 0x6a, 0x70, 0x64, 0x63, 0x79, 0x38, 0x73, 0x78, 0x65, 0x61, 0x71, 0x76, 0x6c, 0x6d, 0x37, 0x6c, 0x30, 0x6a, 0x76, 0x6c, 0x33, 0x72, 0x67, 0x71, 0x79, 0x78, 0x6c, 0x6e, 0x65, 0x75, 0x33, 0x72, 0x39, 0x68, 0x78, 0x75, 0x72, 0x74, 0x78, 0x36, 0x6c, 0x70, 0x6d, 0x34, 0x6a, 0x74, 0x78, 0x6c, 0x66, 0x71, 0x6a, 0x68, 0x75, 0x72, 0x61, 0x72, 0x73, 0x75, 0x38, 0x7a, 0x64, 0x79, 0x79, 0x76, 0x6c, 0x65, 0x37, 0x79, 0x79, 0x6b, 0x72, 0x67, 0x6a, 0x73, 0x68, 0x6d, 0x61, 0x36, 0x35, 0x65, 0x61, 0x6d, 0x78, 0x33, 0x74, 0x39, 0x71, 0x32, 0x66, 0x7a, 0x37, 0x6d, 0x66, 0x65, 0x68, 0x6c, 0x6b, 0x68, 0x70, 0x79, 0x6e, 0x76, 0x72, 0x37, 0x35, 0x66, 0x36, 0x65, 0x35, 0x75, 0x34, 0x6e, 0x37, 0x68, 0x65, 0x39, 0x68, 0x76, 0x32, 0x63, 0x74, 0x6d, 0x38, 0x72, 0x36, 0x68, 0x76, 0x77, 0x6e, 0x37, 0x33, 0x70, 0x37, 0x77, 0x35, 0x75, 0x75, 0x68, 0x79, 0x6e, 0x73, 0x79, 0x64, 0x73, 0x74, 0x73, 0x79, 0x67, 0x74, 0x6e, 0x72, 0x78, 0x35, 0x39, 0x79, 0x72, 0x30, 0x7a, 0x34, 0x33, 0x72, 0x32, 0x6a, 0x32, 0x6d, 0x6e, 0x67, 0x61, 0x64, 0x61, 0x72, 0x77, 0x37, 0x78, 0x73, 0x68, 0x77, 0x6a, 0x76, 0x64, 0x38, 0x71, 0x76, 0x36, 0x6b, 0x75, 0x77, 0x65, 0x65, 0x30, 0x75, 0x64, 0x66, 0x37, 0x63, 0x68, 0x65, 0x7a, 0x74, 0x37, 0x75
0x75, 0x69, 0x76, 0x6b, 0x31, 0x6e, 0x72, 0x70, 0x76, 0x38, 0x35, 0x37, 0x38, 0x6b, 0x61, 0x79, 0x32, 0x74, 0x65, 0x33, 0x75, 0x32, 0x75, 0x7a, 0x61, 0x79, 0x74, 0x72, 0x37, 0x6c, 0x38, 0x70, 0x73, 0x70, 0x77, 0x71, 0x7a, 0x35, 0x6b, 0x34, 0x6d, 0x38, 0x73, 0x75, 0x38, 0x7a, 0x77, 0x66, 0x32, 0x61, 0x61, 0x35, 0x6c, 0x79, 0x6a, 0x79, 0x6d, 0x68, 0x64, 0x34, 0x6b, 0x6d, 0x70, 0x35, 0x73, 0x71, 0x65, 0x61, 0x6b, 0x39, 0x7a, 0x79, 0x74, 0x64, 0x73, 0x39, 0x33, 0x73, 0x79, 0x37, 0x76, 0x77, 0x76, 0x39, 0x33, 0x6d, 0x65, 0x79, 0x6b, 0x6c, 0x6a, 0x35, 0x63, 0x74, 0x36, 0x38, 0x64, 0x72, 0x67, 0x30, 0x73, 0x37, 0x65, 0x34, 0x63, 0x6d, 0x70, 0x37, 0x61, 0x71, 0x73, 0x6d, 0x7a, 0x38, 0x7a, 0x79, 0x30, 0x64, 0x36, 0x39, 0x6a, 0x32, 0x34, 0x35, 0x68, 0x37, 0x75, 0x64, 0x32, 0x68, 0x77, 0x65, 0x74, 0x76, 0x6b, 0x78, 0x6e, 0x39, 0x79, 0x68, 0x34, 0x34, 0x61, 0x68, 0x63, 0x61, 0x65, 0x7a, 0x35, 0x35, 0x66, 0x6d, 0x72, 0x65, 0x6c, 0x34, 0x65, 0x77, 0x61, 0x66, 0x74, 0x30, 0x75, 0x73, 0x68, 0x73, 0x61, 0x72, 0x6d, 0x34, 0x79, 0x63, 0x36, 0x34, 0x67, 0x7a, 0x34, 0x65, 0x66, 0x76, 0x39, 0x39, 0x37, 0x6b, 0x6c, 0x70, 0x6e, 0x63, 0x72, 0x70, 0x33, 0x36, 0x6d, 0x32, 0x79, 0x30, 0x35, 0x73, 0x6d, 0x35, 0x35, 0x77, 0x77, 0x33, 0x7a, 0x64, 0x38, 0x6d, 0x73, 0x70, 0x38, 0x78, 0x78, 0x37, 0x6d, 0x79, 0x37, 0x67, 0x30, 0x6e, 0x39, 0x7a, 0x63, 0x67, 0x67, 0x6a, 0x74, 0x77, 0x72, 0x34, 0x78, 0x64, 0x32, 0x30, 0x30, 0x6b, 0x6d, 0x7a, 0x64, 0x6d, 0x6d, 0x6a, 0x6a, 0x63, 0x36, 0x39, 0x37, 0x6c, 0x33, 0x79
],
account: 1,
},
TestVector {
t_key_bytes: Some([
0x25, 0x94, 0x6f, 0x62, 0xc2, 0xfa, 0x7b, 0x2f, 0xec, 0xbc, 0xb6, 0x4b, 0x69, 0x68, 0x91, 0x2a, 0x63, 0x81, 0xce, 0x3d, 0xc1, 0x66, 0xd5, 0x6a, 0x1d, 0x62, 0xf5, 0xa8, 0xd7, 0x55, 0x1d, 0xb5, 0x03, 0x06, 0x2c, 0xaf, 0x06, 0xc8, 0x96, 0x38, 0x77, 0x4b, 0x69, 0x8a, 0xaa, 0xfc, 0x8c, 0x83, 0x4f, 0xb2, 0x69, 0x6f, 0x70, 0xc3, 0xcd, 0xc7, 0x0f, 0x45, 0x28, 0xf4, 0xdd, 0xae, 0x53, 0xf9, 0xe1
0x2d, 0x12, 0xeb, 0xf2, 0x2e, 0x70, 0x33, 0xc5, 0x0b, 0xbc, 0xc9, 0xcf, 0xff, 0xae, 0x0d, 0x2b, 0xcb, 0xaa, 0x16, 0x3d, 0x3a, 0x1d, 0x5c, 0x61, 0x69, 0xdd, 0xc8, 0xef, 0x78, 0x58, 0xe3, 0xcb, 0x02, 0xbe, 0x3c, 0x62, 0x80, 0xa9, 0x29, 0xeb, 0x7d, 0x60, 0x68, 0x83, 0xff, 0x2f, 0xea, 0x9e, 0x9e, 0xbd, 0xbb, 0xc1, 0xe3, 0x5e, 0xda, 0x37, 0xd1, 0x11, 0x26, 0x2d, 0x6a, 0x90, 0xec, 0x73, 0x20
]),
sapling_ivk_bytes: Some([
0x7b, 0x2c, 0xe2, 0x9b, 0x1c, 0x44, 0x1f, 0xb6, 0x85, 0x34, 0xde, 0x04, 0x41, 0xe5, 0xd7, 0x5c, 0x2d, 0xa2, 0x46, 0x67, 0x37, 0x2d, 0x9a, 0xe6, 0xdb, 0x6c, 0xf6, 0x36, 0x93, 0xf4, 0x4d, 0x86, 0xbc, 0xc4, 0xdc, 0x45, 0x10, 0xf8, 0x3a, 0xef, 0x5a, 0x26, 0x6c, 0xa0, 0x49, 0xe8, 0x32, 0xeb, 0x81, 0xf0, 0x6c, 0x8a, 0x41, 0x0b, 0xe9, 0x46, 0x13, 0xc2, 0x67, 0xc8, 0xfd, 0x87, 0xb4, 0x07
@ -53,7 +53,7 @@
0x1a, 0x03, 0x55, 0x87, 0xd5, 0xfb, 0x1a, 0x38, 0xe0, 0x1d, 0x94, 0x90, 0x3d, 0x3c, 0x3e, 0x0a, 0xd3, 0x36, 0x0c, 0x1d, 0x37, 0x10, 0xac, 0xd2, 0x0b, 0x18, 0x3e, 0x31, 0xd4, 0x9f, 0x25, 0xc9, 0xa1, 0x38, 0xf4, 0x9b, 0x1a, 0x53, 0x7e, 0xdc, 0xf0, 0x4b, 0xe3, 0x4a, 0x98, 0x51, 0xa7, 0xaf, 0x9d, 0xb6, 0x99, 0x0e, 0xd8, 0x3d, 0xd6, 0x4a, 0xf3, 0x59, 0x7c, 0x04, 0x32, 0x3e, 0xa5, 0x1b, 0x00, 0x52, 0xad, 0x80, 0x84, 0xa8, 0xb9, 0xda, 0x94, 0x8d, 0x32, 0x0d, 0xad, 0xd6, 0x4f, 0x54, 0x31, 0xe6, 0x1d, 0xdf, 0x65, 0x8d, 0x24, 0xae, 0x67, 0xc2, 0x2c, 0x8d, 0x13, 0x09, 0x13, 0x1f, 0xc0, 0x0f, 0xe7, 0xf2, 0x35, 0x73, 0x42, 0x76, 0xd3, 0x8d, 0x47, 0xf1, 0xe1, 0x91, 0xe0, 0x0c, 0x7a, 0x1d, 0x48, 0xaf, 0x04, 0x68, 0x27, 0x59, 0x1e, 0x97, 0x33, 0xa9, 0x7f, 0xa6, 0xb6, 0x79, 0xf3, 0xdc, 0x60, 0x1d, 0x00, 0x82, 0x85, 0xed, 0xcb, 0xda, 0xe6, 0x9c, 0xe8, 0xfc, 0x1b, 0xe4, 0xaa, 0xc0, 0x0f, 0xf2, 0x71, 0x1e, 0xbd, 0x93, 0x1d, 0xe5, 0x18, 0x85, 0x68, 0x78, 0xf7, 0x34, 0x76
]),
unified_ivk: vec![
0x75, 0x69, 0x76, 0x6b, 0x31, 0x38, 0x65, 0x75, 0x64, 0x75, 0x70, 0x6d, 0x35, 0x37, 0x39, 0x68, 0x73, 0x73, 0x64, 0x78, 0x66, 0x39, 0x71, 0x65, 0x34, 0x38, 0x35, 0x38, 0x75, 0x79, 0x34, 0x63, 0x37, 0x66, 0x30, 0x76, 0x79, 0x6c, 0x71, 0x74, 0x64, 0x38, 0x72, 0x75, 0x61, 0x6a, 0x36, 0x6a, 0x78, 0x6a, 0x68, 0x32, 0x34, 0x39, 0x76, 0x71, 0x66, 0x78, 0x63, 0x79, 0x7a, 0x6e, 0x73, 0x73, 0x66, 0x39, 0x68, 0x74, 0x75, 0x6d, 0x65, 0x68, 0x61, 0x66, 0x39, 0x30, 0x68, 0x32, 0x6b, 0x7a, 0x32, 0x78, 0x79, 0x34, 0x75, 0x70, 0x63, 0x35, 0x6e, 0x6c, 0x38, 0x30, 0x6d, 0x6d, 0x6a, 0x72, 0x79, 0x35, 0x78, 0x6c, 0x6e, 0x65, 0x30, 0x39, 0x72, 0x75, 0x72, 0x6a, 0x74, 0x37, 0x6e, 0x6d, 0x78, 0x77, 0x6e, 0x78, 0x34, 0x75, 0x76, 0x64, 0x34, 0x68, 0x30, 0x77, 0x39, 0x30, 0x65, 0x37, 0x33, 0x77, 0x63, 0x34, 0x6c, 0x39, 0x6d, 0x61, 0x67, 0x32, 0x63, 0x33, 0x33, 0x66, 0x74, 0x77, 0x6a, 0x79, 0x72, 0x76, 0x66, 0x6d, 0x75, 0x64, 0x6a, 0x74, 0x70, 0x71, 0x79, 0x32, 0x75, 0x78, 0x61, 0x70, 0x7a, 0x6c, 0x73, 0x37, 0x65, 0x7a, 0x77, 0x6a, 0x77, 0x39, 0x6e, 0x73, 0x6d, 0x39, 0x38, 0x71, 0x68, 0x39, 0x36, 0x77, 0x65, 0x38, 0x67, 0x79, 0x79, 0x32, 0x6e, 0x32, 0x64, 0x6e, 0x78, 0x77, 0x66, 0x78, 0x6d, 0x76, 0x7a, 0x65, 0x64, 0x67, 0x75, 0x77, 0x77, 0x70, 0x36, 0x6c, 0x72, 0x68, 0x71, 0x70, 0x6c, 0x76, 0x75, 0x71, 0x64, 0x70, 0x72, 0x74, 0x73, 0x71, 0x6b, 0x37, 0x70, 0x35, 0x38, 0x79, 0x37, 0x78, 0x61, 0x6b, 0x36, 0x70, 0x66, 0x74, 0x38, 0x6c, 0x30, 0x65, 0x34, 0x78, 0x65, 0x73, 0x36, 0x77, 0x6d, 0x30, 0x6b, 0x32, 0x33, 0x6b, 0x6b, 0x6e, 0x61, 0x73, 0x64, 0x6e, 0x30, 0x6d, 0x65, 0x39, 0x79, 0x63, 0x77, 0x79, 0x63, 0x76, 0x73, 0x68, 0x77, 0x71, 0x71, 0x34, 0x71, 0x70, 0x7a, 0x72, 0x7a, 0x6a, 0x75, 0x75, 0x6c, 0x6b, 0x38, 0x6e, 0x75, 0x74, 0x6d, 0x30, 0x6d, 0x76, 0x66, 0x68, 0x6b, 0x6a, 0x75, 0x71, 0x78, 0x72, 0x63, 0x6c, 0x70, 0x77, 0x70, 0x63, 0x77, 0x76, 0x6e, 0x77, 0x77, 0x68, 0x32, 0x7a, 0x75, 0x63, 0x32, 0x61, 0x7a, 0x66, 0x71, 0x39, 0x70, 0x32, 0x36, 0x67, 0x6b, 0x76, 0x67, 0x6e, 0x35, 0x30, 0x67, 0x71, 0x6b, 0x76, 0x32, 0x37, 0x6d, 0x74, 0x79, 0x37, 0x33, 0x33, 0x38, 0x71, 0x34, 0x78, 0x77, 0x77, 0x32, 0x6e, 0x68, 0x70, 0x70, 0x79, 0x72, 0x34, 0x68, 0x6c, 0x33, 0x35, 0x6e, 0x6c, 0x34, 0x32, 0x75, 0x71, 0x6a, 0x30, 0x76, 0x34, 0x77, 0x70, 0x78, 0x6c, 0x74, 0x74, 0x32, 0x30, 0x30, 0x63, 0x71, 0x72, 0x38, 0x6d, 0x72, 0x65, 0x67, 0x38, 0x36, 0x70, 0x61, 0x73, 0x64, 0x78, 0x37, 0x35, 0x32, 0x34, 0x64, 0x7a, 0x61, 0x66, 0x76, 0x37, 0x74, 0x65, 0x61, 0x79, 0x79, 0x71, 0x30, 0x72, 0x75, 0x6e, 0x71, 0x6a, 0x66, 0x32, 0x77, 0x33, 0x6a, 0x64, 0x65, 0x36, 0x37, 0x66, 0x38, 0x6b, 0x7a, 0x30, 0x34, 0x6a, 0x76, 0x6b, 0x63, 0x63, 0x78, 0x68, 0x6b, 0x39, 0x36, 0x7a, 0x6e, 0x65, 0x6d, 0x6d, 0x66, 0x37, 0x6e, 0x66, 0x34, 0x6d, 0x36, 0x66, 0x6d, 0x73, 0x75, 0x30, 0x36, 0x30, 0x37, 0x6e, 0x38, 0x30, 0x64, 0x66, 0x67, 0x6a, 0x30, 0x7a, 0x68, 0x68, 0x63, 0x67, 0x79, 0x7a, 0x74, 0x33, 0x64, 0x75, 0x36, 0x76, 0x30, 0x65, 0x74, 0x75, 0x34, 0x64, 0x37, 0x32, 0x67, 0x32, 0x37, 0x33, 0x39, 0x65, 0x30, 0x74, 0x65, 0x39, 0x39, 0x65, 0x74, 0x63, 0x30, 0x6c, 0x36, 0x64, 0x70, 0x61, 0x77, 0x78, 0x77, 0x35, 0x76, 0x36, 0x39, 0x38, 0x30, 0x64, 0x38, 0x36, 0x78, 0x67, 0x70, 0x65, 0x61, 0x6e, 0x6c, 0x36, 0x37, 0x78, 0x66, 0x36, 0x35, 0x64, 0x64, 0x7a, 0x34, 0x35, 0x76, 0x64, 0x37, 0x76, 0x77, 0x6c, 0x6c, 0x74, 0x6d, 0x74, 0x37, 0x78, 0x6b, 0x67, 0x38, 0x6a, 0x79, 0x7a, 0x34, 0x75, 0x64, 0x61, 0x34, 0x6c, 0x39, 0x68, 0x37, 0x30, 0x36, 0x6d, 0x66, 0x64, 0x61, 0x78, 0x38, 0x6b, 0x6b, 0x6c, 0x34, 0x35, 0x6d, 0x6c, 0x74, 0x76, 0x37, 0x72, 0x39, 0x71, 0x73, 0x72, 0x6b, 0x6b, 0x73, 0x68, 0x63, 0x30, 0x39, 0x6a, 0x38, 0x35, 0x76, 0x35, 0x79, 0x78, 0x74, 0x68, 0x33, 0x66, 0x71, 0x77, 0x6e, 0x34, 0x6c, 0x68, 0x7a, 0x38, 0x74
0x75, 0x69, 0x76, 0x6b, 0x31, 0x78, 0x72, 0x73, 0x66, 0x34, 0x76, 0x74, 0x67, 0x65, 0x38, 0x64, 0x63, 0x63, 0x74, 0x6a, 0x7a, 0x74, 0x35, 0x79, 0x33, 0x65, 0x66, 0x65, 0x72, 0x66, 0x78, 0x30, 0x75, 0x7a, 0x6d, 0x6c, 0x63, 0x71, 0x34, 0x36, 0x35, 0x68, 0x36, 0x37, 0x63, 0x66, 0x38, 0x74, 0x33, 0x6b, 0x38, 0x78, 0x73, 0x61, 0x6c, 0x74, 0x61, 0x35, 0x6c, 0x79, 0x6e, 0x65, 0x73, 0x64, 0x36, 0x75, 0x71, 0x6d, 0x6a, 0x33, 0x79, 0x68, 0x7a, 0x74, 0x64, 0x37, 0x38, 0x30, 0x6b, 0x38, 0x34, 0x6e, 0x36, 0x71, 0x63, 0x76, 0x64, 0x35, 0x7a, 0x72, 0x61, 0x6a, 0x72, 0x75, 0x79, 0x61, 0x30, 0x32, 0x6d, 0x77, 0x76, 0x61, 0x78, 0x36, 0x71, 0x63, 0x66, 0x39, 0x67, 0x66, 0x77, 0x67, 0x68, 0x75, 0x32, 0x76, 0x67, 0x72, 0x6c, 0x6c, 0x30, 0x65, 0x6c, 0x34, 0x39, 0x37, 0x6a, 0x75, 0x36, 0x78, 0x39, 0x63, 0x34, 0x32, 0x6b, 0x71, 0x76, 0x6b, 0x36, 0x66, 0x6c, 0x33, 0x78, 0x6b, 0x6c, 0x76, 0x32, 0x39, 0x79, 0x33, 0x32, 0x6d, 0x67, 0x76, 0x71, 0x35, 0x74, 0x38, 0x6c, 0x75, 0x79, 0x32, 0x33, 0x74, 0x75, 0x7a, 0x6a, 0x6c, 0x79, 0x64, 0x74, 0x77, 0x30, 0x68, 0x6d, 0x77, 0x32, 0x32, 0x39, 0x75, 0x6e, 0x36, 0x37, 0x7a, 0x63, 0x6b, 0x73, 0x33, 0x73, 0x72, 0x79, 0x63, 0x38, 0x6c, 0x76, 0x70, 0x6d, 0x77, 0x36, 0x7a, 0x64, 0x7a, 0x39, 0x71, 0x6c, 0x6d, 0x38, 0x75, 0x6a, 0x66, 0x66, 0x6e, 0x78, 0x34, 0x63, 0x61, 0x72, 0x74, 0x36, 0x68, 0x7a, 0x74, 0x33, 0x74, 0x35, 0x37, 0x6d, 0x34, 0x6e, 0x33, 0x38, 0x38, 0x74, 0x66, 0x66, 0x71, 0x6b, 0x36, 0x70, 0x64, 0x66, 0x78, 0x38, 0x6d, 0x30, 0x34, 0x77, 0x7a, 0x61, 0x32, 0x36, 0x6e, 0x36, 0x61, 0x76, 0x37, 0x66, 0x39, 0x74, 0x6e, 0x61, 0x73, 0x65, 0x71, 0x77, 0x35, 0x6d, 0x6a, 0x78, 0x36, 0x36, 0x79, 0x71, 0x74, 0x30, 0x32, 0x66, 0x7a, 0x64, 0x67, 0x65, 0x71, 0x6c, 0x6b, 0x61, 0x33, 0x68, 0x68, 0x66, 0x75, 0x79, 0x6d, 0x70, 0x76, 0x36, 0x76, 0x68, 0x6d, 0x34, 0x77, 0x77, 0x33, 0x66, 0x35, 0x33, 0x73, 0x30, 0x71, 0x6a, 0x67, 0x77, 0x34, 0x75, 0x6c, 0x74, 0x72, 0x30, 0x6e, 0x37, 0x32, 0x37, 0x76, 0x75, 0x6e, 0x37, 0x6b, 0x6d, 0x74, 0x77, 0x35, 0x61, 0x39, 0x73, 0x33, 0x64, 0x35, 0x39, 0x6b, 0x35, 0x6b, 0x67, 0x37, 0x76, 0x32, 0x6e, 0x76, 0x36, 0x68, 0x68, 0x74, 0x61, 0x36, 0x34, 0x32, 0x32, 0x6d, 0x78, 0x63, 0x61, 0x7a, 0x34, 0x72, 0x6e, 0x33, 0x63, 0x6d, 0x38, 0x33, 0x78, 0x6e, 0x6a, 0x70, 0x7a, 0x39, 0x78, 0x35, 0x79, 0x64, 0x70, 0x6e, 0x76, 0x67, 0x39, 0x74, 0x78, 0x36, 0x75, 0x38, 0x79, 0x37, 0x30, 0x39, 0x38, 0x67, 0x68, 0x32, 0x32, 0x72, 0x66, 0x63, 0x34, 0x74, 0x35, 0x6a, 0x78, 0x6e, 0x6e, 0x30, 0x71, 0x37, 0x39, 0x67, 0x78, 0x6a, 0x71, 0x70, 0x70, 0x38, 0x6c, 0x66, 0x39, 0x33, 0x36, 0x6c, 0x74, 0x35, 0x38, 0x6e, 0x32, 0x64, 0x72, 0x39, 0x35, 0x30, 0x75, 0x68, 0x39, 0x38, 0x71, 0x7a, 0x6e, 0x78, 0x6b, 0x64, 0x6b, 0x39, 0x32, 0x77, 0x33, 0x33, 0x33, 0x6e, 0x30, 0x63, 0x36, 0x32, 0x7a, 0x71, 0x74, 0x75, 0x34, 0x67, 0x6c, 0x76, 0x78, 0x78, 0x64, 0x33, 0x71, 0x38, 0x70, 0x38, 0x33, 0x35, 0x6a, 0x7a, 0x6b, 0x37, 0x30, 0x72, 0x76, 0x68, 0x30, 0x66, 0x39, 0x38, 0x71, 0x75, 0x6d, 0x38, 0x71, 0x32, 0x79, 0x6c, 0x6d, 0x38, 0x30, 0x79, 0x6a, 0x79, 0x77, 0x76, 0x7a, 0x32, 0x73, 0x68, 0x32, 0x34, 0x71, 0x73, 0x6b, 0x75, 0x38, 0x6a, 0x65, 0x65, 0x6c, 0x65, 0x63, 0x75, 0x68, 0x6c, 0x33, 0x70, 0x72, 0x39, 0x67, 0x75, 0x36, 0x6a, 0x76, 0x61, 0x76, 0x66, 0x30, 0x77, 0x6e, 0x32, 0x68, 0x64, 0x75, 0x64, 0x61, 0x36, 0x75, 0x70, 0x65, 0x68, 0x6e, 0x6d, 0x6e, 0x78, 0x78, 0x64, 0x6e, 0x35, 0x36, 0x66, 0x73, 0x72, 0x64, 0x6b, 0x30, 0x7a, 0x32, 0x76, 0x6c, 0x72, 0x63, 0x75, 0x61, 0x39, 0x70, 0x75, 0x6e, 0x61, 0x6c, 0x71, 0x6a, 0x64, 0x72, 0x32, 0x33, 0x64, 0x32, 0x66, 0x72, 0x39, 0x79, 0x78, 0x7a, 0x6e, 0x6d, 0x77, 0x34, 0x78, 0x36, 0x64, 0x78, 0x39, 0x76, 0x74, 0x71, 0x61, 0x65, 0x32, 0x74, 0x38, 0x79, 0x64, 0x30, 0x6e, 0x6b, 0x78, 0x72, 0x68, 0x66, 0x30, 0x71
],
account: 2,
},
@ -143,7 +143,7 @@
},
TestVector {
t_key_bytes: Some([
0x12, 0xb5, 0x6d, 0xa9, 0xc3, 0x82, 0x85, 0x7d, 0xee, 0xcc, 0x40, 0xa9, 0x8d, 0x5f, 0x29, 0x35, 0x39, 0x5e, 0xe4, 0x76, 0x2d, 0xd2, 0x1a, 0xfd, 0xbb, 0x5d, 0x47, 0xfa, 0x9a, 0x6d, 0xd9, 0x84, 0x03, 0x9b, 0x50, 0xa1, 0x22, 0xf2, 0x6e, 0xde, 0x2e, 0x13, 0xff, 0x63, 0xb1, 0x30, 0xc9, 0x0f, 0x4c, 0x0f, 0x95, 0x1a, 0xe8, 0xa8, 0x1d, 0xdc, 0x1a, 0x4c, 0x98, 0x77, 0x54, 0xf1, 0x44, 0xc5, 0x36
0x2a, 0x5f, 0xe1, 0x60, 0x81, 0x7c, 0x62, 0xb0, 0x29, 0x59, 0x12, 0x72, 0x5e, 0x72, 0x43, 0x0d, 0x18, 0xe3, 0x57, 0x2c, 0xb6, 0xeb, 0x2b, 0x03, 0x15, 0x99, 0xc6, 0x3a, 0x44, 0x49, 0xf5, 0x67, 0x02, 0x67, 0x9e, 0x64, 0x35, 0x56, 0x8e, 0x09, 0x68, 0x50, 0x24, 0x04, 0xd4, 0x12, 0x74, 0x4a, 0xa3, 0xb7, 0xb1, 0x2f, 0x1a, 0xfa, 0x9e, 0x72, 0x33, 0xf7, 0x42, 0x52, 0x04, 0xe4, 0x28, 0xe9, 0x43
]),
sapling_ivk_bytes: Some([
0x20, 0x4f, 0x19, 0xa1, 0x23, 0xbd, 0xbb, 0xba, 0x71, 0x59, 0x51, 0x0e, 0x52, 0x37, 0x69, 0x38, 0xfb, 0x89, 0x3e, 0xbd, 0xad, 0xde, 0x04, 0xd5, 0xf0, 0x64, 0x6a, 0x3a, 0xd0, 0xf4, 0xcb, 0xc6, 0x7c, 0x74, 0x27, 0x7a, 0x22, 0x06, 0xcf, 0x8e, 0xcb, 0xfc, 0x56, 0x5c, 0xfb, 0x44, 0x76, 0x5a, 0x6f, 0xbf, 0x3b, 0x66, 0x06, 0x9f, 0x9d, 0x75, 0xb9, 0x14, 0xc0, 0x13, 0x45, 0xaf, 0x87, 0x02
@ -154,7 +154,7 @@
unknown_ivk_typecode: 65534,
unknown_ivk_bytes: None,
unified_ivk: vec![
0x75, 0x69, 0x76, 0x6b, 0x31, 0x64, 0x71, 0x72, 0x68, 0x6e, 0x66, 0x63, 0x39, 0x67, 0x63, 0x68, 0x71, 0x6b, 0x6c, 0x68, 0x6e, 0x6d, 0x6e, 0x6a, 0x39, 0x36, 0x64, 0x6a, 0x71, 0x33, 0x64, 0x38, 0x32, 0x38, 0x61, 0x6e, 0x68, 0x30, 0x63, 0x39, 0x35, 0x70, 0x79, 0x76, 0x64, 0x38, 0x35, 0x37, 0x30, 0x37, 0x35, 0x39, 0x6a, 0x72, 0x68, 0x38, 0x70, 0x33, 0x79, 0x72, 0x6c, 0x79, 0x70, 0x68, 0x68, 0x66, 0x64, 0x38, 0x32, 0x64, 0x6a, 0x35, 0x35, 0x6b, 0x76, 0x70, 0x64, 0x6b, 0x76, 0x77, 0x6c, 0x72, 0x37, 0x6e, 0x33, 0x71, 0x30, 0x6a, 0x33, 0x68, 0x6b, 0x30, 0x30, 0x63, 0x34, 0x39, 0x6e, 0x78, 0x6b, 0x6b, 0x30, 0x33, 0x73, 0x39, 0x35, 0x6d, 0x67, 0x76, 0x6d, 0x65, 0x6c, 0x37, 0x32, 0x66, 0x75, 0x6d, 0x7a, 0x77, 0x61, 0x61, 0x7a, 0x32, 0x7a, 0x67, 0x38, 0x39, 0x66, 0x77, 0x38, 0x68, 0x6e, 0x33, 0x37, 0x33, 0x73, 0x35, 0x64, 0x35, 0x71, 0x39, 0x73, 0x64, 0x76, 0x33, 0x70, 0x7a, 0x33, 0x34, 0x68, 0x75, 0x6d, 0x39, 0x78, 0x39, 0x38, 0x35, 0x6d, 0x35, 0x33, 0x6e, 0x6a, 0x35, 0x73, 0x66, 0x63, 0x77, 0x6b, 0x36, 0x61, 0x73, 0x30, 0x77, 0x75, 0x75, 0x79, 0x73, 0x78, 0x61, 0x35, 0x32, 0x7a, 0x32, 0x34, 0x6a, 0x75, 0x74, 0x64, 0x6e, 0x6e, 0x78, 0x61, 0x33, 0x63, 0x37, 0x32, 0x36, 0x38, 0x78, 0x70, 0x71, 0x34, 0x34, 0x6a, 0x37, 0x63, 0x34, 0x74, 0x35, 0x76, 0x68, 0x38, 0x73, 0x64, 0x71, 0x71, 0x65, 0x71, 0x38, 0x6e, 0x6e, 0x79, 0x71, 0x72, 0x6d, 0x33, 0x79, 0x73, 0x30, 0x79, 0x72, 0x35, 0x6c, 0x6a, 0x35, 0x64, 0x68, 0x63, 0x73, 0x66, 0x72, 0x77, 0x65, 0x6d, 0x63, 0x64, 0x77, 0x39, 0x6c, 0x36, 0x68, 0x36, 0x6d, 0x66, 0x63, 0x37, 0x67, 0x76, 0x38, 0x68, 0x6d, 0x64, 0x6e, 0x6e, 0x6a, 0x6b, 0x32, 0x67, 0x78, 0x71, 0x64, 0x35, 0x68, 0x6c, 0x32, 0x76, 0x30, 0x72, 0x71, 0x74, 0x35, 0x79, 0x72, 0x35, 0x38, 0x37, 0x77, 0x6c, 0x71, 0x37, 0x78, 0x36, 0x6e, 0x66, 0x61, 0x78, 0x73, 0x37, 0x6d, 0x64, 0x66, 0x77, 0x34, 0x35, 0x64, 0x37, 0x34, 0x65, 0x35, 0x70, 0x7a, 0x78, 0x30, 0x76, 0x71, 0x30, 0x7a, 0x67, 0x36, 0x75, 0x32, 0x70, 0x6d, 0x38, 0x30, 0x37, 0x78, 0x65, 0x36, 0x78, 0x7a, 0x6a, 0x71, 0x63, 0x74, 0x35, 0x65, 0x6e, 0x36, 0x61, 0x38, 0x34, 0x71, 0x6d, 0x64, 0x70, 0x77, 0x66, 0x6a, 0x74, 0x78, 0x75, 0x6a, 0x6a, 0x7a, 0x75
0x75, 0x69, 0x76, 0x6b, 0x31, 0x33, 0x35, 0x64, 0x74, 0x39, 0x33, 0x74, 0x75, 0x6c, 0x79, 0x67, 0x6a, 0x7a, 0x33, 0x7a, 0x67, 0x66, 0x68, 0x34, 0x30, 0x36, 0x66, 0x63, 0x6d, 0x61, 0x6a, 0x72, 0x6a, 0x72, 0x72, 0x39, 0x63, 0x7a, 0x76, 0x7a, 0x38, 0x34, 0x66, 0x39, 0x6d, 0x66, 0x70, 0x6a, 0x35, 0x30, 0x32, 0x37, 0x6b, 0x6b, 0x76, 0x39, 0x79, 0x68, 0x7a, 0x6c, 0x68, 0x72, 0x6c, 0x6e, 0x65, 0x36, 0x33, 0x6c, 0x6a, 0x74, 0x33, 0x6a, 0x79, 0x66, 0x39, 0x78, 0x6e, 0x37, 0x36, 0x6e, 0x71, 0x37, 0x36, 0x77, 0x38, 0x77, 0x79, 0x39, 0x39, 0x75, 0x68, 0x35, 0x78, 0x34, 0x6c, 0x6e, 0x6b, 0x78, 0x74, 0x39, 0x68, 0x36, 0x36, 0x75, 0x37, 0x77, 0x79, 0x72, 0x72, 0x39, 0x77, 0x67, 0x67, 0x30, 0x75, 0x75, 0x65, 0x30, 0x6a, 0x6d, 0x36, 0x39, 0x72, 0x35, 0x38, 0x78, 0x37, 0x63, 0x71, 0x76, 0x61, 0x61, 0x75, 0x39, 0x65, 0x71, 0x38, 0x6a, 0x78, 0x35, 0x63, 0x70, 0x37, 0x74, 0x74, 0x6e, 0x39, 0x38, 0x72, 0x77, 0x36, 0x6a, 0x6b, 0x36, 0x39, 0x61, 0x70, 0x71, 0x38, 0x33, 0x6a, 0x78, 0x6b, 0x38, 0x63, 0x78, 0x6e, 0x33, 0x68, 0x76, 0x36, 0x6c, 0x6d, 0x75, 0x39, 0x36, 0x6d, 0x6a, 0x35, 0x79, 0x7a, 0x36, 0x6a, 0x7a, 0x6c, 0x79, 0x67, 0x6c, 0x30, 0x39, 0x6c, 0x74, 0x63, 0x33, 0x75, 0x78, 0x30, 0x32, 0x30, 0x66, 0x6a, 0x68, 0x32, 0x6b, 0x68, 0x63, 0x78, 0x79, 0x7a, 0x6c, 0x6b, 0x6e, 0x6c, 0x74, 0x6a, 0x74, 0x77, 0x66, 0x79, 0x6a, 0x75, 0x74, 0x78, 0x37, 0x39, 0x76, 0x65, 0x36, 0x76, 0x6b, 0x6c, 0x37, 0x68, 0x71, 0x63, 0x33, 0x37, 0x38, 0x39, 0x64, 0x6c, 0x38, 0x67, 0x74, 0x73, 0x7a, 0x78, 0x78, 0x77, 0x76, 0x70, 0x61, 0x63, 0x71, 0x70, 0x73, 0x35, 0x39, 0x7a, 0x75, 0x74, 0x66, 0x68, 0x72, 0x71, 0x6b, 0x38, 0x75, 0x67, 0x6d, 0x35, 0x63, 0x33, 0x6b, 0x6b, 0x7a, 0x72, 0x65, 0x71, 0x39, 0x35, 0x35, 0x73, 0x38, 0x64, 0x38, 0x72, 0x70, 0x30, 0x64, 0x71, 0x63, 0x71, 0x7a, 0x39, 0x35, 0x68, 0x77, 0x37, 0x71, 0x36, 0x66, 0x64, 0x67, 0x65, 0x38, 0x70, 0x66, 0x64, 0x63, 0x35, 0x6a, 0x37, 0x68, 0x32, 0x61, 0x73, 0x35, 0x74, 0x78, 0x6b, 0x68, 0x75, 0x38, 0x76, 0x6d, 0x6d, 0x34, 0x33, 0x6e, 0x64, 0x6b, 0x61, 0x72, 0x78, 0x70, 0x65, 0x75, 0x6c, 0x7a, 0x63, 0x67, 0x6d, 0x77, 0x39, 0x66, 0x7a, 0x39, 0x6b, 0x37, 0x68, 0x72, 0x61, 0x67, 0x76
],
account: 9,
},

View File

@ -0,0 +1,14 @@
[
["From https://github.com/zcash-hackworks/zcash-test-vectors/blob/master/bip_0032.py"],
["c, pk, address, external_ovk, internal_ovk, account"],
["9fc239dad033c817bdae3495ee54b5e0038b0564e5629814a3a924f7bc6ed795", "03e79a82b8139042cef66f659029511108592bcdc4d357f72defc9589cec352c4b", "5686c3da4d81053f2e23838e1314ab2fb9cd635c", "ba0694a1f81214fed86b0be78544c0e6184c5725f265b1250b46c021a5e364ca", "882f1e515bd9464d8ee1c0ef4df46dfc648da9c92c11104f2dbd8ecf265f1672", 0],
["c1b12408770513e4f05ab4b822a3e95da591370cf67d4833c9e18b877789ca31", "0355f9be451e1b6988c4faabd40323c29ba1ce488e5a87ffe35faa472d63d0d3f6", "dd461bb0029efe1f27d21dfde658c200adcf2579", "80a041ec2588816651d371cf19dddb8f7843d0fb7f55787f3c3b57bb2213fe42", "9362af766751cbbad1bd0398480a65f211ef367c4a0f9eced20947ae74e66a20", 1],
["00ba8acfac4f5e6fc4888a23173243a90ec4a22d9694e86b55ea093419fcd1df", "0282115efffda4676b297ae8b7b37bb4a5bffb1de2d66e55827ff71355ebfdac49", "a25def5a173b94968a36bcb9589c6f4bd660b721", "ec239c523311da552f4e44caefd4491abf4c31cbcdb78a4a6c04ef948c303ba8", "dfec36cda0ddcc3356aca1b5028c166b960e0c87112f59c82f3d1fb36bea686b", 2],
["988313b115691ef323672af94a23bc0e2b12c73c8f2ece54f7c7439915c4b77b", "03f4d0ad44108d7f930975f279fdd892565949e3a1f6e8034a500318f7de3b92ac", "f691892ca88d1086e0228357d574f12ba4cfb642", "9fc15aa3a6b0a7563c84dd429013d09c8f7f1cc1b7271c6ece338f0d2a72db6b", "ce17cb0862cec08d54367926cb5877e81b19ec29910372cc55386f07835252b0", 3],
["18382e9033ad02fc29ac9797a075f5ec236596a91cb5d964882805e101261cd2", "02bbb5bedbb954ddff2e9a7fcfa989e259d97918570284d3a20f8f307a4150ab57", "351dd78e908e0cd1e414b93074aab2d5e4bef399", "641484a34640f2435484ec46e1615eb1120673f250d04e64e37ba6595ebf65ef", "da87be59f8dd65a00fd59ac4e7d35b8f4d3d5b532cc44f672b274b67f2a98228", 4],
["3df7ce207e12a15e9c63e1cb36bcb50641de01270fd1b199144f0ed2cd07656e", "0301611dcebf65f329121b01eb098cf4c5808c738e9c6f9cf953e882258ff7cc1b", "8cd7cf7683eb663b5fa6e9f62f86805f31d62c79", "46eca4192a78262816dddc6ee0f81bedd13479c019ff91f8b38e904cb63c0738", "37a53ca437ed9fc0146e8281dca52c90c5c3a03dfbc37d4a8ab9680be455dc85", 5],
["9eceffc0469bae10c8a4912e3c06e0e74a3e79e1ded2e379d6c33c0f7aa7ca55", "029f02729572107ad5bdd2a76fff165dcb9637a620236d2d860ed7bed9cd70509b", "3cb607a9faeeb3f14387c02b407a1e80b22f73d5", "630772d182b0849a8ea7b1f99f4aa234c89c08556de94738f38a99d354d66a23", "a09520fbf3870372b07a2f457d5f2ad0a9a969c1d808a8332e05f3f0accc569c", 6],
["236bd52151b0cb1486af6dae991617c9712f366f4ce71b79769d427da6771ecc", "02331a0671a6f7cacb034c3532198ea9d9b14faa7209c166bff37b24342d401851", "a60642b8f3cedd92ef947f65be002fd730cf34f8", "a8ffea44960de3d2511286127df58130c1214e16b7df09cd947db3ea1206c333", "e01c2d7b4b6cc0f8872523dcc1d6e0699e1d55c5405e813d418393a0d34644f5", 7],
["7cde7d7bf87e351ec39d5ca4437fc3474574fcad6effba9fb19297ff247f9d71", "03c6d27ec18657eeb84d33211b5cca15eb706400458d4eda9c03ffe5fa25c93e95", "d8b3db57499917b80fa98c2551985d685af04fe5", "06738972dadf8327fbaf0d30355afe829f5f6d19ae17dfddbae462de3c9228eb", "0da906483cba7cd29c1ce1ed517c63f9b282a694b1fcb9cfe1191d5f7dacee0e", 8],
["6d295c2d003d0fc2dcce453bd095761f7304e1f3fa7f2ad5edd78793d1d69012", "0344d2f1d0e01b9070d26795599a6e572541e04d9e4bc2054264cf31772014d7fa", "7ec064acdf50e7a304e3eb24a59dd37cf20157ae", "3a636e399ed8e6cd1eba65c3440ae75cf5626515632b5cd342c99118e3517e83", "7815d09bb53a638881c653b23d2670495a1d79f8134524971fc94307dacad88e", 9]
]

View File

@ -2,7 +2,7 @@
["From https://github.com/zcash-hackworks/zcash-test-vectors/blob/master/unified_address.py"],
["p2pkh_bytes, p2sh_bytes, sapling_raw_addr, orchard_raw_addr, unified_addr, account, diversifier_index"],
[null, "7a8f739a2d9e945b0ce152a8049e294c4d6e66b1", null, "d4714ee761d1ae823b6972152e20957fefa3f6e3129ea4dfb0a9e98703a63dab929589d6dc51c970f935b3", "75316a706539736e37306864767977636579747376613232326c686539786177716d6b306b66326b776e77356839327a30657a6c307377356a3976347466657a346b6b653834367039646d76346a35657033796d386c6e7336376b666a376639386d7130797268337779666d34796134326b6e7272616c7964303434666d6d376b356a32776e63796837786477", 0, 0],
["b3534201cfb1cd8dbf69b8250c18ef41294ca979", null, "9f6e0bf90a18fc0b9b83ae9f23ad4358648638482b5def8975635b66fd8a708335f9235a3186ec0f033f84", "cecbe5e689a453a3fe10ccf7617e6c1fb382819d7fc9200a1f42092ac84a30378f8c1fb90dff71a6d5042d", "75316e30657363346d776d7974336b6a773667306e7a7a70796139773268366a376b63686d30666c67677078396c67647176326b6d686a3976616634646d68797a396e3433686c73346c657377337372766c30387971726b33326c3876616730397979676c376135706837367961676163763030683233733973333734306c753478656d6176706e613078796374787a35737537376779733264636376366b636e343666333077666b3864797a7171756d6e7a726133637379633477346b667875306d716a6b70727066747075646b6e6365666132", 1, 3],
["a75aa9e7d28fd8c0cbc0f39a9f5e43abbd402979", null, "9f6e0bf90a18fc0b9b83ae9f23ad4358648638482b5def8975635b66fd8a708335f9235a3186ec0f033f84", "cecbe5e689a453a3fe10ccf7617e6c1fb382819d7fc9200a1f42092ac84a30378f8c1fb90dff71a6d5042d", "75316a383772753879366c347164636d77713530726767646c34356870737474333363656e70747a71743771376a613371686e727864736536667a3034746d70727463386d376a3961347575677963706163336b786e676d66637968673866377963657136377a67777264366e756a30637a6e636470763939306838653861387561396178776e366e777178763065653963636e796a64756c636c3779397161783264757a3471753667746367713530336873637434676d337a68677667676679746b736533336b757a366d337636683036676b30", 1, 3],
[null, "e8c7203d996af7d477083756d59af80d06a745f4", null, "953f3c78d103c32b60559299462ebb27348964b892acad10482fe502c99f0d524959ba7be4f188e3a27138", "75313466796e646a757877797439707a7a7a6671736d6a6a6d717334797679766666686a377a3734646b326c67747373636a6d3971716e6e673433646c6878736e653579666b3334667668387932657a386c67796b6c3676717165727036713774367778656e66756a7065786b783438716b747634306d36776471736764363474613461637879373332653764", 2, 0],
[null, null, "52fd6aedefbf401633c2e4532515ebcf95bcc2b4b8e4d676dfad7e17925c6dfb8671e52544dc2ca075e261", null, "753176323675666430616666706371363738346c386e347072766b30337868707061323577716a36743473753775396a647973396e333461766c677974637476617237363936327a72386b366e6c67336a793970656a3270367175636a32736e676d6b7938366e74676a", 3, 0],
[null, "183e31d49f25c9a138f49b1a537edcf04be34a98", "6493348e8aee112a87f5fa65e1c57065aad369401e05d0daa96e0bcd89e67bf19beb3ac74d599d94585a68", "165082de84f2ad7204426ffafd6b6c7de9cab6d25c13846a1786715268c415948db788f4a5e0daa03d699e", "75316c6a6e71706c683833387a39796638303634636b3365633933787338386a75333279747434797067737078326365366768727838326637386439646c7663666c71737234667638396873756377737135646670326b32616d763835657730737a35707a6d7833666a6e64366c38306d6a6363677934397a6433336136657163786d653737656a306d63796b3938336167677161656465356a36766168377770306d726c6b7164356e6734636b6b39726a63733833363864356b68726579786c7a3871657032796d74333968653768726c727434", 4, 0],

View File

@ -2,13 +2,13 @@
["From https://github.com/zcash-hackworks/zcash-test-vectors/blob/master/unified_full_viewing_keys.py"],
["t_key_bytes, sapling_fvk_bytes, orchard_fvk_bytes, unknown_fvk_typecode, unknown_fvk_bytes, unified_fvk, account"],
[null, "31d2c1d12a8424da7a571985c910090faead0ad937d79068627afae1916cdcc1eec372aa2402ce72611fc732e74e319c4552d3091be1cbd2e8559335b807c0b58ee82c943548d4e33f4fa307aab41c0b04851a21dbbc1592886b6da8b2c6be6d8f7c07fa1a2daf10cde137eff57d58f12f1fd9f8be045867249b549f05a90040", null, 65535, null, "757669657731687372306c783472376c68636e6b37733936753937636b757a746d677277736a67393732747168746c6c7464637270356a70786a7065727770663479376564727878306e6568336d657736646b767334766c65326e776861373876723035656865363474377337396a6378743667757a6c32766a6a6b7539753968776474663779387465377478653034657437736a39746a347a656b6e78776661787079396e706d327670356770397a767375757870783774706672786d7374397a30333371796e6c6e37706d7775666e6e746e34386532756d373265383478756b3574666366666a6d346a70653071376b34333867", 0],
["18d9614fc820905d042bb1ef9ca3f24988c7b3534201cfb1cd8dbf69b8250c1802820346fcec8ea1276db2e615b8ced2fe4cf7468c1ef453146195b4d7bc13a4dc", "d3956adb00da312ac8c253b0a1d481b7254a0d05613daf6d22438c966bb9794e233b0463e223176176a68e530cbeb46209d48bc65c9f6d234bec0e26729cd1e32a6bf11b9c6f0e29de42561cde1e991bd5c081326848ad9e86faba40950cb4ead0c13a68318b3762ece890782fcfdcb57f9d85429f316ef2003df564f147b28a", null, 65530, null, "7576696577316b746d3564383961666c63667a356576643061326e6d613961346a7270717161373337616a75386a70776a796863763868636a78756e6b636870356c70727071326b6d7961666734766e356775766e6b3278747a683737366b376137796e656c3439777366346771687761746e7234706c727a633666333539326d787133676d30646a6d796b6138713779726a6433746d73733566786b6c7365703378617167666b756e3361723366306b6674396e3236637434387a3232786d753670366d713974713535396378786e71326b61706671766775386d347a7878387076667230353875396e6d7a3577617a6c7565677932666570756563363438343970367778796574656a32756d6770746b3664676e787539397a676d357137613270726a6b616b717a3579726b76386535377766666a366b783271707471706377396a686638736c66386366666576653234303271356b753075333261636472", 1],
["25946f62c2fa7b2fecbcb64b6968912a6381ce3dc166d56a1d62f5a8d7551db503062caf06c89638774b698aaafc8c834fb2696f70c3cdc70f4528f4ddae53f9e1", "0fec4a4553bde5638ff97ac262635ddce4fd10e9b9eedb3bf2b60a4cb01730e1971db5d0921a68a3e4d78379076f47fb26388a874a16c14dd21cacfc0f14475e4381ed27a5002ea7a9c87339d66ba14675e7f806d9580b2e71c4d166c15243a57b2ce29b1c441fb68534de0441e5d75c2da24667372d9ae6db6cf63693f44d86", "6d7ec9955b8dff5191fc761490cc97bcc2c63ddc14afd56a308112e4e4ec5609df3f72e67b5648c5858f72fab03ea89b05840e1a0d47b74f72f003aa1b28ab2c9d6fa08983f17bde7e776e958ba2e6704012988fd89685e89ab0db811ade361a", 65532, "1a035587d5fb1a38e01d94903d3c3e0ad3360c1d3710acd20b183e31d49f25c9a138f49b1a537edcf04be34a9851a7af9db6990ed83dd64af3597c04323ea51b0052ad8084a8b9da948d320dadd64f5431e61ddf658d24ae67c22c8d1309131fc00fe7f235734276d38d47f1e191e00c7a1d48af046827591e9733a97fa6b679f3dc601d008285edcbdae69ce8fc1be4aac00ff2711ebd931de518856878f73476", "7576696577313071657a636b63646667746839357071707673647735637337683934786330363465657676393236726471343933377367787677347868777079733470336837663875346d68353579796b376d337a6d6873766d783376616668773934376e356a6861336b706c6334797465616133377539766436713833647277756d70326d6339327978746b71716878373639647563737a773068636a393373766463366b7664726c71646e67347a6c37797a747673647a767730756a37673436753839667a6473376a723373776b7535396e6633646d71763973617368346c7774766e3871737a303866347a726e6168613436736c733874736d6b7432666832386a7577707577366a3365373473673075386370336d387678676333616b636a65656b6b33776870713733676b676578683876763230336134326e656776376a643666326d34733863766c7a396e327561613236636b75633773306770346e64366b6e6e756771676b713968303965797576673876673775716a70373972343930653563713967743835376d6b35753667376837617866347179726432733863396a673679747a736471773670307277387038307135326874746e6b336168686838637477646a666c7a636d686c71687566303675686d756c766b75716b39753675756b6833307233723530736d7067783565676e7976376d353663687a6c6a67767971663065776e6c3936387779747738767137336b617a3979356d666a3833653239723861646a6a333533336d6574727171386d3238797930366376796676766b32746a66786b657866706b736a3830633777736e756d716874763470756b766b373861747066723277716a3463756574777a34686e336e75386475676863776735766c6768736e33737772393235747066756766656c30636174686e616a6335776a6c6a6768366a7a6d713674776c727a6e336a6b7a726c6835306b75643761726464366c35727464323339723376356e64376368336e6d396d75306e367277357a676a747132356d786b6864346a6d6d7a3739753234746e7463337a6773326b", 2],
["31ca8977878be1c933487df60c3791a55de9a322b8b45af0e41305770824b1c10355f9be451e1b6988c4faabd40323c29ba1ce488e5a87ffe35faa472d63d0d3f6", "d3956adb00da312ac8c253b0a1d481b7254a0d05613daf6d22438c966bb9794e233b0463e223176176a68e530cbeb46209d48bc65c9f6d234bec0e26729cd1e32a6bf11b9c6f0e29de42561cde1e991bd5c081326848ad9e86faba40950cb4ead0c13a68318b3762ece890782fcfdcb57f9d85429f316ef2003df564f147b28a", null, 65530, null, "757669657731617a35333434766d646b306433616472796574786e6370747864333375756c6666356371657763736c65707a366477653570383475727a6530676168683261396e6671373676337a68777465707a68323561646a756578756378347a73667735737567776d376b6638307470336865777a306677307a7a6e616b78646d7072766a746a6d3734387975646b7a6e786c756c36366e676435786c6e353968797263307a77706678346e6b646b6b7334747375726d3838393771367279667261393463717961346b6e6e646432746b3373766b67777737376e377665717263666679656a7a78763732716c7771776e30737a3935613966786e667063726538377a63666875673677366e716e763065636164766e386c6c366d726e32646a6b6678676e3479647263706d7337616b6a7834393478366b796c6d306d347267357361716e75363332307a3839646c6d34387470736175387a653639617a67", 1],
["dfd1fc193409ea556be894962da2c40ea9433217238a88c46f5e4faccf8aba000282115efffda4676b297ae8b7b37bb4a5bffb1de2d66e55827ff71355ebfdac49", "0fec4a4553bde5638ff97ac262635ddce4fd10e9b9eedb3bf2b60a4cb01730e1971db5d0921a68a3e4d78379076f47fb26388a874a16c14dd21cacfc0f14475e4381ed27a5002ea7a9c87339d66ba14675e7f806d9580b2e71c4d166c15243a57b2ce29b1c441fb68534de0441e5d75c2da24667372d9ae6db6cf63693f44d86", "6d7ec9955b8dff5191fc761490cc97bcc2c63ddc14afd56a308112e4e4ec5609df3f72e67b5648c5858f72fab03ea89b05840e1a0d47b74f72f003aa1b28ab2c9d6fa08983f17bde7e776e958ba2e6704012988fd89685e89ab0db811ade361a", 65532, "1a035587d5fb1a38e01d94903d3c3e0ad3360c1d3710acd20b183e31d49f25c9a138f49b1a537edcf04be34a9851a7af9db6990ed83dd64af3597c04323ea51b0052ad8084a8b9da948d320dadd64f5431e61ddf658d24ae67c22c8d1309131fc00fe7f235734276d38d47f1e191e00c7a1d48af046827591e9733a97fa6b679f3dc601d008285edcbdae69ce8fc1be4aac00ff2711ebd931de518856878f73476", "7576696577316376746c7078327571336a73766332646e346e396179656d657a6470657630796c7a386e38777171326b35366b717836686c746365667773673661797330737a7334616e6a766567726a67307073676e6733736b6e367368666571666b337334307761376b38616370646a6b6d3739366e6670793734686e786c386e6c3378717a676472636d7834726565306370666667786377356a717a736a346378656b716a6364636c756c6b306c3974327077676e6861617a326d6636616330776674646539637938383675616a6d6435637378386a3978657967797a356a6e726c647177367072396c78366373366a6c6a307a6e6479666664396c77747965307a38393336736e3535616863676a7970753534687a303339616a61756a6b3773323573636175646a617673303276347176776e6e6c6a6b6a3866336c723070717034646670737571347179303966646335727337653676763232716d787778717774357335766c30646e763833657537337938667270727065643830686c6d753374353961306a6e78766b78327968356470687164766e687a357474687a6a6138776b3436646b7a6b6e3767356a3979676139387971377830617373617665783867306b7076756e6737707133636e6c3366617a3332326676667a6e7739656b733274657966647536787377726a667476783233766535666b7971347534676e357364366c3470676d6e7579646170663778763373717536326a64376d666766326a7338637a687730746c643264617a7a797772797466786765716c7a66633561367772713234387730783232786b77367170383638677835717765357078736464376439756636747332636e326e753038767868687577666476346b6c7765377a686c346d64396532677172326a7a6463377a6e3868756764373375366d33376c7a39357867703070397673767434746738766370637572353632676a373461706a68387a656e37707961737272676c34307a6b6b7967767268663072726a71683577377938666839673733727965676a6467706332777735736875737237776b74", 2],
[null, null, "28e5ddf893be43d79f917d3cff13d54deee48ab63f4967398a48acc960ac4c3cba685b153d45626a826c2b8a86e96b89296dea08432d33263da7cedafe53da342f4a37c0c51c06e7ca551cf13b0370f9b74add9ffc949f6398e07d4647076c2e", 65535, null, "75766965773139353776777a6675353561616a76786c756c68786b6e716b7a39717979766636366c683630667233647873756a34717474766e79793975637166753070766c7867353973713367726a6865633374323079646e39377a673237347232676a6e6d78746c64666a327465613730376766347a39366774676d3238656b656435723736796b79366e66776d6c77776c6c3975656768783670706b7173616e7174366364336b6a32786564756a777137647234636e6e346d6871676a33307464", 3],
[null, null, "0572a55aa8d307c5be909a8f4ae2d9307292b9f7ba7ba7657193fbfa3cba7104cab2e3d78fb6bcb1c824f0b61c08185c0efb62e502dea31ec88145d295be4214a0b79dd0caa56c5fb2a53b78597c1be7663c5191fe1542e72d903273e653d901", 65530, "596555ed9494c6ac893c49723833ec8926c1039586a7afcf4a0d9c731e985d9958", "7576696577316365796b386777616e71766a7475656863636437306c73617576777a6c7074727774616435346c327a786378646876716d7671756c68757174656d35346c7638366e6872647275686e776c787535396b39763266637268657a733433756337723275766d716e6d71796873677a766d776b35746770377167717235646761636e73386563346873786c6a63357a6b36776a797867716b6b6a776b653534376333763061763230676d32353873633537786d70366371617974346b34617a7834793737387166667467666b3279633366336c7a6e766e763077333036756a643870686a30676e6e393872656c6a71386e756e6763636a717478", 4],
[null, "3ff6f670b0a26f3dc1830e2414073de3ea036168c8036ec48261af13c29172c09e1f074a421b528a09ccc7c8a4c5e6e770fae6cd125bb4eb4566c200cef5d29689cd83d3ef915f499a88c78a8a4ac743d6d6f5d08f3f0a5debde2285d65e7292b5062525f7f20266b320ed827ca3ed009e9b3affeed117d3b52b95cffb1b4a80", null, 65533, null, "7576696577316173353235617239377366663439706361336179366432656e74756771746e377537707979666d333676737539347161656b667a7a6c3573383330346779773238707030377a38327768773435747a307237767a64766e753068383067663838383838307864357030707a613967396c6a3479777a6a736d357872387472376b74666b36687378327830727478776d7867736878756172716a3073356e723875323272707270726578766a6868636e3071323872766c326b6c72777879326c6c73347a6b6b666461763330667a3474367575336a75636661766666746e6b6770657377706537683461356a6832726432", 5],
[null, "b67bf6b6b0ff52e3da1e08a0dcae3b79197a3120ff41070e8ed7f7e08b8ebb07a9e0b74ce5844fed794b7e82a776db1f42570fa408be5c25e01088d8bf4ecb591f8f662498bb03f94209d7b2d298882ec70cfd56dfced731cdb0d442a9df3a8923c3933f5dc4e03cf89bb59f5f50f1fd9a0271eb44b97dc43ab0bb6a224da608", "48e057b53fc1c94392f04b631c1f4696fdefb74fb91ad813a91fd70290845e09a1d6cb1108385b9c20238733b3ca1b3586c5353ea6b323ad37413d001770c20b325f2e53aecdac5d36cb6585e402e96f9f079d3b888add2e6037f0a09ea8272f", 65534, null, "757669657731797061636d6c33656e387636733235376b6d766d3577677973706d34396b38336a32386d7137333071306338736b666a323374716e786633776576687574386b3873376e327874673964767374346d3634306a71307a6439656a39396e646d78307666646e706b65756736783838737732636a746d30303573716b676a64613337666b706e6d353835647377653236686c3367766e713671737a65676c337534676e38753771713732733030346771386d386d34796872746e747039656367686679756574647937356b6d75387a6b6c6d7361797466346a367867747466353763707a7678736b76796535777037307130647170756e713364326e7070376a356472717a756838763861333270676e66636d736d36646d7a39386e3233766c3077796a326438376e35386a646e337234647a376538633463723936666a7977307171766d386b7566616c6b3668306338397a68737863747477346e6d7a3036646b776c7066787073633577353673346c61347171387965746a7938616838726c38326c776b6467323834737a78", 6],
[null, "81ff8c94727f1f7d181cdad622827ea15c70aed21cda43c29b35939286e66602a7c993124d8bb30976ec559a4e2d9d2432decc44c81599e88ccea1e48f640517f79882b4567e7b4efb9edfb554bb284e76d0a324a3b2c5ba77bacc50af1788bd294ef2e7123660dd5154dc0653885b521d3687a19803f575e4e54f2229193406", "0b264d58dfe23d503b5ef1493e0cd388193dd20fe0131209e28fdff27d494a0ba5e5d9e4e5daf7f3d471bbd7209440a6eb1a5677cd06c211546a025052e1a806630c2b4ddaa21db96eb31ac1d1bbb974305b2396d66b9bb802cf9f473ab14f25", 65534, null, "757669657731796d613463637579323764686d6e7a633377363563687273357175397436637379647a6674376b6561686a32396e7a74763630617135767273786b78727879653671617965353975637a6a78773476757035357a717275773371686c703039713730613030386e76776e383038756b7268756b656e65366e6372337a6170336a6a327766633970376768766165656c76363677666d30746761396b7233726b6361717572683239647364796a35677a7837303930796e796b323737726636733437326b3338616835793637617838676a6a303977687077306a783978656a656a677263756b3761396575686c6470636d363330326377766d616671716376366a666a6e66766838646c377336376d6e34686e6b726a756c793676676e76776c77383433657373616865306175763634323830667867637a3470387374787566736e61633430393663353036386d717a6774686b7161766a787164356d6a72616a777238756e6e6e343835786b64386c72306d736b716d7536726538367279787539717936667071617864783879", 7],
[null, null, "5a597f1414b10558f5c76406afb5a025a8abc02cf46738b7a15933663f9f1f1c1a4e6a217bafda3180c08eff58d76fd33a22cbbb485334b6e5d4b68e0119331e8fb43b7d91f9579249a95ef11c500b779baaa35cda27a146438f19bb48575e1b", 65534, null, "757669657731673230677072656b666336746c61377564776d716c35633470346e643237723066727876676b75737266306736306577663273356c30397338726730336e767974366d676b7365666a616e363030783936377663796163786674343572366a3578397a75736176776538636b6b776e3434663434647664333871376a36713538656a6373747837376e356e72646b6a3570737968366430716d616630367663336a613373396b68307277387a67706d7730737674666567386a77383968", 8],
["12b56da9c382857deecc40a98d5f2935395ee4762dd21afdbb5d47fa9a6dd984039b50a122f26ede2e13ff63b130c90f4c0f951ae8a81ddc1a4c987754f144c536", "65aeee89ce971199487ac959c2960cee07477bad7d07a4c71a363894d671edc7090213b1b25d74d9d07cbe5b5034248bad5bc5394972c8532ea24b3f3887f9e6d312ca8ed244af57ce0412209ba3d537bcac08bf7f64744100dafac55fb25629204f19a123bdbbba7159510e52376938fb893ebdadde04d5f0646a3ad0f4cbc6", "20f8c2edbe19901c0d1b5cc7ab185e67354511bfc5174fe6bc0e6362c5880b28fabbf237258f8d03b200ad7fe0f3fa7e80e628f2b745dc9983b038c3a81f8237b6654db322e68436a972c6d3bc56e5560fb8658055524a11d6ee62e5a7d7a516", 65534, null, "757669657731716e3573797577353575336c3479786b397a797063306e65736c78793236753430676e6e636a636d617434387833777939347070736a3934366d6771326a7776326b66386339687933397368683365796b377675733438727670397a6d667867347865637665706e6d716c6c6c7174323265773668306b7761397036656b633874726b6475736c787a357375683367383078677a6c383337666632797835763867723538663032767667777530397a346a6d6a6a73796c363278326b726c357967796e766a6c7170387a6877376e716874757461726a6374396a736b7879307a6c3771337a70796d3872367a7137657434743038646b6332637a7471336c677330786a6c796a7266727670356664726d6e7467756373376830646b7838343770706538677a6e39643232783379667767663277787032736e657a6b6635386e6b356d7275367365656d7135616c3973746b756478363830397075376674633775723934727a307165717a76336e646c33736b64396c6d65657470667932616d3664666e6b6c7765616573636363333361396163673030707a32323274377774357775323064646a68746579777a76766b3567723835713364346576657672387038786d3377386d707578613976347033337979637333767a3233787677736d39726d676c39377a3477306432796564357963753537727336", 9]
["1290d6d19387d7edd52a7ffaf3e104731f7695d03b45cedcc20f3d002d5c296d0344d2f1d0e01b9070d26795599a6e572541e04d9e4bc2054264cf31772014d7fa", "65aeee89ce971199487ac959c2960cee07477bad7d07a4c71a363894d671edc7090213b1b25d74d9d07cbe5b5034248bad5bc5394972c8532ea24b3f3887f9e6d312ca8ed244af57ce0412209ba3d537bcac08bf7f64744100dafac55fb25629204f19a123bdbbba7159510e52376938fb893ebdadde04d5f0646a3ad0f4cbc6", "20f8c2edbe19901c0d1b5cc7ab185e67354511bfc5174fe6bc0e6362c5880b28fabbf237258f8d03b200ad7fe0f3fa7e80e628f2b745dc9983b038c3a81f8237b6654db322e68436a972c6d3bc56e5560fb8658055524a11d6ee62e5a7d7a516", 65534, null, "75766965773163796c677a666c7072767334366a676c68746b70656b7439386177787270397a30647176686e6336637563766e37666c7772616638747471666d3667333875307561336a636d6b7139723333716a676774646763326371396e74736c38337a6c3971726d6a346830656c7365706c66367878777474706c77683671746d7a71387a70613434646372736c736c7668757261756c78686e77666c76353634617068796a6a756771327434386e3965723261737a716766787a7a6b393374683335346474686e61677636327572306770367a63637033777265646c6d65797668636336743034656c61793270377061777465347364743674756565617a76776e75346d65666e75796379716c323738676c65757179343675393932357777616b3472373637747a6c3670646c6c6a756d616c6a393074676a707232393837336d7535366635773538663430747167636e73723367676761356e357a6d647a79776634776b7a386a367877776868667063666a763532656b6538726d673775306a706c743879667370327a6e7871306d39763838713435736b723878396775746768377968646c633567326d716b6a753361336e3830713935687037357037667376753979773775366a61346879326e7765616c637530773373673775706178647a30673335667837787664783372676c61617276783875377574", 9]
]

View File

@ -2,13 +2,13 @@
["From https://github.com/zcash-hackworks/zcash-test-vectors/blob/master/unified_incoming_viewing_keys.py"],
["t_key_bytes, sapling_ivk_bytes, orchard_ivk_bytes, unknown_ivk_typecode, unknown_ivk_bytes, unified_ivk, account"],
[null, "8f7c07fa1a2daf10cde137eff57d58f12f1fd9f8be045867249b549f05a90040d289d8ebf0f32dcd0ff91b2f80b60856afc2f325035e1facf5043890249b8901", null, 65535, null, "7569766b3133686632747565353361636b39343338666132336736393367647375746c65677530676b65306d38366d6b3337307278367972373476793732726330767566766678686e34706d6d6d39663879376a703074386133666534646668737361766766633375687670687a746c6873327a7538706672633264677965396d307a703230753473367671767535", 0],
["18d9614fc820905d042bb1ef9ca3f24988c7b3534201cfb1cd8dbf69b8250c1802820346fcec8ea1276db2e615b8ced2fe4cf7468c1ef453146195b4d7bc13a4dc", "d0c13a68318b3762ece890782fcfdcb57f9d85429f316ef2003df564f147b28af71c77c659a641f59a2c8ed0df0c55febd8243a69f09cc39f6024deeeb30fc00", null, 65530, null, "7569766b317273786e376778367a7463657a36727578383636677636636e396868707872686d327964617a3971656665746a70646379387378656171766c6d376c306a766c3372677179786c6e6575337239687875727478366c706d346a74786c66716a68757261727375387a647979766c653779796b72676a73686d61363565616d783374397132667a376d6665686c6b6870796e767237356636653575346e3768653968763263746d3872366876776e373370377735757568796e7379647374737967746e727835397972307a343372326a326d6e67616461727737787368776a7664387176366b7577656530756466376368657a743775", 1],
["25946f62c2fa7b2fecbcb64b6968912a6381ce3dc166d56a1d62f5a8d7551db503062caf06c89638774b698aaafc8c834fb2696f70c3cdc70f4528f4ddae53f9e1", "7b2ce29b1c441fb68534de0441e5d75c2da24667372d9ae6db6cf63693f44d86bcc4dc4510f83aef5a266ca049e832eb81f06c8a410be94613c267c8fd87b407", "72aa9e7146f17e7d8f99b0dddc4ea5216a7c6b53e06b572017baab0bae1cabdb3b5acb7172df289885220237304722e4677099c6dcdc2ee88a471401d404f914", 65532, "1a035587d5fb1a38e01d94903d3c3e0ad3360c1d3710acd20b183e31d49f25c9a138f49b1a537edcf04be34a9851a7af9db6990ed83dd64af3597c04323ea51b0052ad8084a8b9da948d320dadd64f5431e61ddf658d24ae67c22c8d1309131fc00fe7f235734276d38d47f1e191e00c7a1d48af046827591e9733a97fa6b679f3dc601d008285edcbdae69ce8fc1be4aac00ff2711ebd931de518856878f73476", "7569766b313865756475706d353739687373647866397165343835387579346337663076796c717464387275616a366a786a683234397671667863797a6e737366396874756d65686166393068326b7a32787934757063356e6c38306d6d6a727935786c6e6530397275726a74376e6d78776e78347576643468307739306537337763346c396d6167326333336674776a797276666d75646a7470717932757861707a6c7337657a776a77396e736d393871683936776538677979326e32646e787766786d767a65646775777770366c726871706c7675716470727473716b37703538793778616b36706674386c30653478657336776d306b32336b6b6e6173646e306d653979637779637673687771713471707a727a6a75756c6b386e75746d306d7666686b6a75717872636c7077706377766e777768327a756332617a667139703236676b76676e353067716b7632376d7479373333387134787777326e687070797234686c33356e6c343275716a3076347770786c7474323030637172386d7265673836706173647837353234647a616676377465617979713072756e716a663277336a6465363766386b7a30346a766b636378686b39367a6e656d6d66376e66346d36666d7375303630376e38306466676a307a68686367797a74336475367630657475346437326732373339653074653939657463306c3664706177787735763639383064383678677065616e6c36377866363564647a343576643776776c6c746d7437786b67386a797a34756461346c39683730366d66646178386b6b6c34356d6c74763772397173726b6b73686330396a3835763579787468336671776e346c687a3874", 2],
["8247a8bb70d21b1aa8b19e32cda15910f54d87e00832cf7f29a377ad3b632af6024811eb476da77db92d1ac54f3eb7511e0c483325911536546ea97e02daa3781e", "d0c13a68318b3762ece890782fcfdcb57f9d85429f316ef2003df564f147b28af71c77c659a641f59a2c8ed0df0c55febd8243a69f09cc39f6024deeeb30fc00", null, 65530, null, "7569766b316e727076383537386b6179327465337532757a61797472376c3870737077717a356b346d387375387a7766326161356c796a796d6864346b6d7035737165616b397a79746473393373793776777639336d65796b6c6a35637436386472673073376534636d70376171736d7a387a79306436396a323435683775643268776574766b786e397968343461686361657a3535666d72656c346577616674307573687361726d3479633634677a346566763939376b6c706e63727033366d32793035736d35357777337a64386d7370387878376d793767306e397a6367676a7477723478643230306b6d7a646d6d6a6a633639376c3379", 1],
["2d12ebf22e7033c50bbcc9cfffae0d2bcbaa163d3a1d5c6169ddc8ef7858e3cb02be3c6280a929eb7d606883ff2fea9e9ebdbbc1e35eda37d111262d6a90ec7320", "7b2ce29b1c441fb68534de0441e5d75c2da24667372d9ae6db6cf63693f44d86bcc4dc4510f83aef5a266ca049e832eb81f06c8a410be94613c267c8fd87b407", "72aa9e7146f17e7d8f99b0dddc4ea5216a7c6b53e06b572017baab0bae1cabdb3b5acb7172df289885220237304722e4677099c6dcdc2ee88a471401d404f914", 65532, "1a035587d5fb1a38e01d94903d3c3e0ad3360c1d3710acd20b183e31d49f25c9a138f49b1a537edcf04be34a9851a7af9db6990ed83dd64af3597c04323ea51b0052ad8084a8b9da948d320dadd64f5431e61ddf658d24ae67c22c8d1309131fc00fe7f235734276d38d47f1e191e00c7a1d48af046827591e9733a97fa6b679f3dc601d008285edcbdae69ce8fc1be4aac00ff2711ebd931de518856878f73476", "7569766b3178727366347674676538646363746a7a7435793365666572667830757a6d6c637134363568363763663874336b387873616c7461356c796e6573643675716d6a3379687a74643738306b38346e3671637664357a72616a7275796130326d777661783671636639676677676875327667726c6c30656c3439376a753678396334326b71766b36666c33786b6c7632397933326d6776713574386c7579323374757a6a6c7964747730686d77323239756e36377a636b733373727963386c76706d77367a647a39716c6d38756a66666e78346361727436687a74337435376d346e333838746666716b3670646678386d3034777a6132366e366176376639746e6173657177356d6a7836367971743032667a646765716c6b613368686675796d70763676686d347777336635337330716a677734756c7472306e37323776756e376b6d747735613973336435396b356b673776326e763668687461363432326d7863617a34726e33636d3833786e6a707a3978357964706e76673974783675387937303938676832327266633474356a786e6e3071373967786a717070386c663933366c7435386e32647239353075683938717a6e786b646b3932773333336e306336327a71747534676c76787864337138703833356a7a6b37307276683066393871756d387132796c6d3830796a7977767a327368323471736b75386a65656c656375686c337072396775366a7661766630776e32686475646136757065686e6d6e7878646e3536667372646b307a32766c726375613970756e616c716a64723233643266723979787a6e6d7734783664783976747161653274387964306e6b787268663071", 2],
[null, null, "34dfb71e7f7b58a60552cd3428b695ad88336f7dbe4f4996a5c3098b0bae492b8b8263ee41f5939a67876e77b9e52f9887127fa16d8e02ab1432fee2986be721", 65535, null, "7569766b31676b78303576393964667a64347032326e7263397a336c7939613463736a7274787a38786d32307a79676361386536686b676a366b616777783966326c676d6c7872326b776567656e797975686e636e637a6b6b3336653737683576773371353472686c347671336a616d3937727978637530377a616577776d7979746e6e786b6571716a71376d7165", 3],
[null, null, "8ad93cb898ca518f9b104752e92dd888f0cfefa89e961424fc238ff81eea51a2cc2321ff81d085ca03f0d46891521433e459165f1eb1712633bdfea6ea028131", 65530, "596555ed9494c6ac893c49723833ec8926c1039586a7afcf4a0d9c731e985d9958", "7569766b316e65676b346c6d7634677479717a3471727a366c6a6a363673783871766c676a3763376d776671666b7a78353730743361793066716d3539337a64307877786866646e6763326666366c337a3767336c387a3232683972736a6b686b6834723876336d7272376b6d6b70676564746e6d6b3964777a7a6b703934347471727970336d786e397565657374307878396537757767616b3978656137647a3263653632636d76797178737a6739396c37386e366a347430723539336a7179756773376a61796e79", 4],
[null, "b5062525f7f20266b320ed827ca3ed009e9b3affeed117d3b52b95cffb1b4a805b21d04b675f4bee3df18f995152d7ac7a08010a490f0f7e91ad51fb71f81100", null, 65533, null, "7569766b316c7634346170386a6132666e38716467763730756e75386377733475366430357871366c7937723635646b7a323833756435337a796e3732366d6c647367773265386777657261366376346e7a6578737374727173746339387738783579646737793337656b357a65677336687873656761346e7074616c61706b39726a353763686e73756b76746470", 5],
[null, "23c3933f5dc4e03cf89bb59f5f50f1fd9a0271eb44b97dc43ab0bb6a224da6089a387edda4c57191b4483e6bf4f356c7c2b2d9078cdabc4337d4b5a14a062504", "bb2244678a2aa718cd49f7f510d76422c948ef4d238e301c61aed5bd8db90ba5df323b4952e07c4f320e94499d5baede4f7409636314bf85227fb18111472525", 65534, null, "7569766b31756d6c3577786c3776337764703579767966396434686a6d6b7072767738773532366a757536746b7568746a7a7138336e6d616366796539646c6b6d6666737033616d336b7375636b61776a6b6a6a6e67346b346a33726674786172656a7a336567737336717736726874353638347563667334763461647738767675777565616b706d6e783838656a33637163797138647378776a36737a786176356c757a65706c67616830346a7834336e6567767a6a6d666a676c307774677a6b7833737078356c397079327332746e377168656d7776306833376879756a35376a776538706b687037673767396d716b71396a756d68", 6],
[null, "294ef2e7123660dd5154dc0653885b521d3687a19803f575e4e54f22291934064ed7b9173a585c0b1639fffc3c676867c487f715ec1d8051efcd023d59ad4806", "cdf74b6237c88977205a7114da58ca3c0f0a008c867f9d3be2a741360241c576d459a06cfaec23b4533f0bd1883443e05faafad8a0610f91790811e2a7d5e238", 65534, null, "7569766b3137677138756a793761796a36337363746d6c7433706d6d6d786b7038356767346a7334306a636c7230366a6a76736c303063616b66707461716373716676716d717675396b79657639686367326d77793063336d796879366675676434667668366e793939306a33677568386a703439637472633564346b636d7375797572676c3761716b346e35366d76763479657670376e66676c6832777632657234747574346d7863656574796a7833736466666c66763233716374736d33386664617838657535727777667a716d686876616d796178613667686361636c7034736b6e756b726e366a6673676c737267797135657633", 7],
[null, null, "72ce915da8953d5994a022a0466bc8a14d2643345a0d14a06f07d0c0bab9e7ab1086dc2a5f883475a157fa6e7ef03afc7ab16c92ffa86e11f95c0a283c77511c", 65534, null, "7569766b31336d377970666b75687039636e396d666c6a74787165326d6d736a6e326666367637676b39737361787a6d6c6a30333637327476326e3737783777756336643070707337746a74747867796b737063676a666d766865386d346479676b366d6430346a6d7a766a6d39636a64636430357a73336679686867366632726e73636e72667a73673963667738", 8],
["12b56da9c382857deecc40a98d5f2935395ee4762dd21afdbb5d47fa9a6dd984039b50a122f26ede2e13ff63b130c90f4c0f951ae8a81ddc1a4c987754f144c536", "204f19a123bdbbba7159510e52376938fb893ebdadde04d5f0646a3ad0f4cbc67c74277a2206cf8ecbfc565cfb44765a6fbf3b66069f9d75b914c01345af8702", "82cc9d79742fe5ae9a142b9336a98677b154fe20401eb18998dbed915b0453ce6eb1b28062dbe644840487082089bf08e1f549a53226084252f9a7f98e41e820", 65534, null, "7569766b31647172686e666339676368716b6c686e6d6e6a3936646a713364383238616e683063393570797664383537303735396a726838703379726c7970686866643832646a35356b7670646b76776c72376e3371306a33686b30306334396e786b6b30337339356d67766d656c373266756d7a7761617a327a673839667738686e33373373356435713973647633707a333468756d39783938356d35336e6a35736663776b366173307775757973786135327a32346a7574646e6e786133633732363878707134346a3763347435766838736471716571386e6e7971726d337973307972356c6a3564686373667277656d636477396c3668366d666337677638686d646e6e6a6b326778716435686c327630727174357972353837776c713778366e66617873376d64667734356437346535707a78307671307a67367532706d383037786536787a6a71637435656e36613834716d647077666a7478756a6a7a75", 9]
["2a5fe160817c62b0295912725e72430d18e3572cb6eb2b031599c63a4449f56702679e6435568e0968502404d412744aa3b7b12f1afa9e7233f7425204e428e943", "204f19a123bdbbba7159510e52376938fb893ebdadde04d5f0646a3ad0f4cbc67c74277a2206cf8ecbfc565cfb44765a6fbf3b66069f9d75b914c01345af8702", "82cc9d79742fe5ae9a142b9336a98677b154fe20401eb18998dbed915b0453ce6eb1b28062dbe644840487082089bf08e1f549a53226084252f9a7f98e41e820", 65534, null, "7569766b3133356474393374756c79676a7a337a67666834303666636d616a726a727239637a767a383466396d66706a353032376b6b763979687a6c68726c6e6536336c6a74336a796639786e37366e71373677387779393975683578346c6e6b7874396836367537777972723977676730757565306a6d36397235387837637176616175396571386a783563703774746e39387277366a6b363961707138336a786b3863786e336876366c6d7539366d6a35797a366a7a6c79676c30396c7463337578303230666a68326b686378797a6c6b6e6c746a747766796a7574783739766536766b6c3768716333373839646c386774737a7878777670616371707335397a7574666872716b3875676d3563336b6b7a72657139353573386438727030647163717a39356877377136666467653870666463356a37683261733574786b687538766d6d34336e646b6172787065756c7a63676d7739667a396b376872616776", 9]
]

View File

@ -0,0 +1,123 @@
#!/usr/bin/env python3
import sys; assert sys.version_info[0] >= 3, "Python 3 required."
import hashlib
import hmac
from secp256k1 import PrivateKey, PublicKey
from .zip_0316 import derive_ovks
from ..hd_common import ZCASH_MAIN_COINTYPE, hardened
from ..output import render_args, render_tv
from ..utils import i2leosp
class ExtendedSecretKey:
def __init__(self, sk, chaincode):
assert isinstance(sk, PrivateKey)
assert len(chaincode) == 32
self.sk = sk
self.chaincode = chaincode
@classmethod
def master(cls, S):
I = hmac.digest(b'Bitcoin seed', S, 'sha512')
I_L = I[:32]
I_R = I[32:]
sk = PrivateKey(I_L, True)
return cls(sk, I_R)
def __bytes__(self):
return self.chaincode + self.sk.private_key
def public_key(self):
return ExtendedPublicKey(self.sk.pubkey, self.chaincode)
def child(self, i):
assert 0 <= i and i <= 0xFFFFFFFF
if i >= 0x80000000:
I = hmac.digest(self.chaincode, b'\x00' + self.sk.private_key + i2leosp(32, i), 'sha512')
else:
I = hmac.digest(self.chaincode, self.sk.pubkey.serialize(compressed=True) + i2leosp(32, i), 'sha512')
I_L = I[:32]
I_R = I[32:]
sk_i = PrivateKey(self.sk.tweak_add(I_L), True)
return self.__class__(sk_i, I_R)
class ExtendedPublicKey:
def __init__(self, pk, chaincode):
assert isinstance(pk, PublicKey)
assert len(chaincode) == 32
self.pk = pk
self.chaincode = chaincode
def pubkey_bytes(self):
pk_bytes = self.pk.serialize(compressed=True)
assert len(pk_bytes) == 33
assert pk_bytes[0] in (0x02, 0x03)
return pk_bytes
def __bytes__(self):
return self.chaincode + self.pubkey_bytes()
def address(self):
ripemd160 = hashlib.new('ripemd160')
ripemd160.update(hashlib.sha256(self.pubkey_bytes()).digest())
return ripemd160.digest()
def child(self, i):
assert 0 <= i and i <= 0xFFFFFFFF
assert i < 0x80000000, "cannot derive a hardened child from a public key"
I = hmac.digest(self.chaincode, self.pk.serialize(compressed=True) + i2leosp(32, i), 'sha512')
I_L = I[:32]
I_R = I[32:]
pk_i = self.pk.tweak_add(I_L)
return self.__class__(pk_i, I_R)
def derive_ovks(self):
return derive_ovks(self.chaincode, self.pk.serialize(compressed=True))
def main():
args = render_args()
seed = bytes(range(32))
root_key = ExtendedSecretKey.master(seed)
purpose_key = root_key.child(hardened(44))
coin_key = purpose_key.child(hardened(ZCASH_MAIN_COINTYPE))
test_vectors = []
for account in range(10):
account_key = coin_key.child(hardened(account))
pubkey = account_key.public_key()
(external_ovk, internal_ovk) = pubkey.derive_ovks()
test_vectors.append({
'c' : pubkey.chaincode,
'pk': pubkey.pk.serialize(compressed=True),
'address': pubkey.address(),
'external_ovk': external_ovk,
'internal_ovk': internal_ovk,
'account': account,
})
render_tv(
args,
'bip_0032',
(
('c', '[u8; 32]'),
('pk', '[u8; 33]'),
('address', '[u8; 20]'),
('external_ovk', '[u8; 32]'),
('internal_ovk', '[u8; 32]'),
('account', 'u32'),
),
test_vectors,
)
if __file__ == '__main__':
main()

View File

@ -13,6 +13,7 @@ from .zc_utils import write_compact_size, parse_compact_size
from .f4jumble import f4jumble, f4jumble_inv
from .sapling import key_components as sapling_key_components, zip32 as sapling_zip32
from .orchard import key_components as orchard_key_components
from .transparent import bip_0032
from .hd_common import ZCASH_MAIN_COINTYPE, hardened
from .unified_encoding import encode_unified, decode_unified
from .unified_encoding import P2PKH_ITEM, P2SH_ITEM, SAPLING_ITEM, ORCHARD_ITEM
@ -28,7 +29,10 @@ def main():
for account in range(0, 10):
has_t_addr = rand.bool()
if has_t_addr:
t_addr = b"".join([rand.b(20)])
# This randomness is only used if this UA will have a P2SH key.
# If it will have a P2PKH key, it gets overwritten below (after
# we've decided on the diversifier index).
t_addr = rand.b(20)
else:
t_addr = None
@ -63,6 +67,16 @@ def main():
orchard_raw_addr = None
is_p2pkh = rand.bool()
if has_t_addr and is_p2pkh:
root_key = bip_0032.ExtendedSecretKey.master(seed)
purpose_key = root_key.child(hardened(44))
coin_key = purpose_key.child(hardened(ZCASH_MAIN_COINTYPE))
account_key = coin_key.child(hardened(account))
external_key = account_key.child(0)
index_key = account_key.child(j)
index_pubkey = index_key.public_key()
t_addr = index_pubkey.address()
receivers = [
(ORCHARD_ITEM, orchard_raw_addr),
(SAPLING_ITEM, sapling_raw_addr),

View File

@ -3,13 +3,11 @@ import sys; assert sys.version_info[0] >= 3, "Python 3 required."
from random import Random
from cryptography.hazmat.primitives.asymmetric import ec
from cryptography.hazmat.primitives.serialization import PublicFormat, Encoding
from .output import render_args, render_tv, Some
from .rand import Rand, randbytes
from .orchard import key_components as orchard_key_components
from .sapling import zip32 as sapling_zip32
from .transparent import bip_0032
from .hd_common import ZCASH_MAIN_COINTYPE, hardened
from .unified_encoding import encode_unified, decode_unified
from .unified_encoding import P2PKH_ITEM, SAPLING_ITEM, ORCHARD_ITEM
@ -27,13 +25,18 @@ def main():
for account in range(0, 10):
has_t_key = rand.bool()
if has_t_key:
c = rand.b(32)
privkey = ec.derive_private_key(int.from_bytes(rand.b(32), 'little'), ec.SECP256K1())
pubkey = privkey.public_key()
pubkey_bytes = pubkey.public_bytes(Encoding.X962, PublicFormat.CompressedPoint)
assert len(pubkey_bytes) == 33
assert pubkey_bytes[0] in (0x02, 0x03)
t_key_bytes = c + pubkey_bytes
rand.b(32) # discard
rand.b(32) # discard
# <https://zips.z.cash/zip-0316#encoding-of-unified-full-incoming-viewing-keys>
# "However, the [Transparent P2PKH] FVK uses the key at the Account level, i.e.
# at path m/44'/coin_type'/account', while the IVK uses the external (non-change)
# child key at the Change level, i.e. at path m/44'/coin_type'/account'/0."
root_key = bip_0032.ExtendedSecretKey.master(seed)
purpose_key = root_key.child(hardened(44))
coin_key = purpose_key.child(hardened(ZCASH_MAIN_COINTYPE))
account_key = coin_key.child(hardened(account))
t_key_bytes = bytes(account_key.public_key())
else:
t_key_bytes = None

View File

@ -3,13 +3,11 @@ import sys; assert sys.version_info[0] >= 3, "Python 3 required."
from random import Random
from cryptography.hazmat.primitives.asymmetric import ec
from cryptography.hazmat.primitives.serialization import PublicFormat, Encoding
from .output import render_args, render_tv, Some
from .rand import Rand, randbytes
from .orchard import key_components as orchard_key_components
from .sapling import zip32 as sapling_zip32
from .transparent import bip_0032
from .hd_common import ZCASH_MAIN_COINTYPE, hardened
from .unified_encoding import encode_unified, decode_unified
from .unified_encoding import P2PKH_ITEM, SAPLING_ITEM, ORCHARD_ITEM
@ -27,13 +25,19 @@ def main():
for account in range(0, 10):
has_t_key = rand.bool()
if has_t_key:
c = rand.b(32)
privkey = ec.derive_private_key(int.from_bytes(rand.b(32), 'little'), ec.SECP256K1())
pubkey = privkey.public_key()
pubkey_bytes = pubkey.public_bytes(Encoding.X962, PublicFormat.CompressedPoint)
assert len(pubkey_bytes) == 33
assert pubkey_bytes[0] in (0x02, 0x03)
t_key_bytes = c + pubkey_bytes
rand.b(32) # discard
rand.b(32) # discard
# <https://zips.z.cash/zip-0316#encoding-of-unified-full-incoming-viewing-keys>
# "However, the [Transparent P2PKH] FVK uses the key at the Account level, i.e.
# at path m/44'/coin_type'/account', while the IVK uses the external (non-change)
# child key at the Change level, i.e. at path m/44'/coin_type'/account'/0."
root_key = bip_0032.ExtendedSecretKey.master(seed)
purpose_key = root_key.child(hardened(44))
coin_key = purpose_key.child(hardened(ZCASH_MAIN_COINTYPE))
account_key = coin_key.child(hardened(account))
external_key = account_key.child(0)
t_key_bytes = bytes(external_key.public_key())
else:
t_key_bytes = None