From 8492f995dfde11b42870ae3af27740590098bb32 Mon Sep 17 00:00:00 2001 From: jonesmarvin8 <83104039+jonesmarvin8@users.noreply.github.com> Date: Wed, 20 May 2026 16:36:24 -0400 Subject: [PATCH] ci fixes --- Cargo.lock | 26 ++++++++---------- .../authenticated_transfer.bin | Bin 405224 -> 405192 bytes artifacts/program_methods/faucet.bin | Bin 415816 -> 415816 bytes artifacts/program_methods/pinata.bin | Bin 394012 -> 394012 bytes artifacts/program_methods/pinata_token.bin | Bin 399840 -> 399840 bytes .../privacy_preserving_circuit.bin | Bin 583212 -> 583212 bytes artifacts/program_methods/vault.bin | Bin 413572 -> 413572 bytes .../auth_asserting_noop.bin | Bin 384716 -> 384716 bytes .../auth_transfer_proxy.bin | Bin 403556 -> 403556 bytes .../test_program_methods/changer_claimer.bin | Bin 389276 -> 389276 bytes .../clock_chain_caller.bin | Bin 392592 -> 392592 bytes .../test_program_methods/data_changer.bin | Bin 386796 -> 386824 bytes .../test_program_methods/extra_output.bin | Bin 385676 -> 385676 bytes .../faucet_chain_caller.bin | Bin 401352 -> 401320 bytes .../malicious_caller_program_id.bin | Bin 384236 -> 384236 bytes .../malicious_self_program_id.bin | Bin 384208 -> 384208 bytes artifacts/test_program_methods/noop.bin | Bin 384256 -> 384256 bytes .../test_program_methods/pda_claimer.bin | Bin 391228 -> 391252 bytes .../pda_fund_spend_proxy.bin | Bin 403980 -> 403980 bytes .../private_pda_delegator.bin | Bin 395428 -> 395428 bytes .../time_locked_transfer.bin | Bin 407716 -> 407716 bytes .../test_program_methods/two_pda_claimer.bin | Bin 391968 -> 391968 bytes .../test_program_methods/validity_window.bin | Bin 387572 -> 387448 bytes .../validity_window_chain_caller.bin | Bin 410168 -> 410168 bytes integration_tests/tests/shared_accounts.rs | 7 ++--- nssa/core/Cargo.toml | 3 +- nssa/core/src/encryption/mod.rs | 2 +- .../src/encryption/shared_key_derivation.rs | 17 ++++++++++-- testnet_initial_state/src/lib.rs | 15 ++++++---- tools/crypto_primitives_bench/Cargo.toml | 1 - tools/crypto_primitives_bench/src/main.rs | 10 +++++-- wallet/src/cli/group.rs | 5 +++- wallet/src/lib.rs | 8 ++++-- 33 files changed, 57 insertions(+), 37 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 154c6ea6..fce1df09 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -674,9 +674,9 @@ checksum = "4858a9d740c5007a9069007c3b4e91152d0506f13c1b31dd49051fd537656156" [[package]] name = "astral-tokio-tar" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ce73b17c62717c4b6a9af10b43e87c578b0cac27e00666d48304d3b7d2c0693" +checksum = "cb50a7aae84a03bf55b067832bc376f4961b790c97e64d3eacee97d389b90277" dependencies = [ "filetime", "futures-core", @@ -1972,7 +1972,6 @@ dependencies = [ "anyhow", "key_protocol", "nssa_core", - "rand 0.8.5", "serde", "serde_json", ] @@ -2134,7 +2133,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ab67060fc6b8ef687992d439ca0fa36e7ed17e9a0b16b25b601e8757df720de" dependencies = [ "data-encoding", - "syn 2.0.117", + "syn 1.0.109", ] [[package]] @@ -2318,7 +2317,7 @@ dependencies = [ "libc", "option-ext", "redox_users", - "windows-sys 0.61.2", + "windows-sys 0.59.0", ] [[package]] @@ -2649,7 +2648,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] @@ -3629,7 +3628,7 @@ dependencies = [ "libc", "percent-encoding", "pin-project-lite", - "socket2 0.6.3", + "socket2 0.5.10", "tokio", "tower-service", "tracing", @@ -6479,7 +6478,6 @@ dependencies = [ "bytemuck", "bytesize", "chacha20", - "k256", "ml-kem", "risc0-zkvm", "serde", @@ -6494,7 +6492,7 @@ version = "0.50.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" dependencies = [ - "windows-sys 0.61.2", + "windows-sys 0.59.0", ] [[package]] @@ -7358,7 +7356,7 @@ dependencies = [ "quinn-udp", "rustc-hash", "rustls", - "socket2 0.6.3", + "socket2 0.5.10", "thiserror 2.0.18", "tokio", "tracing", @@ -7395,7 +7393,7 @@ dependencies = [ "cfg_aliases", "libc", "once_cell", - "socket2 0.6.3", + "socket2 0.5.10", "tracing", "windows-sys 0.59.0", ] @@ -8292,7 +8290,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] @@ -9283,7 +9281,7 @@ dependencies = [ "getrandom 0.4.2", "once_cell", "rustix", - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] @@ -10586,7 +10584,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] diff --git a/artifacts/program_methods/authenticated_transfer.bin b/artifacts/program_methods/authenticated_transfer.bin index d050cd62cc1f0dccf6319f1eea76ff8fc38fc1f1..29f68451a9a32e503998421fb35117c0b1392fd7 100644 GIT binary patch delta 10474 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 delta 10516 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 diff --git a/artifacts/program_methods/faucet.bin b/artifacts/program_methods/faucet.bin index 00a81dc936cd1c2901ee8b4be9e1972805516195..95c53175a7777a497368cbe413c18aaed31d3f43 100644 GIT binary patch delta 955 zcmX@HLGr`~$%Yoj7N!>F7M3lni?~G0EeuV}j14R-OiWEo%`Gj>jm;URGa9g{O~1p% z$|;ORdixJ9*7GdbWTxNZXPt-BM0FWMy_}q~Ts=c9hJx)>mo~wzV!NOqs|*iTYaL`+ z4X{ci`m>sE-zCd>2&;3q_baiAGvjuz6mG{%|E7po%_cRt}shK9sPi;|n^FTehd`us&hL?O|y=NoD#1Jyw0(T4l^}hXXXI yEC{KX-m8xF7M3lni?~Eg%q~OiYX|j19~!Obi&NGa9g{O~1p% z$|;ORdixJ9*7GdbWTxNZXPt-BM0FWMy_}q~Ts=c9hJx)>mo~wzV!NOqs|*iTYaL`+ z4X{ci`m>sE-zCd>2&;3q_baiAGvjuz6mG{%|EDE$jTvvnX@kA6ue3YM=$@B;OtP1Tj3|P0%FksuD F4gkfM-VXo( diff --git a/artifacts/program_methods/pinata.bin b/artifacts/program_methods/pinata.bin index 5c9233bdba8d18d7a3526533708bf59144f06cda..af6c9d67f8b4b76ef210974b73222f0682426bd0 100644 GIT binary patch delta 886 zcmbQ!CNZZ?qM?Pcg{g&k3(LFJD|mfft_bRM|IG6S19#6(k^CPJ;Wz^P#ShwCicSa2CV{lOg;4s4RY?y#H@ z#`J*Y^p6~@#?yK3v8>0Y3+!4Gg03~h=~}RNrdQu*;lyqEsrxL6SS;Ue`+(&tBUWv8 z?^wmATR&nc#-eTdfk!N%Sat0)WeJ|%_l<=etL#EE7KiEeCanC^d(Bt`rEvPlayn3D z-1LU;EbQ292Zh-5bx*KI0#H&@5~s=Fu#z$%Aa99ZUfR$cuL47yj<$Km!iiI|9*?Aq Z32rxAPXB+BMW+4NGnVbYp0O&)007P2_M-p* delta 886 zcmbQ!CNZZ?qM?Pcg{g&k3(LFJD|mfft_bRM|IG6S19#6(k^CPJ;Wz^P#ShwCicSa2CV{lOg;4s4RY?y#H@ z#`J*Y^p6~@#?yK3v8>0Y3+!4Gg03~h=~}RNrdQu*;lyqEsrxL6SS;Ue`+(&tBUWv8 z?^wmATR&nc#-eTdfk!N%Sat0)WeJ|%_l<=etL#EE7KiEeCanC^d(Bt`rEvPlayn3D z-1LU;EbQ292Zh-5bx*KI0#H&@5~s=Fu#z$%Aa99ZUfR$cuL47yj<$Km!iiI|9*?Aq Z32rxAPXB+BMW+4NGnVbYp0O&)008&~_P_uD diff --git a/artifacts/program_methods/pinata_token.bin b/artifacts/program_methods/pinata_token.bin index fd3adddb06dc3019c7b061b29a606e73b1db5a59..e7b27854f7e96b29219456182b0bcfb60cdb2207 100644 GIT binary patch delta 1124 zcmaJ=OG^S#6iz$W2V!Yaj<)Ev&`qW@nj=UQv}k2WMO2Wrsf|GkYgJGnwCK6X^DiPW zm{sH-2>J&jDHukXp(YiSPCGs0_I!Mgd+v8KDK3-Z4ilP$Hqm(tI@ucFgQAc3d4(X) z2Lw?JV&oH?I4Ogn6_b|gV+}Fi$-osg?|*^|jjhF_Bf1h6J$U{FqbO%#w^i{!#c2+V zYS;sbN%!5X1iFIWtVW$2SkA8=2tTyYfy zRaXV~t9~Wke1i?+Wq2gqm6O=7P$$tSstfNbpjYGl(7e(j8$y4Ttcc=wT?HfE6Z}=B pdFT`_yT9FHT=t2!FotSi;F>!dRL(dMMR}ER$MG6S@fwQ_{{eF|F6jUO delta 1126 zcmaJ=O-lk%6ivHN4Y8~!$6EBY&=#4_G>(BpL5o&KR73??o7xz(uvP^H11*YbllNal zU@)u5KM?c}MoKV@GDA%&sBv1(9k=Ij&bjZtbF*nKo8}H>i)@vfZ@{Lui@YR^Mi#C=ai+%GVPLn#q*RGdPKNW9SJ4Y%9PN;ki)& znSzIzq>Q{kikf~s22pgs0Y?Z`JDbJ>n!7lGdF*pBTL3C5uRGZ5?Cxlm*V_@J8I{8svwxA z>bz+Bmw5dR9!!?ufk@YHV!uM&M7^ngysd!UO!q_UN{g%?#VXkmJ@2YYwtqt_3jUhv ng7g@Euh?iaes8!TjnNu7IK$oOhb+ZWU1i*HvIa`B#u5X6Cs{2m diff --git a/artifacts/program_methods/privacy_preserving_circuit.bin b/artifacts/program_methods/privacy_preserving_circuit.bin index 2d8e902cf8275fd57b4838a7a846e518f65f9701..4e6433919f7b36290f0a9f8342b7e473743cf074 100644 GIT binary patch delta 233 zcmZ2;MtRK{<%Sl<7N!>F7M2#)7Pc+yHudnHySIT3VP|8kw4ym|0HGUB<31 zWvZ8xQ delta 233 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

TW4#be>rZ}C_OsDfKR^?4f{ za{z<&sDZ!2DTgdsq1F%ng$UgeeL}hNmcbLZ;!wxv`hmal<*+H*7!z$4JjFoFE-UiV za5rp%>kwF@B5)ke=b)A;1&>~U11Z=8moD}^(&PqY$P%Alfh)Ce-MVrX7Wg$#2+x1T&v_G^LyhFC{RQ1P z#HnHFrMM1``Ierqc-9rX4H_+(tJ%?XjkxovVgBCd8KA1T1kPE?H%6s!H++;+;6>opo+zBn4>^^hRyb#eB{{05hV-JZ zH=1I*-+^2OW4PzI({IRmOIU3P$z^ahOn@Tid^y}g5#=fmzJg14S&{dv z>%fhCdx+m_MRd6QG+avr@hf7`W_U(Y^nP~dSEcj*Szt$B)b7An3?!L;#m^b`J6V4*!uvcWC!NJ!4#t^Q^&-v}8YHoP8CiXv< z5ponH@J?9Fz}8RwkiIyQV|K0I`L@H^Kl6D<8MNbWO`Z>=NY5t%0nUVL1H5W1KORp+ zf0MWo=`oJ;7i>Ip#vyr$-?_~3ROwkWVxYU>EW9ir@P&KeBhjy@?))A1@>!v8^bU1- zDV*OeEZddAuN87EQ;DGB3x)Lm@idC5>X^J&ba5x_KIvkEY&bcFW2gkY1J_()3GE?L zBZuML@iZ2dqH*^Vfp(TuDqaZZC;FG&9-D#ESRP?Yz~spYjN{dF1S7+`uoKV z;p$SJ9k*GsUKP!dDMTy-W`jHbn#%|rtOR}!FM^8|XZ()40QQP{7M$0;trgp{oq?m* z`bE~~AwF5KphgKOgX4Qx(xiAboJS75W7&gT9A!RD&5wf3t1PKf9G*ravv5d7cnLhd zr)MzvKghs}tF6dW*7d0C?>V&hR*Loc(MA4;x#_x}HqfqWXz3e}1WcVR_QPj*aLiT; z)8=5nX$**s8t@*xmR9WLJdY?A$A)FT3UR-uH0ew0%~A%|!&O9Vt#WYdJU$^@7j_$& zGyVUJl>JHR*Jlh$8<0L|U|PnYj2qIkGBPqVoIk%C(`9A#vcgcDQ+HpeOw+bF=|!QX GbN(N5ls2*e delta 8319 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 E0Lbn&YybcN diff --git a/artifacts/test_program_methods/auth_transfer_proxy.bin b/artifacts/test_program_methods/auth_transfer_proxy.bin index 490223a58525e4a89e01066e0f73ec45030c26e0..c21da0d8790bd1c440f0a0e92b8f728fcc5b2892 100644 GIT binary patch delta 647 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 delta 941 zcmeA{b` z42`fWP@mqjjfD%F?iJfuW@8cG9=e_7JR=qfkagc#TDPdjBRCh3S`fu}I=FM%n_8R}n@O?`BEDV#N06yIJ-#3Szio zdVws9?es5uvD+)Zk0ln1Vbd2zu>?!uan3>+k zSR}AH0~ES4hWL^|?E#hyY&sL$Sj4CE9b`$sCfRV1Wd=5Jh;@c|{0&iIf=9)MLoD-f wm~DVVTwNNUf#4LzeFS^51WWoJ!JY%ak`wSq${6GEYy0~nEZg57VVx@r0PINi&j0`b diff --git a/artifacts/test_program_methods/faucet_chain_caller.bin b/artifacts/test_program_methods/faucet_chain_caller.bin index 6311ad4bbe99bec8dcd6c4bc5966fb69e29957b1..825161110357ae1fa7843b3d75d31da7a705d87c 100644 GIT binary patch delta 10515 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 delta 10566 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 A0RR91 diff --git a/artifacts/test_program_methods/malicious_caller_program_id.bin b/artifacts/test_program_methods/malicious_caller_program_id.bin index 4c4029146babb43201b51718a249c78aced47d50..08bf3c369d735df8c9683789e451c685cb23dcc2 100644 GIT binary patch delta 52 zcmaE}Q~b?N@rD-07N!>FEi6-Z2^*Uko0}UN8(JD#7@CFEi6-Z30oML7+4yanHd^cni(3J7?_%wPnX=qV%`2|7t8iX IyI8rD0PHvs)c^nh diff --git a/artifacts/test_program_methods/malicious_self_program_id.bin b/artifacts/test_program_methods/malicious_self_program_id.bin index 2ca1fe2d898191f178cc477916987505235dab5c..5521c1d1703c9b59392857d6fce7e81c13482808 100644 GIT binary patch delta 8255 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 E4|ab$X8-^I delta 8255 zcmY+JeRvktvA}0{6B0E*f>^?r?7pNLBtU?m5s84tYpg*6Mhy}mP|&o3pkhT0Y`{EM zXk!8SctH@-3KhAbq<}6`C=}5~8#Jw8V-125At;DSP(;xC+kMYwmpsq=$M1a1nVBz(Rf?^Ir)ZPQQw+g^QCWd1d#B#MZxYcjY=q#Ew1_#wCyHWhD$(?&!j8P;@N zvOg2)7~+~^B8};$Y**tiz~!O-oZ}+f@*^@XHot?+p&^R_cPN3oo!Rf}{j^cvHj7mB zH)Wq5Q*7(!A{Q8!pvJX)AyUxClv*v;-{(t_)PAPqDc*2e#JDRW@oM~Uor?$beujPO zgh&JJy;XZZ9gKTgdb_zebzc)%Hv%>az;#1S>82LwbWWr>#1(Md zFjGp^fc6_(e=fp@gx1T zwG2P+%QdA$O*?~m2W|}l?}6y1Mt!6_^Fy z@XUOSQrcF-iT4CibsAm=`{M_6)MQ)0wmeS5xsbr^@X}y_`~YX%Wy+8?vE3eUl_nbq zQxgSUh2F-!rGKkckZ0rG~Z{Y3^#;0`3gLFZ?L^p@ap@5?f(J3aBtv=oFqI^WJ-gQ zHyy4V)9QI!{y@Xj`%NiO1O5Z=3~}4GEI77xg4_n54DoEZuGo}pwKac*U%h2 zLXh#swbLXEHof(1P2QrRFf<^uy(YzQrc!7*yakKyfZeU=mV9adJUG0-F*q!*fY=Lr z*oIpbh<@L!->Q8P%{igJH*tNUCKdNZgc$HvIu8F9#xjq4U4}11x#uA`lcVJ(b62xX z@Sc+3M4yElVc(J*XWHj_`*^#6eNCEZ%1q|Dd%S{Q@h?p;dR;!sZ)%A98k&^B{^@%f zo*&{`cq!}#qdUI?$#36eQ>qo0!S(d#$Jmy)Xz0d(4QfDUye8X=f?W0(Tp!}s;2Bd) znW4tVx6$MXoTkSX+zSsI69ip+f+kh4@0dI|uGEw!JgMsgHCahRX=p$r+{}XavViN! z9(cZh{#3=2oK0Wp{d9Y1Crz4Wv9L}2z{gYry{ zCgreyx&}GVbu-p#_GRSk)XhQOxf@Q0J1PSz;F%8u!TKgVe`|2pm^W%t^cPcRDSwWI z%Nc(i^WETH4SxmudK`k~!B(CmJqBwsIW(XIuHO=DNHts>Opq_(?u^e>3-rVAjUk=^ zCo|r^Dz-%1_AsVvA3L*q7z?#g>G+{)hbfDcLl?rSuVKH^e=nTw1ol6CGj}#TSskK} z;kuAIbfz*O|K5z3Yn)xZ zjm>fP$l=U8gnyO)SHl+$2PO6ixammnO>zA#f4f^*H`HGM zR|fsItfJu@iu%{eA$TVPs+Gf@&&6;A_zpe@H^Y7ar{2avJBk4+V15CYH3eJ-FZwLt zKf~*enX=B4Z)=kCKkVr7Ae+^}WpIfSIQDifS{CfAJh=v50Q)ER6F98!6M2_%yE`uB z^h3${D{!yR(M5d-njd?UQPx@=u2=doT--U zTEs~WMbsL&kooQCcTd76@XW7GDUXdGAm_)BszUc$&iyFBgbX#I91cy8H=MSE$rKYm zb^UOLf*~eI{#Hm%|AvA?`KdF0Xknp!s=v)xIAqA}aQckEA@ku4^!pj^ zzEh|s9`ncR17tc4J8AGwWaa~xmf(-VCG>YkfEyTFoj&&(c4Ero4-pSNElG-tDU#{z z8gDF&*A6=)CL4#lrnE3`MXn{a%HQcuPPx%f*PeBz%`@JM8-92inPail8V7?PCh(V7 zt#Pm&Zdqh`HE&*dx(2JOHYF6Z39{xO&hFNOQ4 z1^2-FLj5Jqu4-d?yj?h(w6{2zmotxal^PLK8T>o=on;a4F~B`O`{6FjF@%1X+do4^ z6y^I#@hEub^ARah>n?#iE{RCJ;)8G#d@MFzmrl;6Eyiwrc;O>>uxCUFXD`8g3Ad~W z6npAX;&x?3x+p=$W18Fq`z1z^v*}f1sHQbIr(QGcHd=}^ZI`jx(AqlP|4wbLop$!` zHBQHCPeymuQtD1}#=ULu+R}WK=g@Uju!!v-EZM~C^F5=x;E*G^Sw0~u`Zb9)CoJC&j8boYw zPa4{{Hh4VqDxQrH=+-8#fHQCb-+_sWZ~PgDePyucJK$_$q)_!|rgDfgBHrVwJAXNR zjx9)6{e_*$)%BKCXm)IYRWuBH*YcxMHg+Lg!V((KfU(=o9k}YuOyF4B)-e}5BTOF&dG*mOekK)lLWkYf-jkpuq zSelr7DFaj#4~4T=@y4hGZh@O#2s~htpAyUXkW*Xs7M%SaL8xM^Q%~}Gy(zZ)4&*K{ zl7xu{d-rn|Kbn@M>UjWp4s+zR74#2lAJ|-ZO*Z z_3(k?5gTX5&T%shr4&N$Uoz+V6x@Kz{r)F2NcaR5^_8dat8g)i$&ZnaygkG~m2d;8*;E#M4bMMf zd2f!cz|q$e)$3#5YA#=Z*O8jj)cg%MP%1J%RdM+czUAKM+Y6Vv<9iIn3u9N~au!IT zPMA)^HZq;>($Wzev))1GTLWi(&-0E_=oLPh(%3S8iyGnl5VyOVV;f?-P?OviQ_7V> z=kDSB`I*SosOa8H6VZ8i)_K!Y(Ct5P9}0v7K3K#tJRN&Qb^FuCpg?-;4t4o)IInX= z_9=zS#&aw)@Sx%k$CLl_NfcAnFu>mj>TrP7NfkTwQeeisEvf`v)aW}wzP#40v-CI+!Eo*3K3I&<` zn(sgctWW~(g5$2Xynl>&3cixyq8Vb}<+4giAN#vbHh4?J@qrwIlXP z=qkJlPW)@Yr{S3)9`%$a<)5&iQt)*+x5@HSy?6gVQAQ?umQpi5mIrphCr_Y&TJZAO zDDWK$B*YY023L`a{XM^K4ndd@kwwbI##}xHNxj+1Lw|(J@L07n@P!JV5c)>kMCL?4 zFpeF)@`lW;>;Z!Y4!r)x%9e$|}+ E2Ol0f9{>OV diff --git a/artifacts/test_program_methods/noop.bin b/artifacts/test_program_methods/noop.bin index e40249585acf9a4e9e2f89209ea5c85a296d5c0e..91cc98f63657df0729ef5a0a87c5dc65510c3f0e 100644 GIT binary patch delta 52 zcmZqJCEfr;EsQNpEzDb3R_qcsHnKFZG%zzaH8QcZw6ribH#D8DyNkuT{o5{ Haw!1-$ng Haw!1-$~+Nn diff --git a/artifacts/test_program_methods/pda_claimer.bin b/artifacts/test_program_methods/pda_claimer.bin index 7bf306ea6aa07b78595ad524b6bc98867a512c1c..26e4ffd019f7cfbbe37b179c78b5da18f2d954ff 100644 GIT binary patch delta 9609 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 AHUIzs diff --git a/artifacts/test_program_methods/pda_fund_spend_proxy.bin b/artifacts/test_program_methods/pda_fund_spend_proxy.bin index e167ecc6b1a063060ff8075c8e9ebe5c712bcc96..43cf7c5b794c820529ce5650027f819b32192c7b 100644 GIT binary patch delta 502 zcmeCVBGGe2qM?Pcg{g&k3(K6p!sdp?mc|AK76z6ECWaQqMuwJ_(*-86dQJcNmqi?_ z>_jG34N1M6oU&X!Y?@R4u{2}VSE$5lzTNOY%YH_z(i7uYm8PpQvf{8bj#YU2IXhN` z=}nBR_E-&Yv}cu={)Ult5>{EDtMze7s7o6g;`Y#fAy)C}I?SxWIJHX|9#Da?6{2Am|l-ZR(<*b7FG^ydfRWaux`K2!e*!n08#UKPyhe` delta 504 zcmeCVBGGe2qM?Pcg{g&k3(K6pLY5|mmS$#VhUO*~mZqi#mWHO&H>R)(PY+08wV3|% zFN?S^rV4}U6PZ{wB=vG~%5wFvNvHf{X~wFrP>I!iyWxM9{fsy)R++BG$SQ_IQe^r$ zJ6471O^mGeSWS1dXO)=#hLLp=R#~8%^>In4OB);F_RfAGR`KaN%&fsUwM!Y})(x~* rUE0tTuL6zfwk)jdxQy4BUXMpsefj|wRt{`>+i$b5ZokdKW~d4P4N!aV diff --git a/artifacts/test_program_methods/private_pda_delegator.bin b/artifacts/test_program_methods/private_pda_delegator.bin index 1c4dd67289890b4f4228a236988b515aeca092d8..677ac659b41c6c88d03601134b7536f2e2c85aae 100644 GIT binary patch delta 785 zcmZ27QDVtNiG~)&7N!>FEiCRgge{DWOij#8%#DmJEDS7+%?%CBrbpdinTJ(^@iB{r zw3%K`PFb#=AvT?01(vuKY@c|OWjPxzv(=@IaciC4`+(&%R-F&SS%s(P^RX&SpZAbu zJys<^cd5&mSl}@oVaT;dEE2d3F~B9EF+Jxo3kOzNxXIghJ!W~$h*iywr!3Wi7y&w6 z^fyZkR`q$&EC~|0d^7#eZ!YaJ|{Bss(>`nm%)pVbiI6MQE?ZYFh zA#H%mUBHwDP9ON90TNNB_>BNYC4oe!KK;%s7EY{TVECFvrd{MU%XX31tP^Ab_FEiCRggiVYL4U7$pEDa5eOiT?;OfAe!r$^mjnTJ(^@iB{r zw3%K`PFb#=AvT?01(vuKY@c|OWjPxzv(=@IaciC4`+(&%R-F&SS%s(P^RX&SpZAbu zJys<^cd5&mSl}@oVaT;dEE2d3F~B9EF+Jxo3kOzNxXIghJ!W~$h*iywr!3W2CB%QT zL}8W4i)KlX!sDNRzgbeTYMl6wMSMCh3#;(<^UqnFu{#G8T+@AC;_whywhxc2hO_}5 tmx0p=zNmmimMMNCfYC`HA*xTm^NNKNYZw^5W|3(ZdCjt2FEiC`PiC9<~n^;;{m>QWF85xh;C6e@VE1xB4dR%^j= kYL3@fJV^p%>vTO{R(5P=gCz@aNVa$JvTpCFEiC`PiI^K2T9})f7@ApFnwcAz8e5tgGfWp0XHl2b%gHIr z)x#pcJ@`8dJEJfbndyG)tU1#s@Uil3fBu8TfeEV`tKTehu}V1buxdz|;h;C6e@VE1xB4dR%^j= kYL3@fJV^p%>vTO{R(5P=gCz@aNVa$JvTpCFEi4PqNEjHH7@3$^m{}N`8JQZI8ylE1#7Fs=8&7Yz!Xi0c z;S3As^xJ1x%7rl1O;-5-ynG`@HM87*UCg2(+36{ZAKOpm(D!iCLqhR0ZB+9%y* L**@tmYo9Ct!tl*t delta 779 zcmZ4RO?<&O@rD-07N!>FEi4PqNSGK{S{Rs`SQr_Z8Csf}8Ce)G#7Fs=8&7Yz!Xi0c z;S3As^xJ1x%7rl1O;-5-ynG`@HM87*UCg2(+36{ZAKOpm(D!iCLqhR0ZB+9%y* L**@tmYo9CtAEwSh diff --git a/artifacts/test_program_methods/validity_window.bin b/artifacts/test_program_methods/validity_window.bin index 37afac434734251b76710171fd3daf3a94057a85..fd810c11e072d1452ed1ea93c6fc3541c1506945 100644 GIT binary patch delta 9702 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 PYx<^H){uK+7ES*T=2Buq delta 9782 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 Urw>J}qU{p}Shr6UU|Vho0Ec*iN&o-= delta 545 zcmdndBDteQvY~~sg{g(Pg=GutIu>C=3o~;QGZSMAQ&V#bGXo0)L*wZOSy=V4N-(ps zwqTV=jAJ$5evy^6ml3OUAv^0FtP%G3xRYTfLFDIug zSI-cOW!nXLSY?@TX*Iwq0SsLA>8trzIkCzH{A1Cc{y>@4bvm~ytK9TZe%21G>cB2D g!R@l?AO(t+xD`Od=|d5#X!}F~*6kAo*p?dt09jjveE Result<()> { .key_chain() .sealing_secret_key() .context("Sealing key not found")?; - let sealing_pk = - key_protocol::key_management::group_key_holder::SealingPublicKey::from_bytes( - nssa_core::encryption::ViewingPublicKey::from_seed(&sealing_sk.d, &sealing_sk.r).0, - ); + let sealing_pk = key_protocol::key_management::group_key_holder::SealingPublicKey::from_bytes( + nssa_core::encryption::ViewingPublicKey::from_seed(&sealing_sk.d, &sealing_sk.r).0, + ); let holder = ctx .wallet() diff --git a/nssa/core/Cargo.toml b/nssa/core/Cargo.toml index 3a26e99d..a1508686 100644 --- a/nssa/core/Cargo.toml +++ b/nssa/core/Cargo.toml @@ -16,7 +16,6 @@ thiserror.workspace = true bytemuck.workspace = true bytesize.workspace = true base58.workspace = true -k256 = { workspace = true, optional = true } ml-kem = { workspace = true, optional = true, features = ["getrandom"] } chacha20 = { version = "0.10" } @@ -25,4 +24,4 @@ serde_json.workspace = true [features] default = [] -host = ["dep:k256", "dep:ml-kem"] +host = ["dep:ml-kem"] diff --git a/nssa/core/src/encryption/mod.rs b/nssa/core/src/encryption/mod.rs index bfef74a0..9e22f0ae 100644 --- a/nssa/core/src/encryption/mod.rs +++ b/nssa/core/src/encryption/mod.rs @@ -156,7 +156,7 @@ mod tests { } /// Verifies the full account-note pipeline: ML-KEM-768 encapsulation/decapsulation - /// feeds the correct shared secret into the SHA-256 KDF and ChaCha20 round-trip. + /// feeds the correct shared secret into the SHA-256 KDF and `ChaCha20` round-trip. #[cfg(feature = "host")] #[test] fn kem_to_chacha20_round_trip() { diff --git a/nssa/core/src/encryption/shared_key_derivation.rs b/nssa/core/src/encryption/shared_key_derivation.rs index 72b5d950..c75c7f6f 100644 --- a/nssa/core/src/encryption/shared_key_derivation.rs +++ b/nssa/core/src/encryption/shared_key_derivation.rs @@ -10,7 +10,18 @@ use crate::SharedSecretKey; pub struct EphemeralPublicKey(pub Vec); /// ML-KEM-768 encapsulation key bytes (1184 bytes, opaque to this crate). -#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, BorshSerialize, BorshDeserialize)] +#[derive( + Serialize, + Deserialize, + Clone, + Debug, + PartialEq, + Eq, + PartialOrd, + Ord, + BorshSerialize, + BorshDeserialize, +)] pub struct ViewingPublicKey(pub Vec); impl ViewingPublicKey { @@ -73,8 +84,8 @@ impl SharedSecretKey { input.extend_from_slice(message_hash); input.extend_from_slice(&output_index.to_le_bytes()); let hash = Impl::hash_bytes(&input); - let m: ml_kem::B32 = ml_kem::array::Array::try_from(hash.as_bytes()) - .expect("SHA-256 output is 32 bytes"); + let m: ml_kem::B32 = + ml_kem::array::Array::try_from(hash.as_bytes()).expect("SHA-256 output is 32 bytes"); let ek_bytes: ml_kem::kem::Key = vpk .0 diff --git a/testnet_initial_state/src/lib.rs b/testnet_initial_state/src/lib.rs index e7000d5a..385ea5ea 100644 --- a/testnet_initial_state/src/lib.rs +++ b/testnet_initial_state/src/lib.rs @@ -2,11 +2,10 @@ use common::PINATA_BASE58; use key_protocol::key_management::{ KeyChain, key_tree::chain_index::ChainIndex, - secret_holders::{PrivateKeyHolder, SecretSpendingKey}, + secret_holders::{PrivateKeyHolder, SecretSpendingKey, ViewingSecretKey}, }; use nssa::{Account, AccountId, Data, PrivateKey, PublicKey, V03State}; use nssa_core::{NullifierPublicKey, encryption::ViewingPublicKey}; -use key_protocol::key_management::secret_holders::ViewingSecretKey; use serde::{Deserialize, Serialize}; const PRIVATE_KEY_PUB_ACC_A: [u8; 32] = [ @@ -49,8 +48,6 @@ const VSK_PRIV_ACC_B: [u8; 32] = [ 154, 161, 34, 208, 74, 27, 1, 119, 13, 88, 128, ]; - - const NPK_PRIV_ACC_A: [u8; 32] = [ 167, 108, 50, 153, 74, 47, 151, 188, 140, 79, 195, 31, 181, 9, 40, 167, 201, 32, 175, 129, 45, 245, 223, 193, 210, 170, 247, 128, 167, 140, 155, 129, @@ -129,7 +126,10 @@ pub fn initial_priv_accounts_private_keys() -> Vec Vec Result<()> { // ML-KEM-768 encapsulation (replaces the old ECDH scalar multiplication). let recipient_kc = KeyChain::new_os_random(); let vpk = recipient_kc.viewing_public_key; - results.push(time("SharedSecretKey::encapsulate (sender KEM)", ITERS, || { - let (_ssk, _epk) = SharedSecretKey::encapsulate(&vpk); - })); + results.push(time( + "SharedSecretKey::encapsulate (sender KEM)", + ITERS, + || { + let (_ssk, _epk) = SharedSecretKey::encapsulate(&vpk); + }, + )); // EncryptionScheme::encrypt / decrypt over a small Account note. let account = Account::default(); diff --git a/wallet/src/cli/group.rs b/wallet/src/cli/group.rs index 6ea53e7f..b4ce9031 100644 --- a/wallet/src/cli/group.rs +++ b/wallet/src/cli/group.rs @@ -1,6 +1,9 @@ use anyhow::{Context as _, Result}; use clap::Subcommand; -use key_protocol::key_management::{group_key_holder::{GroupKeyHolder, SealingPublicKey}, secret_holders::ViewingSecretKey}; +use key_protocol::key_management::{ + group_key_holder::{GroupKeyHolder, SealingPublicKey}, + secret_holders::ViewingSecretKey, +}; use crate::{ WalletCore, diff --git a/wallet/src/lib.rs b/wallet/src/lib.rs index dcf2b6eb..bc618834 100644 --- a/wallet/src/lib.rs +++ b/wallet/src/lib.rs @@ -266,7 +266,10 @@ impl WalletCore { } /// Set the wallet's dedicated sealing secret key. - pub const fn set_sealing_secret_key(&mut self, key: key_protocol::key_management::secret_holders::ViewingSecretKey) { + pub const fn set_sealing_secret_key( + &mut self, + key: key_protocol::key_management::secret_holders::ViewingSecretKey, + ) { self.storage.key_chain_mut().set_sealing_secret_key(key); } @@ -766,7 +769,8 @@ impl WalletCore { continue; } - let shared_secret = SharedSecretKey::decapsulate(&encrypted_data.epk, &vsk.d, &vsk.r); + let shared_secret = + SharedSecretKey::decapsulate(&encrypted_data.epk, &vsk.d, &vsk.r); let commitment = &tx.message.new_commitments[ciph_id]; if let Some((_kind, new_acc)) = nssa_core::EncryptionScheme::decrypt(