diff --git a/Cargo.lock b/Cargo.lock index 72541a4a72c..2572faa0e18 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -438,7 +438,7 @@ dependencies = [ "hmac", "rand_core 0.6.4", "ripemd", - "secp256k1 0.27.0", + "secp256k1", "sha2", "subtle", "zeroize", @@ -539,11 +539,11 @@ dependencies = [ [[package]] name = "bridgetree" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f62227647af796dd9f1637da0392676a2e200973b817b082fc9be89bf93ddd74" +checksum = "cef977c7f8e75aa81fc589064c121ab8d32448b7939d34d58df479aa93e65ea5" dependencies = [ - "incrementalmerkletree", + "incrementalmerkletree 0.7.0", ] [[package]] @@ -1323,7 +1323,7 @@ dependencies = [ [[package]] name = "equihash" version = "0.2.0" -source = "git+https://github.com/zcash/librustzcash/#a1047adf0b6f324dad415db34762dc26f8367ce4" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ "blake2b_simd", "byteorder", @@ -1367,7 +1367,7 @@ dependencies = [ [[package]] name = "f4jumble" version = "0.1.0" -source = "git+https://github.com/zcash/librustzcash/#a1047adf0b6f324dad415db34762dc26f8367ce4" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ "blake2b_simd", ] @@ -2104,6 +2104,14 @@ dependencies = [ "either", ] +[[package]] +name = "incrementalmerkletree" +version = "0.7.0" +source = "git+https://github.com/zcash/incrementalmerkletree?rev=ffe4234788fd22662b937ba7c6ea01535fcc1293#ffe4234788fd22662b937ba7c6ea01535fcc1293" +dependencies = [ + "either", +] + [[package]] name = "indenter" version = "0.3.3" @@ -2798,9 +2806,8 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" [[package]] name = "orchard" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dc7bde644aeb980be296cd908c6650894dc8541deb56f9f5294c52ed7ca568f" +version = "0.9.1" +source = "git+https://github.com/zcash/orchard?rev=55fb089a335bbbc1cda186c706bc037073df8eb7#55fb089a335bbbc1cda186c706bc037073df8eb7" dependencies = [ "aes", "bitvec", @@ -2811,7 +2818,7 @@ dependencies = [ "halo2_gadgets", "halo2_proofs", "hex", - "incrementalmerkletree", + "incrementalmerkletree 0.7.0", "lazy_static", "memuse", "nonempty", @@ -3789,8 +3796,7 @@ dependencies = [ [[package]] name = "sapling-crypto" version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15e379398fffad84e49f9a45a05635fc004f66086e65942dbf4eb95332c26d2a" +source = "git+https://github.com/zcash/sapling-crypto?rev=b1ad3694ee13a2fc5d291ad04721a6252da0993c#b1ad3694ee13a2fc5d291ad04721a6252da0993c" dependencies = [ "aes", "bellman", @@ -3804,7 +3810,7 @@ dependencies = [ "fpe", "group", "hex", - "incrementalmerkletree", + "incrementalmerkletree 0.7.0", "jubjub", "lazy_static", "memuse", @@ -3834,16 +3840,6 @@ dependencies = [ "untrusted", ] -[[package]] -name = "secp256k1" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4124a35fe33ae14259c490fd70fa199a32b9ce9502f2ee6bc4f81ec06fa65894" -dependencies = [ - "secp256k1-sys", - "serde", -] - [[package]] name = "secp256k1" version = "0.27.0" @@ -3851,6 +3847,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25996b82292a7a57ed3508f052cfff8640d38d32018784acd714758b43da9c8f" dependencies = [ "secp256k1-sys", + "serde", ] [[package]] @@ -4135,12 +4132,11 @@ dependencies = [ [[package]] name = "shardtree" version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78222845cd8bbe5eb95687407648ff17693a35de5e8abaa39a4681fb21e033f9" +source = "git+https://github.com/zcash/incrementalmerkletree?rev=ffe4234788fd22662b937ba7c6ea01535fcc1293#ffe4234788fd22662b937ba7c6ea01535fcc1293" dependencies = [ "bitflags 2.6.0", "either", - "incrementalmerkletree", + "incrementalmerkletree 0.7.0", "tracing", ] @@ -5611,81 +5607,28 @@ dependencies = [ "bech32", "bs58", "f4jumble 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_encoding 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_encoding", "zcash_protocol 0.2.0", ] [[package]] name = "zcash_address" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14bccd6cefb76f87b6d15a9e7b02b6c0515648c6de8e806c4e2d6f0f6ae640c5" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ "bech32", "bs58", - "f4jumble 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_encoding 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_protocol 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "zcash_address" -version = "0.5.0" -source = "git+https://github.com/zcash/librustzcash/#a1047adf0b6f324dad415db34762dc26f8367ce4" -dependencies = [ - "bech32", - "bs58", - "f4jumble 0.1.0 (git+https://github.com/zcash/librustzcash/)", - "zcash_encoding 0.2.1 (git+https://github.com/zcash/librustzcash/)", - "zcash_protocol 0.3.0 (git+https://github.com/zcash/librustzcash/)", + "f4jumble 0.1.0 (git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792)", + "zcash_encoding", + "zcash_protocol 0.3.0", ] [[package]] name = "zcash_client_backend" version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e3a0f3e5d7f299d8b7ef3237697630989c31ab1b162824c99c1cd8bc83715e" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ - "base64 0.21.7", - "bech32", - "bls12_381", - "bs58", - "crossbeam-channel", - "document-features", - "group", - "hex", - "incrementalmerkletree", - "memuse", - "nom", - "nonempty", - "percent-encoding", - "prost", - "rand_core 0.6.4", - "rayon", - "sapling-crypto", - "secrecy", - "shardtree", - "subtle", - "time", - "tonic-build", - "tracing", - "which", - "zcash_address 0.4.0", - "zcash_encoding 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_keys 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_note_encryption", - "zcash_primitives 0.16.0", - "zcash_protocol 0.2.0", - "zip32", - "zip321 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "zcash_client_backend" -version = "0.13.0" -source = "git+https://github.com/zcash/librustzcash/#a1047adf0b6f324dad415db34762dc26f8367ce4" -dependencies = [ - "base64 0.21.7", + "base64 0.22.1", "bech32", "bls12_381", "bs58", @@ -5693,7 +5636,7 @@ dependencies = [ "document-features", "group", "hex", - "incrementalmerkletree", + "incrementalmerkletree 0.7.0", "memuse", "nom", "nonempty", @@ -5709,30 +5652,20 @@ dependencies = [ "tonic-build", "tracing", "which", - "zcash_address 0.5.0 (git+https://github.com/zcash/librustzcash/)", - "zcash_encoding 0.2.1 (git+https://github.com/zcash/librustzcash/)", - "zcash_keys 0.3.0 (git+https://github.com/zcash/librustzcash/)", + "zcash_address 0.5.0", + "zcash_encoding", + "zcash_keys 0.3.0 (git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792)", "zcash_note_encryption", - "zcash_primitives 0.17.0 (git+https://github.com/zcash/librustzcash/)", - "zcash_protocol 0.3.0 (git+https://github.com/zcash/librustzcash/)", + "zcash_primitives 0.17.0", + "zcash_protocol 0.3.0", "zip32", - "zip321 0.1.0 (git+https://github.com/zcash/librustzcash/)", + "zip321", ] [[package]] name = "zcash_encoding" version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "052d8230202f0a018cd9b5d1b56b94cd25e18eccc2d8665073bcea8261ab87fc" -dependencies = [ - "byteorder", - "nonempty", -] - -[[package]] -name = "zcash_encoding" -version = "0.2.1" -source = "git+https://github.com/zcash/librustzcash/#a1047adf0b6f324dad415db34762dc26f8367ce4" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ "byteorder", "nonempty", @@ -5741,8 +5674,7 @@ dependencies = [ [[package]] name = "zcash_history" version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fde17bf53792f9c756b313730da14880257d7661b5bfc69d0571c3a7c11a76d" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ "blake2b_simd", "byteorder", @@ -5769,7 +5701,7 @@ dependencies = [ "subtle", "tracing", "zcash_address 0.4.0", - "zcash_encoding 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_encoding", "zcash_primitives 0.16.0", "zcash_protocol 0.2.0", "zip32", @@ -5778,7 +5710,7 @@ dependencies = [ [[package]] name = "zcash_keys" version = "0.3.0" -source = "git+https://github.com/zcash/librustzcash/#a1047adf0b6f324dad415db34762dc26f8367ce4" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ "bech32", "blake2b_simd", @@ -5793,10 +5725,10 @@ dependencies = [ "secrecy", "subtle", "tracing", - "zcash_address 0.5.0 (git+https://github.com/zcash/librustzcash/)", - "zcash_encoding 0.2.1 (git+https://github.com/zcash/librustzcash/)", - "zcash_primitives 0.17.0 (git+https://github.com/zcash/librustzcash/)", - "zcash_protocol 0.3.0 (git+https://github.com/zcash/librustzcash/)", + "zcash_address 0.5.0", + "zcash_encoding", + "zcash_primitives 0.17.0", + "zcash_protocol 0.3.0", "zip32", ] @@ -5829,7 +5761,7 @@ dependencies = [ "fpe", "group", "hex", - "incrementalmerkletree", + "incrementalmerkletree 0.6.0", "jubjub", "memuse", "nonempty", @@ -5842,7 +5774,7 @@ dependencies = [ "subtle", "tracing", "zcash_address 0.4.0", - "zcash_encoding 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_encoding", "zcash_note_encryption", "zcash_protocol 0.2.0", "zcash_spec", @@ -5852,8 +5784,7 @@ dependencies = [ [[package]] name = "zcash_primitives" version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d87ab6a55591a8cf1866749fdc739ae1bbd06e6cec07ab0bbe5d57ee3390eb2" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ "aes", "bip32", @@ -5861,12 +5792,12 @@ dependencies = [ "bs58", "byteorder", "document-features", - "equihash 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "equihash 0.2.0 (git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792)", "ff", "fpe", "group", "hex", - "incrementalmerkletree", + "incrementalmerkletree 0.7.0", "jubjub", "memuse", "nonempty", @@ -5876,49 +5807,14 @@ dependencies = [ "redjubjub", "ripemd", "sapling-crypto", - "secp256k1 0.27.0", - "sha2", - "subtle", - "tracing", - "zcash_address 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_encoding 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_note_encryption", - "zcash_protocol 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_spec", - "zip32", -] - -[[package]] -name = "zcash_primitives" -version = "0.17.0" -source = "git+https://github.com/zcash/librustzcash/#a1047adf0b6f324dad415db34762dc26f8367ce4" -dependencies = [ - "aes", - "blake2b_simd", - "bs58", - "byteorder", - "document-features", - "equihash 0.2.0 (git+https://github.com/zcash/librustzcash/)", - "ff", - "fpe", - "group", - "hex", - "incrementalmerkletree", - "jubjub", - "memuse", - "nonempty", - "orchard", - "rand 0.8.5", - "rand_core 0.6.4", - "redjubjub", - "sapling-crypto", + "secp256k1", "sha2", "subtle", "tracing", - "zcash_address 0.5.0 (git+https://github.com/zcash/librustzcash/)", - "zcash_encoding 0.2.1 (git+https://github.com/zcash/librustzcash/)", + "zcash_address 0.5.0", + "zcash_encoding", "zcash_note_encryption", - "zcash_protocol 0.3.0 (git+https://github.com/zcash/librustzcash/)", + "zcash_protocol 0.3.0", "zcash_spec", "zip32", ] @@ -5926,8 +5822,7 @@ dependencies = [ [[package]] name = "zcash_proofs" version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b9fc0032b3d90f000f50dba7a996ad6556b7dba5b5145f93ab67b6eb74d3a48" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ "bellman", "blake2b_simd", @@ -5943,7 +5838,7 @@ dependencies = [ "sapling-crypto", "tracing", "xdg", - "zcash_primitives 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_primitives 0.17.0", ] [[package]] @@ -5959,17 +5854,7 @@ dependencies = [ [[package]] name = "zcash_protocol" version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1ff002bd41ba76b42d42a02ee11de06790b7fdbc904bdea4486b9a93b2a5e4" -dependencies = [ - "document-features", - "memuse", -] - -[[package]] -name = "zcash_protocol" -version = "0.3.0" -source = "git+https://github.com/zcash/librustzcash/#a1047adf0b6f324dad415db34762dc26f8367ce4" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ "document-features", "memuse", @@ -6017,7 +5902,7 @@ dependencies = [ "halo2_proofs", "hex", "humantime", - "incrementalmerkletree", + "incrementalmerkletree 0.7.0", "itertools 0.13.0", "jubjub", "lazy_static", @@ -6034,7 +5919,7 @@ dependencies = [ "redjubjub", "ripemd", "sapling-crypto", - "secp256k1 0.26.0", + "secp256k1", "serde", "serde-big-array", "serde_json", @@ -6049,13 +5934,13 @@ dependencies = [ "tracing", "uint 0.10.0", "x25519-dalek", - "zcash_address 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_client_backend 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_encoding 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_address 0.5.0", + "zcash_client_backend", + "zcash_encoding", "zcash_history", "zcash_note_encryption", - "zcash_primitives 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_protocol 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_primitives 0.17.0", + "zcash_protocol 0.3.0", "zebra-test", ] @@ -6120,7 +6005,7 @@ dependencies = [ "tonic-build", "tonic-reflection", "tower", - "zcash_primitives 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_primitives 0.17.0", "zebra-chain", "zebra-node-services", "zebra-state", @@ -6207,8 +6092,8 @@ dependencies = [ "tonic-reflection", "tower", "tracing", - "zcash_address 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_primitives 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_address 0.5.0", + "zcash_primitives 0.17.0", "zebra-chain", "zebra-consensus", "zebra-network", @@ -6250,11 +6135,11 @@ dependencies = [ "tower", "tracing", "tracing-subscriber", - "zcash_address 0.5.0 (git+https://github.com/zcash/librustzcash/)", - "zcash_client_backend 0.13.0 (git+https://github.com/zcash/librustzcash/)", + "zcash_address 0.5.0", + "zcash_client_backend", "zcash_keys 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "zcash_note_encryption", - "zcash_primitives 0.17.0 (git+https://github.com/zcash/librustzcash/)", + "zcash_primitives 0.17.0", "zebra-chain", "zebra-grpc", "zebra-node-services", @@ -6372,9 +6257,9 @@ dependencies = [ "tokio", "tracing-error", "tracing-subscriber", - "zcash_client_backend 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_primitives 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_protocol 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_client_backend", + "zcash_primitives 0.17.0", + "zcash_protocol 0.3.0", "zebra-chain", "zebra-node-services", "zebra-rpc", @@ -6506,24 +6391,11 @@ dependencies = [ [[package]] name = "zip321" version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dc85f862f7be64fb0d46f9eb5b82ad54e58cde314fa979d5bae591bc0143693" +source = "git+https://github.com/zcash/librustzcash.git?rev=1410f1449100a417bfbc4f6c7167aa9808e38792#1410f1449100a417bfbc4f6c7167aa9808e38792" dependencies = [ - "base64 0.21.7", - "nom", - "percent-encoding", - "zcash_address 0.4.0", - "zcash_protocol 0.2.0", -] - -[[package]] -name = "zip321" -version = "0.1.0" -source = "git+https://github.com/zcash/librustzcash/#a1047adf0b6f324dad415db34762dc26f8367ce4" -dependencies = [ - "base64 0.21.7", + "base64 0.22.1", "nom", "percent-encoding", - "zcash_address 0.5.0 (git+https://github.com/zcash/librustzcash/)", - "zcash_protocol 0.3.0 (git+https://github.com/zcash/librustzcash/)", + "zcash_address 0.5.0", + "zcash_protocol 0.3.0", ] diff --git a/Cargo.toml b/Cargo.toml index a006d6eb8a6..976c259130d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -22,7 +22,7 @@ resolver = "2" # `cargo release` settings [workspace.dependencies] -incrementalmerkletree = "0.6.0" +incrementalmerkletree = "0.7.0" orchard = "0.9.0" sapling-crypto = "0.2.0" zcash_address = "0.5.0" @@ -102,3 +102,18 @@ panic = "abort" # - add "-flto=thin" to all C/C++ code builds # - see https://doc.rust-lang.org/rustc/linker-plugin-lto.html#cc-code-as-a-dependency-in-rust lto = "thin" + +# We can remove this patches after we get out of 2.0 release candidate and upgrade the ECC dependencies above. +# This revisions are at the commit just before setting mainnet activation heights. +[patch.crates-io] +zcash_address = { git = "https://github.com/zcash/librustzcash.git", rev = "1410f1449100a417bfbc4f6c7167aa9808e38792" } +zcash_client_backend = { git = "https://github.com/zcash/librustzcash.git", rev = "1410f1449100a417bfbc4f6c7167aa9808e38792" } +zcash_encoding = { git = "https://github.com/zcash/librustzcash.git", rev = "1410f1449100a417bfbc4f6c7167aa9808e38792" } +zcash_history = { git = "https://github.com/zcash/librustzcash.git", rev = "1410f1449100a417bfbc4f6c7167aa9808e38792" } +zcash_primitives = { git = "https://github.com/zcash/librustzcash.git", rev = "1410f1449100a417bfbc4f6c7167aa9808e38792" } +zcash_proofs = { git = "https://github.com/zcash/librustzcash.git", rev = "1410f1449100a417bfbc4f6c7167aa9808e38792" } +zcash_protocol = { git = "https://github.com/zcash/librustzcash.git", rev = "1410f1449100a417bfbc4f6c7167aa9808e38792" } +sapling-crypto = { git = "https://github.com/zcash/sapling-crypto", rev = "b1ad3694ee13a2fc5d291ad04721a6252da0993c" } +orchard = { git = "https://github.com/zcash/orchard", rev = "55fb089a335bbbc1cda186c706bc037073df8eb7" } +incrementalmerkletree = { git = "https://github.com/zcash/incrementalmerkletree", rev = "ffe4234788fd22662b937ba7c6ea01535fcc1293" } +shardtree = { git = "https://github.com/zcash/incrementalmerkletree", rev = "ffe4234788fd22662b937ba7c6ea01535fcc1293" } diff --git a/deny.toml b/deny.toml index bf51d9dcafc..b8d35b41cc4 100644 --- a/deny.toml +++ b/deny.toml @@ -84,19 +84,26 @@ skip-tree = [ { name = "http-body", version = "=0.4.6" }, { name = "hyper", version = "=0.14.30" }, - # TODO: Remove this after we upgrade ECC dependencies to a crates.io version (#8749) - { name = "equihash", version = "=0.2.0" }, - { name = "f4jumble", version = "=0.1.0" }, - { name = "secp256k1", version = "=0.26.0" }, - { name = "zcash_address", version = "=0.5.0" }, - { name = "zcash_client_backend", version = "=0.13.0" }, - - # wait for structopt-derive to update heck { name = "heck", version = "=0.3.3" }, # wait for librocksdb-sys to update bindgen to one that uses newer itertools - { name = "itertools", version = "=0.12.1" } + { name = "itertools", version = "=0.12.1" }, + + # wait for halo2_gadgets and primitive-types to update uint + { name = "uint", version = "=0.9.5" }, + + # wait for dirs-sys to update windows-sys + { name = "windows-sys", version = "=0.48.0" }, + + # Remove after release candicate period is over and the ECC crates are not patched anymore + { name = "equihash", version = "=0.2.0" }, + { name = "f4jumble", version = "=0.1.0" }, + { name = "incrementalmerkletree", version = "=0.6.0" }, + { name = "zcash_address", version = "=0.4.0" }, + { name = "zcash_keys", version = "=0.3.0" }, + { name = "zcash_primitives", version = "=0.16.0" }, + { name = "zcash_protocol", version = "=0.2.0" } ] # This section is considered when running `cargo deny check sources`. @@ -114,7 +121,10 @@ unknown-git = "deny" allow-registry = ["https://github.com/rust-lang/crates.io-index"] # List of URLs for allowed Git repositories allow-git = [ - "https://github.com/zcash/librustzcash.git" + "https://github.com/zcash/librustzcash.git", + "https://github.com/zcash/incrementalmerkletree", + "https://github.com/zcash/orchard", + "https://github.com/zcash/sapling-crypto" ] [sources.allow-org] diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml index 963d1771ca3..284db15ec14 100644 --- a/supply-chain/audits.toml +++ b/supply-chain/audits.toml @@ -26,6 +26,11 @@ who = "Alfredo Garcia " criteria = "safe-to-deploy" delta = "0.4.0 -> 0.5.0" +[[audits.bridgetree]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.5.0 -> 0.6.0" + [[audits.bytemuck]] who = "Alfredo Garcia " criteria = "safe-to-deploy" @@ -94,13 +99,13 @@ delta = "0.3.0 -> 0.4.0" [[audits.equihash]] who = "Alfredo Garcia " criteria = "safe-to-deploy" -delta = "0.2.0 -> 0.2.0@git:a1047adf0b6f324dad415db34762dc26f8367ce4" +delta = "0.2.0 -> 0.2.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792" importable = false [[audits.f4jumble]] who = "Alfredo Garcia " criteria = "safe-to-deploy" -delta = "0.1.0 -> 0.1.0@git:a1047adf0b6f324dad415db34762dc26f8367ce4" +delta = "0.1.0 -> 0.1.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792" importable = false [[audits.git2]] @@ -128,6 +133,17 @@ who = "Alfredo Garcia " criteria = "safe-to-deploy" delta = "0.5.1 -> 0.6.0" +[[audits.incrementalmerkletree]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.6.0 -> 0.7.0" + +[[audits.incrementalmerkletree]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.7.0 -> 0.7.0@git:ffe4234788fd22662b937ba7c6ea01535fcc1293" +importable = false + [[audits.indexmap]] who = "Alfredo Garcia " criteria = "safe-to-deploy" @@ -208,6 +224,17 @@ who = "Alfredo Garcia " criteria = "safe-to-deploy" delta = "0.8.0 -> 0.9.0" +[[audits.orchard]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.9.0 -> 0.10.0" + +[[audits.orchard]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.10.0 -> 0.9.1@git:55fb089a335bbbc1cda186c706bc037073df8eb7" +importable = false + [[audits.owo-colors]] who = "Alfredo Garcia " criteria = "safe-to-deploy" @@ -283,6 +310,17 @@ who = "Alfredo Garcia " criteria = "safe-to-deploy" delta = "0.1.3 -> 0.2.0" +[[audits.sapling-crypto]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.2.0 -> 0.3.0" + +[[audits.sapling-crypto]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.3.0 -> 0.2.0@git:b1ad3694ee13a2fc5d291ad04721a6252da0993c" +importable = false + [[audits.serde_spanned]] who = "Alfredo Garcia " criteria = "safe-to-deploy" @@ -318,6 +356,17 @@ who = "Alfredo Garcia " criteria = "safe-to-deploy" delta = "0.3.1 -> 0.4.0" +[[audits.shardtree]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.4.0 -> 0.5.0" + +[[audits.shardtree]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.5.0 -> 0.4.0@git:ffe4234788fd22662b937ba7c6ea01535fcc1293" +importable = false + [[audits.tempfile]] who = "Alfredo Garcia " criteria = "safe-to-deploy" @@ -541,9 +590,14 @@ delta = "0.4.0 -> 0.5.0" [[audits.zcash_address]] who = "Alfredo Garcia " criteria = "safe-to-deploy" -delta = "0.5.0 -> 0.5.0@git:a1047adf0b6f324dad415db34762dc26f8367ce4" +delta = "0.5.0 -> 0.5.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792" importable = false +[[audits.zcash_address]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.5.0 -> 0.6.0" + [[audits.zcash_client_backend]] who = "Alfredo Garcia " criteria = "safe-to-deploy" @@ -552,19 +606,35 @@ delta = "0.12.1 -> 0.13.0" [[audits.zcash_client_backend]] who = "Alfredo Garcia " criteria = "safe-to-deploy" -delta = "0.13.0 -> 0.13.0@git:a1047adf0b6f324dad415db34762dc26f8367ce4" +delta = "0.13.0 -> 0.14.0" + +[[audits.zcash_client_backend]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.14.0 -> 0.13.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792" importable = false [[audits.zcash_encoding]] who = "Alfredo Garcia " criteria = "safe-to-deploy" -delta = "0.2.1 -> 0.2.1@git:a1047adf0b6f324dad415db34762dc26f8367ce4" +delta = "0.2.1 -> 0.2.1@git:1410f1449100a417bfbc4f6c7167aa9808e38792" importable = false +[[audits.zcash_history]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.4.0 -> 0.4.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792" +importable = false + +[[audits.zcash_keys]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.3.0 -> 0.4.0" + [[audits.zcash_keys]] who = "Alfredo Garcia " criteria = "safe-to-deploy" -delta = "0.3.0 -> 0.3.0@git:a1047adf0b6f324dad415db34762dc26f8367ce4" +delta = "0.4.0 -> 0.3.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792" importable = false [[audits.zcash_primitives]] @@ -575,14 +645,30 @@ delta = "0.16.0 -> 0.17.0" [[audits.zcash_primitives]] who = "Alfredo Garcia " criteria = "safe-to-deploy" -delta = "0.17.0 -> 0.17.0@git:a1047adf0b6f324dad415db34762dc26f8367ce4" +delta = "0.17.0 -> 0.17.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792" importable = false +[[audits.zcash_primitives]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.17.0 -> 0.19.0" + [[audits.zcash_proofs]] who = "Alfredo Garcia " criteria = "safe-to-deploy" delta = "0.16.0 -> 0.17.0" +[[audits.zcash_proofs]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.17.0 -> 0.17.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792" +importable = false + +[[audits.zcash_proofs]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.17.0 -> 0.19.0" + [[audits.zcash_protocol]] who = "Alfredo Garcia " criteria = "safe-to-deploy" @@ -596,7 +682,12 @@ delta = "0.1.1 -> 0.3.0" [[audits.zcash_protocol]] who = "Alfredo Garcia " criteria = "safe-to-deploy" -delta = "0.3.0 -> 0.3.0@git:a1047adf0b6f324dad415db34762dc26f8367ce4" +delta = "0.3.0 -> 0.4.0" + +[[audits.zcash_protocol]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.4.0 -> 0.3.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792" importable = false [[audits.zebra-chain]] @@ -662,7 +753,12 @@ version = "0.1.0" [[audits.zip321]] who = "Alfredo Garcia " criteria = "safe-to-deploy" -delta = "0.1.0 -> 0.1.0@git:a1047adf0b6f324dad415db34762dc26f8367ce4" +delta = "0.1.0 -> 0.2.0" + +[[audits.zip321]] +who = "Alfredo Garcia " +criteria = "safe-to-deploy" +delta = "0.2.0 -> 0.1.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792" importable = false [[trusted.clap]] diff --git a/supply-chain/config.toml b/supply-chain/config.toml index 7a20193f958..cdbb79de93f 100644 --- a/supply-chain/config.toml +++ b/supply-chain/config.toml @@ -16,10 +16,28 @@ url = "https://raw.githubusercontent.com/zcash/rust-ecosystem/main/supply-chain/ [imports.zcashd] url = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[policy.equihash] +[policy."equihash:0.2.0"] + +[policy."equihash:0.2.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792"] +audit-as-crates-io = true + +[policy."f4jumble:0.1.0"] + +[policy."f4jumble:0.1.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792"] +audit-as-crates-io = true + +[policy."incrementalmerkletree:0.6.0"] + +[policy."incrementalmerkletree:0.7.0@git:ffe4234788fd22662b937ba7c6ea01535fcc1293"] audit-as-crates-io = true -[policy.f4jumble] +[policy.orchard] +audit-as-crates-io = true + +[policy.sapling-crypto] +audit-as-crates-io = true + +[policy.shardtree] audit-as-crates-io = true [policy.tower-batch-control] @@ -28,7 +46,9 @@ audit-as-crates-io = true [policy.tower-fallback] audit-as-crates-io = true -[policy.zcash_address] +[policy."zcash_address:0.4.0"] + +[policy."zcash_address:0.5.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792"] audit-as-crates-io = true [policy.zcash_client_backend] @@ -37,13 +57,25 @@ audit-as-crates-io = true [policy.zcash_encoding] audit-as-crates-io = true -[policy.zcash_keys] +[policy.zcash_history] audit-as-crates-io = true -[policy.zcash_primitives] +[policy."zcash_keys:0.3.0"] + +[policy."zcash_keys:0.3.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792"] audit-as-crates-io = true -[policy.zcash_protocol] +[policy."zcash_primitives:0.16.0"] + +[policy."zcash_primitives:0.17.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792"] +audit-as-crates-io = true + +[policy.zcash_proofs] +audit-as-crates-io = true + +[policy."zcash_protocol:0.2.0"] + +[policy."zcash_protocol:0.3.0@git:1410f1449100a417bfbc4f6c7167aa9808e38792"] audit-as-crates-io = true [policy.zebra-chain] diff --git a/zebra-chain/Cargo.toml b/zebra-chain/Cargo.toml index 3e9b998916a..6ffb22409c3 100644 --- a/zebra-chain/Cargo.toml +++ b/zebra-chain/Cargo.toml @@ -68,7 +68,7 @@ bitflags = "2.5.0" bitflags-serde-legacy = "0.1.1" blake2b_simd = "1.0.2" blake2s_simd = "1.0.2" -bridgetree = "0.5.0" +bridgetree = "0.6.0" bs58 = { version = "0.5.1", features = ["check"] } byteorder = "1.5.0" @@ -88,7 +88,7 @@ primitive-types = "0.12.2" rand_core = "0.6.4" ripemd = "0.1.3" # Matches version used by hdwallet -secp256k1 = { version = "0.26.0", features = ["serde"] } +secp256k1 = { version = "0.27.0", features = ["serde"] } sha2 = { version = "0.10.7", features = ["compress"] } uint = "0.10.0" x25519-dalek = { version = "2.0.1", features = ["serde"] } diff --git a/zebra-scan/Cargo.toml b/zebra-scan/Cargo.toml index 6a5bd10e203..c81c749632f 100644 --- a/zebra-scan/Cargo.toml +++ b/zebra-scan/Cargo.toml @@ -71,11 +71,10 @@ tracing = "0.1.39" futures = "0.3.30" # ECC dependencies. -# TODO: we can't use the workspace version for all ECC dependencies in this crate yet (#8809) -zcash_client_backend = { git = "https://github.com/zcash/librustzcash/", commit = "40ca428c6081c61d5a2bf3f2053eb9e18219ca95" } +zcash_client_backend.workspace = true zcash_keys = { workspace = true, features = ["sapling"] } -zcash_primitives = { git = "https://github.com/zcash/librustzcash/", commit = "40ca428c6081c61d5a2bf3f2053eb9e18219ca95" } -zcash_address = { git = "https://github.com/zcash/librustzcash/", commit = "40ca428c6081c61d5a2bf3f2053eb9e18219ca95" } +zcash_primitives.workspace = true +zcash_address.workspace = true sapling-crypto.workspace = true zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39", features = ["shielded-scan"] }