From bfe32d7d5fb922c88f0af4ce9c7c7ca0ab06cbd8 Mon Sep 17 00:00:00 2001 From: str4d Date: Mon, 24 May 2021 22:20:07 +0000 Subject: [PATCH] deploy: 0abd60188c8af92f676711ecc2dd8656d8bb112b --- zcash-core-dag.svg | 1185 ++++++++++++++++++++++---------------------- 1 file changed, 580 insertions(+), 605 deletions(-) diff --git a/zcash-core-dag.svg b/zcash-core-dag.svg index 3e5c7fe4..3c61e1b9 100644 --- a/zcash-core-dag.svg +++ b/zcash-core-dag.svg @@ -4,10 +4,10 @@ - - - + + + zcash/librustzcash#226 @@ -39,10 +39,10 @@ zcash/zcash#4190 - -zcash/zcash#4190 -TZE: implement zcashd -'host' logic. + +zcash/zcash#4190 +TZE: implement zcashd +'host' logic. @@ -50,10 +50,10 @@ zcash/halo2#73 - -zcash/halo2#73 -Implement Sinsemilla -gadget + +zcash/halo2#73 +Implement Sinsemilla +gadget @@ -61,96 +61,96 @@ zcash/orchard#4 - -zcash/orchard#4 -Implement the Action -circuit + +zcash/orchard#4 +Implement the Action +circuit zcash/halo2#73->zcash/orchard#4 - - + + zcash/librustzcash#320 - -zcash/librustzcash#320 -Implement Orchard as a -future NU feature + +zcash/librustzcash#320 +Implement Orchard as a +future NU feature zcash/orchard#4->zcash/librustzcash#320 - - + + zcash/orchard#35 - -zcash/orchard#35 -Transaction building -support + +zcash/orchard#35 +Transaction building +support zcash/orchard#4->zcash/orchard#35 - - + + zcash/zcash#5021 - -zcash/zcash#5021 -Add Orchard support to -transaction builder + +zcash/zcash#5021 +Add Orchard support to +transaction builder zcash/orchard#35->zcash/zcash#5021 - - + + zcash/zcash#5023 - -zcash/zcash#5023 -Implement support for -Orchard shielded coinbase -output + +zcash/zcash#5023 +Implement support for +Orchard shielded coinbase +output zcash/zcash#5021->zcash/zcash#5023 - - + + zcash/zcash#4714 - -zcash/zcash#4714 -[Orchard] Encoding of -Halo 2 proofs + +zcash/zcash#4714 +[Orchard] Encoding of +Halo 2 proofs @@ -158,50 +158,50 @@ zcash/zcash#4707 - -zcash/zcash#4707 -[Orchard] Consensus -specification + +zcash/zcash#4707 +[Orchard] Consensus +specification zcash/zcash#4714->zcash/zcash#4707 - - + + zcash/zcash#4707->zcash/librustzcash#320 - - + + zcash/zcash#5024 - -zcash/zcash#5024 -Implement Orchard -consensus rules + +zcash/zcash#5024 +Implement Orchard +consensus rules zcash/zcash#4707->zcash/zcash#5024 - - + + zcash/zcash#4819 - -zcash/zcash#4819 -Backport upstream PRs -that remove Boost usage + +zcash/zcash#4819 +Backport upstream PRs +that remove Boost usage @@ -209,27 +209,27 @@ zcash/halo2#144 - -zcash/halo2#144 -book: Specify proof -encoding + +zcash/halo2#144 +book: Specify proof +encoding zcash/halo2#144->zcash/zcash#4714 - - + + zcash/orchard#33 - -zcash/orchard#33 -Implement note commitment -tree logic for Orchard + +zcash/orchard#33 +Implement note commitment +tree logic for Orchard @@ -237,867 +237,854 @@ zcash/zcash#5018 - -zcash/zcash#5018 -Add Orchard note -commitment tree and -nullifier set to -CCoinsView + +zcash/zcash#5018 +Add Orchard note +commitment tree and +nullifier set to +CCoinsView zcash/orchard#33->zcash/zcash#5018 - - + + zcash/zcash#5018->zcash/zcash#5024 - - + + zcash/zcash#5037 - -zcash/zcash#5037 -Add Orchard metadata to -history trees + +zcash/zcash#5037 +Add Orchard metadata to +history trees zcash/zcash#5018->zcash/zcash#5037 - - + + zcash/orchard#32 - -zcash/orchard#32 -Implement note encryption -for Orchard + +zcash/orchard#32 +Implement note encryption +for Orchard zcash/orchard#32->zcash/orchard#35 - - + + zcash/zcash#5020 - -zcash/zcash#5020 -Add Orchard note -detection and storage to -the wallet + +zcash/zcash#5020 +Add Orchard note +detection and storage to +the wallet zcash/orchard#32->zcash/zcash#5020 - - + + zcash/zcash#5019 - -zcash/zcash#5019 -Add Orchard keys and -addresses to the wallet + +zcash/zcash#5019 +Add Orchard keys and +addresses to the wallet zcash/zcash#5019->zcash/zcash#5023 - - + + zcash/zcash#5019->zcash/zcash#5020 - - + + zcash/zcash#5179 - -zcash/zcash#5179 -Add Unified Address key -generation and storage to -the wallet + +zcash/zcash#5179 +Add Unified Address key +generation and storage to +the wallet zcash/zcash#5019->zcash/zcash#5179 - - + + zcash/zcash#5178 - -zcash/zcash#5178 -New RPC: z_getnewaccount + +zcash/zcash#5178 +New RPC: z_getnewaccount zcash/zcash#5179->zcash/zcash#5178 - - + + zcash/zcash#5182 - -zcash/zcash#5182 -New RPC: -z_getbalanceforaddress + +zcash/zcash#5182 +New RPC: +z_getbalanceforaddress zcash/zcash#5179->zcash/zcash#5182 - - + + zcash/zcash#5185 - -zcash/zcash#5185 -Add support for funding -z_sendmany from a UA -account + +zcash/zcash#5185 +Add support for funding +z_sendmany from a UA +account zcash/zcash#5179->zcash/zcash#5185 - - + + zcash/zcash#5180 - -zcash/zcash#5180 -New RPC: -z_getaddressforaccount + +zcash/zcash#5180 +New RPC: +z_getaddressforaccount zcash/zcash#5179->zcash/zcash#5180 - - + + zcash/zcash#5183 - -zcash/zcash#5183 -New RPC: -z_getbalanceforaccount + +zcash/zcash#5183 +New RPC: +z_getbalanceforaccount zcash/zcash#5179->zcash/zcash#5183 - - + + zcash/orchard#36 - -zcash/orchard#36 -Parsing and serialization -of Orchard keys and -addresses + +zcash/orchard#36 +Parsing and serialization +of Orchard keys and +addresses zcash/orchard#36->zcash/zcash#5019 - - + + zcash/librustzcash#371 - -zcash/librustzcash#371 -Implement parsing and -serialization of Unified -Addresses + +zcash/librustzcash#371 +Implement parsing and +serialization of Unified +Addresses zcash/orchard#36->zcash/librustzcash#371 - - + + zcash/zcash#5133 - -zcash/zcash#5133 -Implement Unified Address -parsing and serialization -to KeyIO + +zcash/zcash#5133 +Implement Unified Address +parsing and serialization +to KeyIO zcash/librustzcash#371->zcash/zcash#5133 - - + + zcash/zcash#5133->zcash/zcash#5178 - - + + zcash/zcash#5133->zcash/zcash#5182 - - + + zcash/zcash#5133->zcash/zcash#5185 - - + + zcash/zcash#5181 - -zcash/zcash#5181 -New RPC: -z_listunifiedreceivers + +zcash/zcash#5181 +New RPC: +z_listunifiedreceivers zcash/zcash#5133->zcash/zcash#5181 - - + + zcash/zcash#5184 - -zcash/zcash#5184 -Add support for UA -recipients to z_sendmany + +zcash/zcash#5184 +Add support for UA +recipients to z_sendmany zcash/zcash#5133->zcash/zcash#5184 - - + + + + + +zcash/zcash#5191 + + +zcash/zcash#5191 +z_getbalance: Return +error if given a UA + + + + + +zcash/zcash#5133->zcash/zcash#5191 + + - + zcash/zcash#5022 - - -zcash/zcash#5022 -Implement ZIP-225 -transaction format -changes in zcashd. + + +zcash/zcash#5022 +Implement ZIP-225 +transaction format +changes in zcashd. - + zcash/zcash#5022->zcash/zcash#5021 - - + + - + zcash/zcash#5022->zcash/zcash#5024 - - + + - + zcash/orchard#30 - - -zcash/orchard#30 -Implement ZIP 32 for -Orchard + + +zcash/orchard#30 +Implement ZIP 32 for +Orchard - + zcash/orchard#30->zcash/zcash#5019 - - + + - + zcash/zcash#2534 - - - - -zcash/zcash#2534 -Bitcoin 0.12 P2P/Net PRs -1 + + + + +zcash/zcash#2534 +Bitcoin 0.12 P2P/Net PRs +1 - + zcash/zcash#5003 - - - - -zcash/zcash#5003 -net: prerequisites for -p2p encapsulation changes + + + + +zcash/zcash#5003 +net: prerequisites for +p2p encapsulation changes - + zcash/zcash#2534->zcash/zcash#5003 - - + + - + zcash/zcash#5005 - - - - -zcash/zcash#5005 -net: Split DNS resolving -functionality out of net -structures + + + + +zcash/zcash#5005 +net: Split DNS resolving +functionality out of net +structures - + zcash/zcash#2534->zcash/zcash#5005 - - + + - + zcash/zcash#5004 - - - - -zcash/zcash#5004 -Verify that expected -services are available -from peer nodes & -disconnect otherwise. + + + + +zcash/zcash#5004 +Verify that expected +services are available +from peer nodes & +disconnect otherwise. - + zcash/zcash#5003->zcash/zcash#5004 - - + + - + zcash/zcash#5006 - - - - -zcash/zcash#5006 -Rework AddNode behaviour + + + + +zcash/zcash#5006 +Rework AddNode behaviour - + zcash/zcash#5005->zcash/zcash#5006 - - + + - + zcash/zcash#5004->zcash/zcash#5006 - - + + - + zcash/zcash#5008 - - - - -zcash/zcash#5008 -net: Feeler connections -to increase online addrs -in the tried table. + + + + +zcash/zcash#5008 +net: Feeler connections +to increase online addrs +in the tried table. - + zcash/zcash#5006->zcash/zcash#5008 - - + + - + zcash/librustzcash#368 - - -zcash/librustzcash#368 -zcash_history: Add -Orchard support + + +zcash/librustzcash#368 +zcash_history: Add +Orchard support - + zcash/librustzcash#368->zcash/zcash#5037 - - + + - + zcash/orchard#45 - - -zcash/orchard#45 -Implement Poseidon gadget + + +zcash/orchard#45 +Implement Poseidon gadget - + zcash/orchard#45->zcash/orchard#4 - - + + - + zcash/halo2#79 - - -zcash/halo2#79 -Migrate Rescue and -Poseidon gadgets to -algebraic hash -abstraction + + +zcash/halo2#79 +Migrate Rescue and +Poseidon gadgets to +algebraic hash +abstraction - + zcash/orchard#45->zcash/halo2#79 - - + + - + zcash/zcash#5034 - - - - -zcash/zcash#5034 -Bitcoin 0.17 locking PRs + + + + +zcash/zcash#5034 +Bitcoin 0.17 locking PRs - + zcash/zcash#5050 - - - - -zcash/zcash#5050 -Bitcoin 0.18 locking PRs + + + + +zcash/zcash#5050 +Bitcoin 0.18 locking PRs - + zcash/zcash#5034->zcash/zcash#5050 - - + + - + zcash/zcash#5163 - - - - -zcash/zcash#5163 -Bitcoin 0.19 locking PRs + + + + +zcash/zcash#5163 +Bitcoin 0.19 locking PRs - -zcash/zcash#5050->zcash/zcash#5163 - - - - - -zcash/zcash#5056 - - -zcash/zcash#5056 -Identify necessary RPC -changes to support -Unified Addresses - - - - -zcash/zcash#5056->zcash/zcash#5019 - - - - - -zcash/zcash#5177 - - -zcash/zcash#5177 -Deprecate old address- -related RPCs - - - - - -zcash/zcash#5056->zcash/zcash#5177 - - - - - -zcash/zcash#5186 - - -zcash/zcash#5186 -z_viewtransaction: Figure -out how to render UAs - - - - - -zcash/zcash#5056->zcash/zcash#5186 - - +zcash/zcash#5050->zcash/zcash#5163 + + - + zcash/zcash#5176 - - -zcash/zcash#5176 -Implement BIP 39 seed -phrase support + + +zcash/zcash#5176 +Implement BIP 39 seed +phrase support - + zcash/zcash#5176->zcash/zcash#5019 - - + + - + zcash/zcash#2673 - - -zcash/zcash#2673 -Support Hierarchical -Deterministic t-addresses -(BIP 32) + + +zcash/zcash#2673 +Support Hierarchical +Deterministic t-addresses +(BIP 32) - + zcash/zcash#5176->zcash/zcash#2673 - - + + - + zcash/zcash#2673->zcash/zcash#5179 - - + + - + zcash/zips#364 - - -zcash/zips#364 -[ZIP 339] Wallet Recovery -Words (a la BIP 39) + + +zcash/zips#364 +[ZIP 339] Wallet Recovery +Words (a la BIP 39) - + zcash/zips#364->zcash/zcash#5176 - - + + + + + +zcash/zcash#5177 + + +zcash/zcash#5177 +Deprecate old address- +related RPCs + + - + zcash/zips#511 - - -zcash/zips#511 -ZIP 32: Document standard -key structure for Unified -Addresses + + +zcash/zips#511 +ZIP 32: Document standard +key structure for Unified +Addresses - + zcash/zips#511->zcash/zcash#5179 - - + + - + zcash-hackworks/zcash-test-vectors#23 - - -zcash-hackworks/zcash-test-vectors#23 -Implement ZIP 244 test -vectors + + +zcash-hackworks/zcash-test-vectors#23 +Implement ZIP 244 test +vectors - + zcash-hackworks/zcash-test-vectors#23->zcash/zcash#5022 - - + + - + zcash/librustzcash#350 - - -zcash/librustzcash#350 -Implement ZIP-225 -transaction format & -hashing changes in -librustzcash. + + +zcash/librustzcash#350 +Implement ZIP-225 +transaction format & +hashing changes in +librustzcash. - + zcash-hackworks/zcash-test-vectors#23->zcash/librustzcash#350 - - + + + + + +zcash/zcash#5186 + + +zcash/zcash#5186 +z_viewtransaction: Figure +out how to render UAs + + zcash/halo2#63 - -zcash/halo2#63 -Implement zero-knowledge- -ness + +zcash/halo2#63 +Implement zero-knowledge- +ness - + zcash/halo2#63->zcash/librustzcash#320 - - + + zcash-hackworks/zcash-test-vectors#26 - -zcash-hackworks/zcash-test-vectors#26 -Implement Unified Address -encodings + +zcash-hackworks/zcash-test-vectors#26 +Implement Unified Address +encodings - + zcash-hackworks/zcash-test-vectors#26->zcash/librustzcash#371 - - + + zcash-hackworks/zcash-test-vectors#15 - -zcash-hackworks/zcash-test-vectors#15 -Implement ZIP 225 test -vectors + +zcash-hackworks/zcash-test-vectors#15 +Implement ZIP 225 test +vectors - + zcash-hackworks/zcash-test-vectors#15->zcash-hackworks/zcash-test-vectors#23 - - + + zcash-hackworks/zcash-test-vectors#24 - -zcash-hackworks/zcash-test-vectors#24 -Implement Orchard key -components test vectors + +zcash-hackworks/zcash-test-vectors#24 +Implement Orchard key +components test vectors - + zcash-hackworks/zcash-test-vectors#24->zcash-hackworks/zcash-test-vectors#26 - - + + zcash-hackworks/zcash-test-vectors#30 - - - -zcash-hackworks/zcash-test-vectors#30 -Orchard note encryption + + + +zcash-hackworks/zcash-test-vectors#30 +Orchard note encryption - + zcash-hackworks/zcash-test-vectors#30->zcash/orchard#32 - - + + zcash/halo2#64 - -zcash/halo2#64 -Design gadget API or -interaction model + +zcash/halo2#64 +Design gadget API or +interaction model - + zcash/halo2#64->zcash/halo2#73 - - + + zcash/halo2#235 - -zcash/halo2#235 -[Circuit] Implement -Core/Chip abstraction + +zcash/halo2#235 +[Circuit] Implement +Core/Chip abstraction - + zcash/halo2#64->zcash/halo2#235 - - + + - + zcash/halo2#235->zcash/orchard#4 - - + + zcash/halo2#75 - -zcash/halo2#75 -Implement support for -recursion + +zcash/halo2#75 +Implement support for +recursion @@ -1105,75 +1092,69 @@ zcash/halo2#251 - -zcash/halo2#251 -Implement user-facing API -for recursive proving + +zcash/halo2#251 +Implement user-facing API +for recursive proving - + zcash/halo2#75->zcash/halo2#251 - - + + zcash/halo2#78 - -zcash/halo2#78 -Implement algebraic hash -/ random oracle -abstraction gadget + +zcash/halo2#78 +Implement algebraic hash +/ random oracle +abstraction gadget - + zcash/halo2#78->zcash/halo2#79 - - - - - -zcash/halo2#78->zcash/halo2#75 - - + + zcash/halo2#250 - -zcash/halo2#250 -Implement the recursive -verifier circuit + +zcash/halo2#250 +Implement the recursive +verifier circuit - + zcash/halo2#78->zcash/halo2#250 - - + + - + zcash/halo2#250->zcash/halo2#75 - - + + zcash/halo2#57 - -zcash/halo2#57 -Remove unused -fixed_values from -ProvingKey + +zcash/halo2#57 +Remove unused +fixed_values from +ProvingKey @@ -1181,12 +1162,12 @@ zcash/halo2#82 - -zcash/halo2#82 -Consider not sampling -beta and gamma if there -are no permutations or -lookups + +zcash/halo2#82 +Consider not sampling +beta and gamma if there +are no permutations or +lookups @@ -1194,45 +1175,45 @@ zcash/halo2#248 - -zcash/halo2#248 -Implement endoscaling in -the circuit + +zcash/halo2#248 +Implement endoscaling in +the circuit - + zcash/halo2#248->zcash/halo2#250 - - + + zcash/halo2#249 - -zcash/halo2#249 -Implement circuit logic -for handling public -inputs + +zcash/halo2#249 +Implement circuit logic +for handling public +inputs - + zcash/halo2#249->zcash/halo2#250 - - + + zcash/halo2#246 - -zcash/halo2#246 -Create recursive proof -structures + +zcash/halo2#246 +Create recursive proof +structures @@ -1240,84 +1221,78 @@ zcash/halo2#247 - -zcash/halo2#247 -Implement underlying -scaffolding for the -recursive circuit + +zcash/halo2#247 +Implement underlying +scaffolding for the +recursive circuit - + zcash/halo2#246->zcash/halo2#247 - - + + - + zcash/halo2#247->zcash/halo2#250 - - + + zcash/halo2#245 - -zcash/halo2#245 -Remove the need to -multiply by powers of x^n -in verifier + +zcash/halo2#245 +Remove the need to +multiply by powers of x^n +in verifier - + zcash/halo2#245->zcash/halo2#250 - - + + zcash/halo2#210 - -zcash/halo2#210 -Make multiopen -point_index_map dependent -only on the rotation + +zcash/halo2#210 +Make multiopen +point_index_map dependent +only on the rotation - + zcash/halo2#210->zcash/halo2#250 - - + + zcash/orchard#38 - -zcash/orchard#38 -Implement generic ECC -gadget + +zcash/orchard#38 +Implement generic ECC +gadget - + zcash/orchard#38->zcash/halo2#73 - - - - - -zcash/orchard#38->zcash/orchard#4 - - + +