From 2c891d3506655fe8dd9e39727257c40fc3cba29b Mon Sep 17 00:00:00 2001 From: emmanuelm41 Date: Wed, 20 Nov 2024 17:52:59 -0300 Subject: [PATCH 1/7] feat: udpate consensus branch id for nu6 --- app/src/refactor/sighash.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/src/refactor/sighash.c b/app/src/refactor/sighash.c index c43e2375..c95834ef 100644 --- a/app/src/refactor/sighash.c +++ b/app/src/refactor/sighash.c @@ -36,6 +36,7 @@ const uint8_t CTX_ZCASH_SHIELDED_OUTPUTS_HASH_PERSONALIZATION[] = "ZcashSOutputH const uint8_t CONSENSUS_BRANCH_ID_SAPLING[4] = {0xBB, 0x09, 0xB8, 0x76}; // sapling const uint8_t CONSENSUS_BRANCH_ID_ORCHARD[4] = {0xB4, 0xD0, 0xD6, 0xC2}; // orchard +const uint8_t CONSENSUS_BRANCH_ID_NU6[4] = {0x55, 0x10, 0xE7, 0xC8}; // nu6 zxerr_t sapling_transparent_prevouts_hash(const uint8_t *input, uint8_t *output) { const uint8_t n = t_inlist_len(); @@ -148,7 +149,7 @@ static zxerr_t signature_hash_v4(const uint8_t *input, uint16_t inputlen, uint8_ cx_blake2b_t ctx = {0}; uint8_t personalization[16] = "ZcashSigHash"; - MEMCPY(personalization + 12, CONSENSUS_BRANCH_ID_ORCHARD, 4); + MEMCPY(personalization + 12, CONSENSUS_BRANCH_ID_NU6, 4); CHECK_CX_OK(cx_blake2b_init2_no_throw(&ctx, 256, NULL, 0, (uint8_t *)personalization, PERSONALIZATION_SIZE)); CHECK_CX_OK(cx_hash_no_throw(&ctx.header, CX_LAST, input, inputlen, output, HASH_SIZE)); @@ -166,7 +167,7 @@ static zxerr_t signature_hash_v5( cx_blake2b_t ctx = {0}; uint8_t personalization[16] = "ZcashTxHash_"; - MEMCPY(personalization + 12, CONSENSUS_BRANCH_ID_ORCHARD, 4); + MEMCPY(personalization + 12, CONSENSUS_BRANCH_ID_NU6, 4); CHECK_CX_OK(cx_blake2b_init2_no_throw(&ctx, 256, NULL, 0, (uint8_t *)personalization, PERSONALIZATION_SIZE)); uint8_t header_digest[32] = {0}; @@ -215,7 +216,7 @@ static zxerr_t signature_script_hash_v4( cx_blake2b_t ctx = {0}; uint8_t personalization[16] = "ZcashSigHash"; - MEMCPY(personalization + 12, CONSENSUS_BRANCH_ID_ORCHARD, 4); + MEMCPY(personalization + 12, CONSENSUS_BRANCH_ID_NU6, 4); CHECK_CX_OK(cx_blake2b_init2_no_throw(&ctx, 256, NULL, 0, (uint8_t *)personalization, PERSONALIZATION_SIZE)); CHECK_CX_OK(cx_hash_no_throw(&ctx.header, 0, input, inputlen, NULL, 0)); From 87ceb7cff8154fa742bf9988bdb8b68f646f8916 Mon Sep 17 00:00:00 2001 From: emmanuelm41 Date: Wed, 20 Nov 2024 17:57:06 -0300 Subject: [PATCH 2/7] chore: bump app version --- app/Makefile.version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Makefile.version b/app/Makefile.version index 4f5f98ca..82feb033 100644 --- a/app/Makefile.version +++ b/app/Makefile.version @@ -3,4 +3,4 @@ APPVERSION_M=4 # This is the minor version APPVERSION_N=2 # This is the patch version -APPVERSION_P=2 +APPVERSION_P=3 From 2a38a075b156fb9fa5e01e405860f2577db3b901 Mon Sep 17 00:00:00 2001 From: emmanuelm41 Date: Thu, 21 Nov 2024 08:54:06 -0300 Subject: [PATCH 3/7] feat: bump snapshots --- tests_zemu/snapshots/fl-mainmenu/00004.png | Bin 9640 -> 9838 bytes tests_zemu/snapshots/sp-mainmenu/00004.png | Bin 437 -> 452 bytes tests_zemu/snapshots/sp-mainmenu/00010.png | Bin 437 -> 452 bytes tests_zemu/snapshots/st-mainmenu/00004.png | Bin 11444 -> 11634 bytes tests_zemu/snapshots/x-mainmenu/00004.png | Bin 437 -> 452 bytes tests_zemu/snapshots/x-mainmenu/00010.png | Bin 437 -> 452 bytes 6 files changed, 0 insertions(+), 0 deletions(-) diff --git a/tests_zemu/snapshots/fl-mainmenu/00004.png b/tests_zemu/snapshots/fl-mainmenu/00004.png index e82292883edd031c12391069d5e5d5927549d1bc..fa946076174bbdd91ec7bba6992550e8db2cd27c 100644 GIT binary patch literal 9838 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 AcmMzZ diff --git a/tests_zemu/snapshots/sp-mainmenu/00004.png b/tests_zemu/snapshots/sp-mainmenu/00004.png index cf1ce0a4397871e343259ef2c27d6d3b5ac21f0b..500d0b8f1c73c8212f68f3adafa1ac60fe9622ed 100644 GIT binary patch delta 426 zcmV;b0agCB1H=Q6B!7!ZL_t(|obB0La>F1DKvB2Tov{BUv6p^i!Y~pDVFXDg_k1NT z0xTYJ@pSx(I+#R`oY>K0Q<&GODlW}|MDwEZo{i%vv! z%iwHcYaapy3_zimLUXE?ugx+#)|pCCUW`+(6{GXLsAkFAet!e&dJr8=PvWz|_{xOYIll{XOgI8h~dZj^<8H25KdIL^F4{JWj z8IPE=XG*XPpTUQx9q%UoFm91ZlQ@cD7N1}rgxy#HEC0Lh_I4{^MQ@3ebCL618v2X@ zC}*Gbp}a1`1{KEGG-ls4OqDq=@|EOy^{m&gB*nW2)*}Z10000000000003X*AEt~( U6uMo2KmY&$07*qoM6N<$f)e+~?f?J) delta 411 zcmV;M0c8Hf1GNK?B!7HKL_t(|obB0Lj>8}fKv8DYov{BUv6uO%ijWP)Bu+{+_k6V} z24WtGXi5M800000000000N@fo=c_2C=!-e$lNA~@v@PbGyXBpgtVSIuX?vZF7oCXe zmciM?rF{q#FaVWa3f-w%zjn*$SZ69lc`;6-R*cS%qPisy`+p6r>rHete~8cGHtKa< zPnXVuXSeA#oo3rn8x_99!&ZPX<3t%xxS_73Qi^}GHd?p4+Ws0l_upa$z|*rf#iOms znbXxVs8P<6qo^weAaV<8`?_?udjAP@>~ZbCc#>QJOLMA*h!5$L(^5+NY;3>k@U-&& z=P$3D)=}NQb$_Eqci}Wi?-ff7!Z68X|2Caell_}92H(Uk^i7i_GX|H^=?ypyy;=87 z&UnRKJyU{Z`VKxl?buEHVcba~P2wnqS$qfkAdD5TFJp;pyLz560QKy%J(SmF9+&-n z84ufI|1@mt87p8!JS5s-GkyX900000000000095N9~1$%PRhz`Vut_#002ovPDHLk FV1j&vzVrY9 diff --git a/tests_zemu/snapshots/sp-mainmenu/00010.png b/tests_zemu/snapshots/sp-mainmenu/00010.png index cf1ce0a4397871e343259ef2c27d6d3b5ac21f0b..500d0b8f1c73c8212f68f3adafa1ac60fe9622ed 100644 GIT binary patch delta 426 zcmV;b0agCB1H=Q6B!7!ZL_t(|obB0La>F1DKvB2Tov{BUv6p^i!Y~pDVFXDg_k1NT z0xTYJ@pSx(I+#R`oY>K0Q<&GODlW}|MDwEZo{i%vv! z%iwHcYaapy3_zimLUXE?ugx+#)|pCCUW`+(6{GXLsAkFAet!e&dJr8=PvWz|_{xOYIll{XOgI8h~dZj^<8H25KdIL^F4{JWj z8IPE=XG*XPpTUQx9q%UoFm91ZlQ@cD7N1}rgxy#HEC0Lh_I4{^MQ@3ebCL618v2X@ zC}*Gbp}a1`1{KEGG-ls4OqDq=@|EOy^{m&gB*nW2)*}Z10000000000003X*AEt~( U6uMo2KmY&$07*qoM6N<$f)e+~?f?J) delta 411 zcmV;M0c8Hf1GNK?B!7HKL_t(|obB0Lj>8}fKv8DYov{BUv6uO%ijWP)Bu+{+_k6V} z24WtGXi5M800000000000N@fo=c_2C=!-e$lNA~@v@PbGyXBpgtVSIuX?vZF7oCXe zmciM?rF{q#FaVWa3f-w%zjn*$SZ69lc`;6-R*cS%qPisy`+p6r>rHete~8cGHtKa< zPnXVuXSeA#oo3rn8x_99!&ZPX<3t%xxS_73Qi^}GHd?p4+Ws0l_upa$z|*rf#iOms znbXxVs8P<6qo^weAaV<8`?_?udjAP@>~ZbCc#>QJOLMA*h!5$L(^5+NY;3>k@U-&& z=P$3D)=}NQb$_Eqci}Wi?-ff7!Z68X|2Caell_}92H(Uk^i7i_GX|H^=?ypyy;=87 z&UnRKJyU{Z`VKxl?buEHVcba~P2wnqS$qfkAdD5TFJp;pyLz560QKy%J(SmF9+&-n z84ufI|1@mt87p8!JS5s-GkyX900000000000095N9~1$%PRhz`Vut_#002ovPDHLk FV1j&vzVrY9 diff --git a/tests_zemu/snapshots/st-mainmenu/00004.png b/tests_zemu/snapshots/st-mainmenu/00004.png index c8ba170d529a50a27847cd88d36ed9a69e0afbf0..f07b2ba3d1a5b9fcf5ea4ca9a9a594d947636da6 100644 GIT binary patch delta 8928 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 F{|5#qTtxr? delta 8715 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 U6uMo2KmY&$07*qoM6N<$f)e+~?f?J) delta 411 zcmV;M0c8Hf1GNK?B!7HKL_t(|obB0Lj>8}fKv8DYov{BUv6uO%ijWP)Bu+{+_k6V} z24WtGXi5M800000000000N@fo=c_2C=!-e$lNA~@v@PbGyXBpgtVSIuX?vZF7oCXe zmciM?rF{q#FaVWa3f-w%zjn*$SZ69lc`;6-R*cS%qPisy`+p6r>rHete~8cGHtKa< zPnXVuXSeA#oo3rn8x_99!&ZPX<3t%xxS_73Qi^}GHd?p4+Ws0l_upa$z|*rf#iOms znbXxVs8P<6qo^weAaV<8`?_?udjAP@>~ZbCc#>QJOLMA*h!5$L(^5+NY;3>k@U-&& z=P$3D)=}NQb$_Eqci}Wi?-ff7!Z68X|2Caell_}92H(Uk^i7i_GX|H^=?ypyy;=87 z&UnRKJyU{Z`VKxl?buEHVcba~P2wnqS$qfkAdD5TFJp;pyLz560QKy%J(SmF9+&-n z84ufI|1@mt87p8!JS5s-GkyX900000000000095N9~1$%PRhz`Vut_#002ovPDHLk FV1j&vzVrY9 diff --git a/tests_zemu/snapshots/x-mainmenu/00010.png b/tests_zemu/snapshots/x-mainmenu/00010.png index cf1ce0a4397871e343259ef2c27d6d3b5ac21f0b..500d0b8f1c73c8212f68f3adafa1ac60fe9622ed 100644 GIT binary patch delta 426 zcmV;b0agCB1H=Q6B!7!ZL_t(|obB0La>F1DKvB2Tov{BUv6p^i!Y~pDVFXDg_k1NT z0xTYJ@pSx(I+#R`oY>K0Q<&GODlW}|MDwEZo{i%vv! z%iwHcYaapy3_zimLUXE?ugx+#)|pCCUW`+(6{GXLsAkFAet!e&dJr8=PvWz|_{xOYIll{XOgI8h~dZj^<8H25KdIL^F4{JWj z8IPE=XG*XPpTUQx9q%UoFm91ZlQ@cD7N1}rgxy#HEC0Lh_I4{^MQ@3ebCL618v2X@ zC}*Gbp}a1`1{KEGG-ls4OqDq=@|EOy^{m&gB*nW2)*}Z10000000000003X*AEt~( U6uMo2KmY&$07*qoM6N<$f)e+~?f?J) delta 411 zcmV;M0c8Hf1GNK?B!7HKL_t(|obB0Lj>8}fKv8DYov{BUv6uO%ijWP)Bu+{+_k6V} z24WtGXi5M800000000000N@fo=c_2C=!-e$lNA~@v@PbGyXBpgtVSIuX?vZF7oCXe zmciM?rF{q#FaVWa3f-w%zjn*$SZ69lc`;6-R*cS%qPisy`+p6r>rHete~8cGHtKa< zPnXVuXSeA#oo3rn8x_99!&ZPX<3t%xxS_73Qi^}GHd?p4+Ws0l_upa$z|*rf#iOms znbXxVs8P<6qo^weAaV<8`?_?udjAP@>~ZbCc#>QJOLMA*h!5$L(^5+NY;3>k@U-&& z=P$3D)=}NQb$_Eqci}Wi?-ff7!Z68X|2Caell_}92H(Uk^i7i_GX|H^=?ypyy;=87 z&UnRKJyU{Z`VKxl?buEHVcba~P2wnqS$qfkAdD5TFJp;pyLz560QKy%J(SmF9+&-n z84ufI|1@mt87p8!JS5s-GkyX900000000000095N9~1$%PRhz`Vut_#002ovPDHLk FV1j&vzVrY9 From bccf8d2af349e92271bb1b6135a377944883b809 Mon Sep 17 00:00:00 2001 From: emmanuelm41 Date: Thu, 21 Nov 2024 08:54:32 -0300 Subject: [PATCH 4/7] feat: update some snapshots --- tests_zemu/snapshots/s-mainmenu/00004.png | Bin 488 -> 488 bytes tests_zemu/snapshots/s-mainmenu/00010.png | Bin 488 -> 488 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/tests_zemu/snapshots/s-mainmenu/00004.png b/tests_zemu/snapshots/s-mainmenu/00004.png index 99401b225434b060f2711907922d4d105168d096..a78e6827221d778de03512e89e1ec8c4ac1e2397 100644 GIT binary patch delta 453 zcmV;$0XqKZ1Ly;gEq_6>!ypJiP3PzS2hJj0_=h2Y1i{)m;Y}A!qN1RHT1t{6N%B;- z8A8rOlDtP7R9e6iw_Pr8Y^1kVCx4?F(!kvvJpcith>!Nc%oGCvd?|=i6&}ShyslA| zq&%@xON!W4@ukb6FGrmyWX#+C|0Dm&fZ;uFM}+Ik;%!9H<$ul{wQ3odxB`?JN6J{L zE5J%R4^w#%+LEq!)ung9W`JH9eAt#2u!>u*$*9v_8$c}wu~;(K1>wGS^_%;j7LNJo z3)h2U_!Ji;uGXs4^SH!D{K%^po3b2%k@rL|V60`4Y$~NB^22ldhv8ZQ+>^ut(UXy4 zKx%U=s#9eKsDEjLZiDLhM1P%dh(520+0_8>?bZe*x&e6>?X(yffPB+!pzo&=PSqz% zPh45h?ZofRf|OmZlH`TYVSa(YMhwnvf`d06KZs{L>$|~;8!>(ccgwQ#+Ky`l;QYsu z3*kx1jS;+=nQ+1INdhitS{kaTczqZ2jr#xquZhx7;y$vPH8RTp;w2P`;n**Uc~|S} v%GiSNw>&Ia9O8vkW!V^zBuSDaN%BnIZjtaJMqoD400000NkvXXu0mjf4|(5% delta 453 zcmV;$0XqKZ1Ly;gEq}q1!ypKT&CcfiA2^5fkR65q;xDGQ+3-ydO`@V8h+0aLBuVmA zmKj3!&62#1Ht4j#B`&L79&DtyRwut#HRQp&d-VVeKoM{41I!cy5ZV>YsY;J#8C@4t zr6@1#RFh(M)qEMU=ue=|C}PaZ`u7w6#enI(ZpTFH3yC(S=zr1*N3~i26FtD0aiR=T z-GMx5-=Oj&v?kr}YDn({W`JH9de}${T*bA}1nRWc22?A+*jh3-1o6Ih^;^fE8iDy3 zTdpr!!>5EG(_0Un?%Qc?~!ITwP74&rP;=tSi^Z-GV?Cv v>)pUY(5FTyoWs13s(nq8BuSDaNxqmDy*}_5;DC!`00000NkvXXu0mjfjW^%u diff --git a/tests_zemu/snapshots/s-mainmenu/00010.png b/tests_zemu/snapshots/s-mainmenu/00010.png index 99401b225434b060f2711907922d4d105168d096..a78e6827221d778de03512e89e1ec8c4ac1e2397 100644 GIT binary patch delta 453 zcmV;$0XqKZ1Ly;gEq_6>!ypJiP3PzS2hJj0_=h2Y1i{)m;Y}A!qN1RHT1t{6N%B;- z8A8rOlDtP7R9e6iw_Pr8Y^1kVCx4?F(!kvvJpcith>!Nc%oGCvd?|=i6&}ShyslA| zq&%@xON!W4@ukb6FGrmyWX#+C|0Dm&fZ;uFM}+Ik;%!9H<$ul{wQ3odxB`?JN6J{L zE5J%R4^w#%+LEq!)ung9W`JH9eAt#2u!>u*$*9v_8$c}wu~;(K1>wGS^_%;j7LNJo z3)h2U_!Ji;uGXs4^SH!D{K%^po3b2%k@rL|V60`4Y$~NB^22ldhv8ZQ+>^ut(UXy4 zKx%U=s#9eKsDEjLZiDLhM1P%dh(520+0_8>?bZe*x&e6>?X(yffPB+!pzo&=PSqz% zPh45h?ZofRf|OmZlH`TYVSa(YMhwnvf`d06KZs{L>$|~;8!>(ccgwQ#+Ky`l;QYsu z3*kx1jS;+=nQ+1INdhitS{kaTczqZ2jr#xquZhx7;y$vPH8RTp;w2P`;n**Uc~|S} v%GiSNw>&Ia9O8vkW!V^zBuSDaN%BnIZjtaJMqoD400000NkvXXu0mjf4|(5% delta 453 zcmV;$0XqKZ1Ly;gEq}q1!ypKT&CcfiA2^5fkR65q;xDGQ+3-ydO`@V8h+0aLBuVmA zmKj3!&62#1Ht4j#B`&L79&DtyRwut#HRQp&d-VVeKoM{41I!cy5ZV>YsY;J#8C@4t zr6@1#RFh(M)qEMU=ue=|C}PaZ`u7w6#enI(ZpTFH3yC(S=zr1*N3~i26FtD0aiR=T z-GMx5-=Oj&v?kr}YDn({W`JH9de}${T*bA}1nRWc22?A+*jh3-1o6Ih^;^fE8iDy3 zTdpr!!>5EG(_0Un?%Qc?~!ITwP74&rP;=tSi^Z-GV?Cv v>)pUY(5FTyoWs13s(nq8BuSDaNxqmDy*}_5;DC!`00000NkvXXu0mjfjW^%u From e211829ed7de03e4cf07adabc2200771c176b92c Mon Sep 17 00:00:00 2001 From: emmanuelm41 Date: Thu, 21 Nov 2024 10:50:40 -0300 Subject: [PATCH 5/7] chore: update zcash rs dependency --- zcashtools/Cargo.lock | 177 +++++++++++++++++++++++++++++++++--------- zcashtools/Cargo.toml | 4 +- 2 files changed, 143 insertions(+), 38 deletions(-) diff --git a/zcashtools/Cargo.lock b/zcashtools/Cargo.lock index 09389f58..ee21a54a 100644 --- a/zcashtools/Cargo.lock +++ b/zcashtools/Cargo.lock @@ -448,6 +448,15 @@ dependencies = [ "log", ] +[[package]] +name = "equihash" +version = "0.1.0" +source = "git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae#112eedd27b2e51b9e1b77603a776cd78e738c3ae" +dependencies = [ + "blake2b_simd", + "byteorder", +] + [[package]] name = "equihash" version = "0.2.0" @@ -527,6 +536,24 @@ dependencies = [ "subtle", ] +[[package]] +name = "halo2_gadgets" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13f3914f58cc4af5e4fe83d48b02d582be18976bc7e96c3151aa2bf1c98e9f60" +dependencies = [ + "arrayvec", + "bitvec", + "ff", + "group", + "halo2_proofs 0.1.0", + "lazy_static", + "pasta_curves", + "rand", + "subtle", + "uint", +] + [[package]] name = "halo2_gadgets" version = "0.2.0" @@ -537,7 +564,7 @@ dependencies = [ "bitvec", "ff", "group", - "halo2_proofs", + "halo2_proofs 0.2.0", "lazy_static", "pasta_curves", "rand", @@ -545,6 +572,20 @@ dependencies = [ "uint", ] +[[package]] +name = "halo2_proofs" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e925780549adee8364c7f2b685c753f6f3df23bde520c67416e93bf615933760" +dependencies = [ + "blake2b_simd", + "ff", + "group", + "pasta_curves", + "rand_core", + "rayon", +] + [[package]] name = "halo2_proofs" version = "0.2.0" @@ -668,7 +709,7 @@ dependencies = [ [[package]] name = "ledger-zcash" version = "0.11.2" -source = "git+https://github.com/Zondax/ledger-zcash-rs?rev=0dd05cee4427f2c7ff1bfc9fb11f62f878c0cfa8#0dd05cee4427f2c7ff1bfc9fb11f62f878c0cfa8" +source = "git+https://github.com/Zondax/ledger-zcash-rs?rev=3bad2fa4a7870270627edc25ebdb5b4818fd1855#3bad2fa4a7870270627edc25ebdb5b4818fd1855" dependencies = [ "arrayvec", "byteorder", @@ -690,14 +731,14 @@ dependencies = [ "sha2 0.10.8", "thiserror", "tokio", - "zcash_primitives", + "zcash_primitives 0.6.0", "zx-bip44", ] [[package]] name = "ledger-zcash-builder" version = "0.11.2" -source = "git+https://github.com/Zondax/ledger-zcash-rs?rev=0dd05cee4427f2c7ff1bfc9fb11f62f878c0cfa8#0dd05cee4427f2c7ff1bfc9fb11f62f878c0cfa8" +source = "git+https://github.com/Zondax/ledger-zcash-rs?rev=3bad2fa4a7870270627edc25ebdb5b4818fd1855#3bad2fa4a7870270627edc25ebdb5b4818fd1855" dependencies = [ "bellman", "blake2b_simd", @@ -722,8 +763,8 @@ dependencies = [ "sha2 0.10.8", "thiserror", "tokio", - "zcash_note_encryption", - "zcash_primitives", + "zcash_note_encryption 0.1.0 (git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae)", + "zcash_primitives 0.6.0", "zcash_proofs", ] @@ -967,6 +1008,33 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" +[[package]] +name = "orchard" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f918076e191a68d55c5517a16e075ecfe58fc63ed112408263f3d6194597bfcf" +dependencies = [ + "aes", + "bitvec", + "blake2b_simd", + "ff", + "fpe", + "group", + "halo2_gadgets 0.1.0", + "halo2_proofs 0.1.0", + "hex", + "incrementalmerkletree", + "lazy_static", + "memuse", + "nonempty", + "pasta_curves", + "rand", + "reddsa", + "serde", + "subtle", + "zcash_note_encryption 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "orchard" version = "0.2.0" @@ -979,8 +1047,8 @@ dependencies = [ "ff", "fpe", "group", - "halo2_gadgets", - "halo2_proofs", + "halo2_gadgets 0.2.0", + "halo2_proofs 0.2.0", "hex", "incrementalmerkletree", "lazy_static", @@ -992,7 +1060,7 @@ dependencies = [ "serde", "subtle", "tracing", - "zcash_note_encryption", + "zcash_note_encryption 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1154,22 +1222,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "redjubjub" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6039ff156887caf92df308cbaccdc058c9d3155a913da046add6e48c4cdbd91d" -dependencies = [ - "blake2b_simd", - "byteorder", - "digest 0.9.0", - "jubjub", - "rand_core", - "serde", - "thiserror", - "zeroize", -] - [[package]] name = "redox_users" version = "0.4.5" @@ -1649,6 +1701,15 @@ dependencies = [ "nonempty", ] +[[package]] +name = "zcash_encoding" +version = "0.1.0" +source = "git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae#112eedd27b2e51b9e1b77603a776cd78e738c3ae" +dependencies = [ + "byteorder", + "nonempty", +] + [[package]] name = "zcash_note_encryption" version = "0.1.0" @@ -1661,6 +1722,53 @@ dependencies = [ "subtle", ] +[[package]] +name = "zcash_note_encryption" +version = "0.1.0" +source = "git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae#112eedd27b2e51b9e1b77603a776cd78e738c3ae" +dependencies = [ + "chacha20", + "chacha20poly1305", + "rand_core", + "subtle", +] + +[[package]] +name = "zcash_primitives" +version = "0.6.0" +source = "git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae#112eedd27b2e51b9e1b77603a776cd78e738c3ae" +dependencies = [ + "aes", + "bip0039", + "bitvec", + "blake2b_simd", + "blake2s_simd", + "bls12_381", + "bs58", + "byteorder", + "chacha20poly1305", + "equihash 0.1.0", + "ff", + "fpe", + "group", + "hdwallet", + "hex", + "incrementalmerkletree", + "jubjub", + "lazy_static", + "memuse", + "nonempty", + "orchard 0.1.0", + "rand", + "rand_core", + "ripemd", + "secp256k1 0.21.3", + "sha2 0.9.9", + "subtle", + "zcash_encoding 0.1.0 (git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae)", + "zcash_note_encryption 0.1.0 (git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae)", +] + [[package]] name = "zcash_primitives" version = "0.7.0" @@ -1676,7 +1784,7 @@ dependencies = [ "bs58", "byteorder", "chacha20poly1305", - "equihash", + "equihash 0.2.0", "ff", "fpe", "group", @@ -1687,22 +1795,21 @@ dependencies = [ "lazy_static", "memuse", "nonempty", - "orchard", + "orchard 0.2.0", "rand", "rand_core", "ripemd", "secp256k1 0.21.3", "sha2 0.9.9", "subtle", - "zcash_encoding", - "zcash_note_encryption", + "zcash_encoding 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_note_encryption 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "zcash_proofs" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98bf5f6af051dd929263f279b21b9c04c1f30116c70f3c190de2566677f245ef" +version = "0.6.0" +source = "git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae#112eedd27b2e51b9e1b77603a776cd78e738c3ae" dependencies = [ "bellman", "blake2b_simd", @@ -1714,9 +1821,7 @@ dependencies = [ "jubjub", "lazy_static", "rand_core", - "redjubjub", - "tracing", - "zcash_primitives", + "zcash_primitives 0.6.0", ] [[package]] @@ -1734,7 +1839,7 @@ dependencies = [ "serde_derive", "serde_json", "snafu", - "zcash_primitives", + "zcash_primitives 0.7.0", "zcashtool", ] diff --git a/zcashtools/Cargo.toml b/zcashtools/Cargo.toml index 70f40548..28f590b4 100644 --- a/zcashtools/Cargo.toml +++ b/zcashtools/Cargo.toml @@ -8,8 +8,8 @@ opt-level = "s" overflow-checks = true [patch.crates-io] -ledger-zcash-builder = { git = "https://github.com/Zondax/ledger-zcash-rs", rev = "0dd05cee4427f2c7ff1bfc9fb11f62f878c0cfa8" } -ledger-zcash = { git = "https://github.com/Zondax/ledger-zcash-rs", rev = "0dd05cee4427f2c7ff1bfc9fb11f62f878c0cfa8" } +ledger-zcash-builder = { git = "https://github.com/Zondax/ledger-zcash-rs", rev = "3bad2fa4a7870270627edc25ebdb5b4818fd1855" } +ledger-zcash = { git = "https://github.com/Zondax/ledger-zcash-rs", rev = "3bad2fa4a7870270627edc25ebdb5b4818fd1855" } # ledger-zcash-builder = { path = "../../ledger-zcash-rs/ledger-zcash-builder" } # ledger-zcash = { path = "../../ledger-zcash-rs/ledger-zcash" } From 0632dd3b4c549e192889f2c26de0e2973098bf79 Mon Sep 17 00:00:00 2001 From: emmanuelm41 Date: Thu, 21 Nov 2024 11:16:14 -0300 Subject: [PATCH 6/7] feat: update rdeps eferences --- zcashtools/Cargo.lock | 173 +++--------------------------- zcashtools/neon/native/Cargo.toml | 6 +- 2 files changed, 15 insertions(+), 164 deletions(-) diff --git a/zcashtools/Cargo.lock b/zcashtools/Cargo.lock index ee21a54a..553a48a6 100644 --- a/zcashtools/Cargo.lock +++ b/zcashtools/Cargo.lock @@ -52,9 +52,9 @@ checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" [[package]] name = "async-trait" -version = "0.1.80" +version = "0.1.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" +checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", @@ -457,16 +457,6 @@ dependencies = [ "byteorder", ] -[[package]] -name = "equihash" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab579d7cf78477773b03e80bc2f89702ef02d7112c711d54ca93dcdce68533d5" -dependencies = [ - "blake2b_simd", - "byteorder", -] - [[package]] name = "ff" version = "0.12.1" @@ -546,25 +536,7 @@ dependencies = [ "bitvec", "ff", "group", - "halo2_proofs 0.1.0", - "lazy_static", - "pasta_curves", - "rand", - "subtle", - "uint", -] - -[[package]] -name = "halo2_gadgets" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85e10bf9924da1754e443641c9e7f9f00483749f8fb837fde696ef6ed6e2f079" -dependencies = [ - "arrayvec", - "bitvec", - "ff", - "group", - "halo2_proofs 0.2.0", + "halo2_proofs", "lazy_static", "pasta_curves", "rand", @@ -586,21 +558,6 @@ dependencies = [ "rayon", ] -[[package]] -name = "halo2_proofs" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cff771b9a2445cd2545c9ef26d863c290fbb44ae440c825a20eb7156f67a949a" -dependencies = [ - "blake2b_simd", - "ff", - "group", - "pasta_curves", - "rand_core", - "rayon", - "tracing", -] - [[package]] name = "hdwallet" version = "0.3.1" @@ -731,7 +688,7 @@ dependencies = [ "sha2 0.10.8", "thiserror", "tokio", - "zcash_primitives 0.6.0", + "zcash_primitives", "zx-bip44", ] @@ -764,7 +721,7 @@ dependencies = [ "thiserror", "tokio", "zcash_note_encryption 0.1.0 (git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae)", - "zcash_primitives 0.6.0", + "zcash_primitives", "zcash_proofs", ] @@ -1020,35 +977,8 @@ dependencies = [ "ff", "fpe", "group", - "halo2_gadgets 0.1.0", - "halo2_proofs 0.1.0", - "hex", - "incrementalmerkletree", - "lazy_static", - "memuse", - "nonempty", - "pasta_curves", - "rand", - "reddsa", - "serde", - "subtle", - "zcash_note_encryption 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "orchard" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7619db7f917afd9b1139044c595fab1b6166de2db62317794b5f5e34a2104ae1" -dependencies = [ - "aes", - "bitvec", - "blake2b_simd", - "ff", - "fpe", - "group", - "halo2_gadgets 0.2.0", - "halo2_proofs 0.2.0", + "halo2_gadgets", + "halo2_proofs", "hex", "incrementalmerkletree", "lazy_static", @@ -1059,7 +989,6 @@ dependencies = [ "reddsa", "serde", "subtle", - "tracing", "zcash_note_encryption 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1504,37 +1433,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "tracing" -version = "0.1.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" -dependencies = [ - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.61", -] - -[[package]] -name = "tracing-core" -version = "0.1.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" -dependencies = [ - "once_cell", -] - [[package]] name = "typenum" version = "1.17.0" @@ -1691,16 +1589,6 @@ dependencies = [ "tap", ] -[[package]] -name = "zcash_encoding" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb61ea88eb539bc0ac2068e5da99411dd4978595b3d7ff6a4b1562ddc8e8710" -dependencies = [ - "byteorder", - "nonempty", -] - [[package]] name = "zcash_encoding" version = "0.1.0" @@ -1747,7 +1635,7 @@ dependencies = [ "bs58", "byteorder", "chacha20poly1305", - "equihash 0.1.0", + "equihash", "ff", "fpe", "group", @@ -1758,54 +1646,17 @@ dependencies = [ "lazy_static", "memuse", "nonempty", - "orchard 0.1.0", + "orchard", "rand", "rand_core", "ripemd", "secp256k1 0.21.3", "sha2 0.9.9", "subtle", - "zcash_encoding 0.1.0 (git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae)", + "zcash_encoding", "zcash_note_encryption 0.1.0 (git+https://github.com/Zondax/librustzcash?rev=112eedd27b2e51b9e1b77603a776cd78e738c3ae)", ] -[[package]] -name = "zcash_primitives" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fbb401f5dbc482b831954aaa7cba0a8fe148241db6d19fe7cebda78252ca680" -dependencies = [ - "aes", - "bip0039", - "bitvec", - "blake2b_simd", - "blake2s_simd", - "bls12_381", - "bs58", - "byteorder", - "chacha20poly1305", - "equihash 0.2.0", - "ff", - "fpe", - "group", - "hdwallet", - "hex", - "incrementalmerkletree", - "jubjub", - "lazy_static", - "memuse", - "nonempty", - "orchard 0.2.0", - "rand", - "rand_core", - "ripemd", - "secp256k1 0.21.3", - "sha2 0.9.9", - "subtle", - "zcash_encoding 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "zcash_note_encryption 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "zcash_proofs" version = "0.6.0" @@ -1821,7 +1672,7 @@ dependencies = [ "jubjub", "lazy_static", "rand_core", - "zcash_primitives 0.6.0", + "zcash_primitives", ] [[package]] @@ -1839,7 +1690,7 @@ dependencies = [ "serde_derive", "serde_json", "snafu", - "zcash_primitives 0.7.0", + "zcash_primitives", "zcashtool", ] diff --git a/zcashtools/neon/native/Cargo.toml b/zcashtools/neon/native/Cargo.toml index 5986da2a..b3a526fc 100644 --- a/zcashtools/neon/native/Cargo.toml +++ b/zcashtools/neon/native/Cargo.toml @@ -19,14 +19,14 @@ serde_derive = "1" serde = "1" log = "0.4" snafu = { version = "0.8.2" } -zcash_primitives = { version = "0.7", features = ["transparent-inputs"] } +zcash_primitives = { git = "https://github.com/Zondax/librustzcash", rev = "112eedd27b2e51b9e1b77603a776cd78e738c3ae", features = ["transparent-inputs"], package = "zcash_primitives" } neon-serde = { git = "https://github.com/Zondax/neon-serde", branch = "master", default-features = false, features = [ "napi-6", ] } -ledger-zcash-builder = "=0.11.2" -ledger-zcash = "0.11.2" +ledger-zcash-builder = { git = "https://github.com/Zondax/ledger-zcash-rs", rev = "3bad2fa4a7870270627edc25ebdb5b4818fd1855", package = "ledger-zcash-builder" } +ledger-zcash = { git = "https://github.com/Zondax/ledger-zcash-rs", rev = "3bad2fa4a7870270627edc25ebdb5b4818fd1855", package = "ledger-zcash" } [dev-dependencies] serde = { version = "1", features = ["derive"] } From 10122a542b7b9bf4a0a3a62605c81f3b47a7344a Mon Sep 17 00:00:00 2001 From: emmanuelm41 Date: Thu, 21 Nov 2024 15:26:25 -0300 Subject: [PATCH 7/7] fix: tests --- zcashtools/neon/native/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zcashtools/neon/native/src/lib.rs b/zcashtools/neon/native/src/lib.rs index 52df2e2e..83ceaab8 100644 --- a/zcashtools/neon/native/src/lib.rs +++ b/zcashtools/neon/native/src/lib.rs @@ -218,7 +218,7 @@ impl ZcashBuilderBridge { AuthorisationStatus::Unauthorized(mut builder) => { let mut prover = txprover::LocalTxProver::new(Path::new(spendpath), Path::new(outputpath)); - let res = builder.build(consensus::BranchId::Nu5, tx_ver, &mut prover); + let res = builder.build(consensus::BranchId::Nu6, tx_ver, &mut prover); match res { Ok(_) => self.zcashbuilder = AuthorisationStatus::Unauthorized(builder), Err(ref e) => {