From 131c4940c6fe580cfabfdb4692b3c4cf3a2aaa04 Mon Sep 17 00:00:00 2001 From: Syrone Wong Date: Thu, 17 Dec 2015 18:25:13 +0800 Subject: [PATCH] add chacha20-ietf support with updated libsscrypto ChaCha20 with an extended (96 bit) nonce and a 32-bit counter has been implemented as crypto_stream_chacha20_ietf() from LibSodium 1.0.4 Please refer to https://tools.ietf.org/html/rfc7539 for details. Signed-off-by: Syrone Wong --- shadowsocks-csharp/Data/libsscrypto.dll.gz | Bin 48781 -> 59550 bytes shadowsocks-csharp/Encryption/Sodium.cs | 3 +++ .../Encryption/SodiumEncryptor.cs | 5 +++++ .../View/ConfigForm.Designer.cs | 1 + 4 files changed, 9 insertions(+) diff --git a/shadowsocks-csharp/Data/libsscrypto.dll.gz b/shadowsocks-csharp/Data/libsscrypto.dll.gz index 544c80bfeaa76315f82892588d3fbace38a902d9..6c814b36c1602abf466094461d6ddf7359e64526 100755 GIT binary patch literal 59550 zcmV)zK#{*6iwFoyRdH4X0BmVub8};Id2n=ZE@W(M0PJ0Vd|Oo&Px{&|Te2l=1*#ON zB1I(vZAaT_yZA9=U4!hDzy~)yo*%rv}&hSt5&UAwZno1^OBl` zcC_hMw{BLbS}{P?49ePVb@hABeJ^RdA^!UK@elW5yFcE&=brOD=iYnnui$%UgGI4e zEZO)wGh?xIS>&H$%S->USuK{O7eBnz(z)pIS9Dp+AAiMlx4i%Mf*m_Q{JxzxeX!u& zH+|?sAKq2)uJ;z~41B2I{U0hQ+qAjhgCBm+doNqEWUfi+u#50Tc|x#mI|-MQf^&f+35es7Bg?ulJyF^b*aTtXiWnX`vU%P5kSa8 zjN@4r%L4wI4pApdf=Zvcu#5l8gfd8d%W63fMQv?X%Q~aUCt^6@xayAYTJnjDoIg8W({HgXyyw~FVpF#BXV!{qZ_TPq zE&@%I*)F2nsv;mh6UY@_+f2YU6L8Gz$e-Dfm+aX?MRMyxpRhT97Ft3yxabxUu+7|& zKXXT3a*T@HoQJ>pmUp~EQW9Q=dSJ_=#e1!;y3j6{NQhMMZPrg`U3G6LaAM`4@Y#Y_ zS!-{~w$$F_uxP8b5}R2M;;A!_R+Ly>;xMY7C#z=NEV63DSvRkZ1zuP=ICzo>Wc$gy zw2x+MA9ZY>Lt_Oh-U_6I-?dp(6yKqS%p#HZLIsscUcQ;1iL)*6B zP!;xAB=2^wYu9Uq-zMH>6IVIhK8M@uvd1CBRW9+iT(=iluC-UW0y%5nmb)wa^`WXr zhn0D*9e1_-{;QDL?-0F&ZOzk#NY*?C3GE_F^G=AXvNi9NxXM-=c4)qo@a1dXX>oP- zwS?kKAWyR*0sf#p=g$CZt_6U^N*s*QwaClTO7eoLpL&|1yqg+Hzxmt5AF3kz z*#z=oQxDzqX{!rF6>l!2ser)A(JZzVl*;_sB8~x`>%;=!eT}##yY8`Fi$t;K+L=Uc zPqw(mhV&(3fhcw;pn6K@u08!T2AG0s;axTCr_(t7dvcXlMUQf+>3e?6u+BtA)2Kc-M?_TC46@`=qFDxijZVZ|CjrU+Zl}%-?bQcH!$1 z(UrYg0989`N1d>9W-7u3)jt=_=1k-R%5J+<6WnNG-%a z#YPSiYki$N51<*a2+q*>+Wy;LxiYNut~{!FJ5~nTM8f%?6$&XVJ7>oEV988j*~?~X z|7;CB-9?iUP}(+2VPc^PCgVX+2D*?%x^}6d?KcSDwEB4Rf^vL&RtEI*o=*{(i* zL-G$sChN0ou0BbVyWUS)-1Tm;iA-ke7D4p$lw+hQZsN?ww;1^-GPA>m471>7saaxc zl^WV+^7XE>@#W*pj7c+pj?FM@aCJOj-^N96;CfdVI4eVyH#-k`Ct}`dQYu=T(yFJx z{)IDlIBv~KdcH{ZY=dBRp}@J~YELD1gzek9?)jlX2IGb}s0Aj1zKP^Tf1Q~T-U*a| z?B~~3Pg{1KgWd~Scz~Ir${50OsciW4%nXH}o(AjN)X)uPf5mtmlfF)IwhU}mxA%Rq zVu$wq$Nv&5cAXx1xG7egd&hOJH~Vhp&(j;Pu~=rOPt8qlx%K*6tx4Y(^oGl<}HS)J!t zoURg=^Bgklk^+PU2n!JwA}mH&{JirMB^A&>aYa=m)1E{4K=~%Pg#RoavEsbcZx2M~ z=pPD@B$Lj|cyuzp&TsGQ_zHZs0-x9JnT^j@!snoPDSWn`6`$YlnS+mH3|97>ikX%{lZ;p88Y*#6LMD1@rpW+5&I zhPQq!GX`t{Rco^9^RxAN8|hQ|^h@dUwzKMUdE;62dBIETvnKmR_3^%^7TpSc)cx>% zKZibcKL4S0(8n8J*z_&vfQhPD<@v_H9Z-725^Y!u4_}Vqh zcn1jFn-mk=KRRcD`)SwT1$X?e*#qp0$Rh)X3|!LMa;x_Kybtn7qszbaHD7)gHze#)=E2C9Zkjt5kIMB59E8?tfe7XJW<0(k{!ET;}+7tayVo z&+-d5>{}nZCxKR_q0YC@Pp_uRZ!nH8`0gKG2~+O-=A!})4+A^pDnT}Yx2tt z853T{nPkOpx<75jXV~xXS?zc8XU}TCm%p_A-UR9XA${8(>wX^kmPVbo_B*}zLf_K1 z3sz1wo`$}qiLW?z`Gwn|Z)xd;gP(fp2hg`P_@aw%d-F=@TiSi`2OcRo1$|5N-|*2_ zd}2BDO}#+s+w2Jctp5I5N4k<1FPhyomM=1q|(V75?7pnuTA? z%Ak}mQrfk*)Ex+187q+;zC?ET64~KPWQQ-29lk_%_!8OSOSr>FP?7smi5$60LBwYo7x zu}l*sxmw*gXXj~k6CBCc>XIBO(CVf*;?e3-h&Ug7+v(ujvz-rKbxQxO%^pW&+Kl{_ zBiinL(hzDI?tPWcDG0OwmzG2FGEK3~}ef9z6kUL0nX~7hI?sE?; z;+S<0r}vEieHJE|1(j0@a#Iv`3=t25;K4FOJWLV2ePfanFsTkoCQv-h%7C2{V5d(D zPBEu$&RK*MvBP}% zi03sHOy;{ef04}Tv+j{(7J?JB-)FEf#%zpJ@jiqG8%btk#AL(9Y)lwzoSuV7GQ&)A zHZxK^lNyVLZyAPU&VY5##B7EJW-|n>s)$KuCYYH~lNkpyGtMfaHoy(r3kuF>Wx`-( zitS~579$hP2osSOvnTZ;cGIU0KtX-P$T%}HW-{U;MocTQve6g{8qY8?K8KMcGeTA9 zONNm#W`y(iOuYyrKqMutWk5NmbR@wBn8+n2o)>$W!ai2@LD84Sq|d&W+u1t{n=#6e zj2%%9DM!Vgq+z6nGBQS*n%!*=f`Lr89VZz2z(F23s0|g6WlUPxNT}UeZHW`gA^RzJ zpZgJR^MrD;cBGWqk zz5qGFVb0*Op^oLmM>DP@L`?ZYf`A^>LyMI?DZ_B3ewU!Vm>$nUP&YzfQcABoW}kHL zW2sMT`?z;bDJR6nA~C2v!qq>XJztOkDM(BT5@SJ>L1nW?)Uh-d7?yVwC@@K_na3&A zHUvYAq%q~-K}82ZNRt#`RgzK~c%X}tFb5U3G&OG6UDS|d$dsgxx#tGm`$j09GN>HW z_OX$6=ENyDq=yYPBv=i^2*VmDIdvzfavHKybX4kQcMdZ*ARgh-d^eAE;xOb9F~~)_ zNf42kA=-FGv=~Ab%#@19%SVVO;I=1eXlaD2L)N*fVl7OOfGos8J6Ci+GQ`S)UJR-y zv`3gycg}taA`m8{s%ICIyaz##jn~kcQ4?JSVn9MxTff+sloHxzh>jtgBx(pZ#=>z= zjff{?%)WPOmXPkfDHe5v6)5ddPPhHmJwv8Fnp%uPIOfDYtQ^s}^BcyrmqG1=TA;qf z+0{opf*6F9mDE15cW91aDMNJ=QZUDC!4hW*Ho}6boXTj8NA#E>%DADl)EQlil`za* z>q$3bVjq?yNHngucRvdSRk8IRCW&G!5y=_L2&EiivD7|@vWH3RK9^(&cAm>44L~*| z(RQCp<2ws{hPp;rsv)Vaz2j*aGqUj{5iw*NGbZ4vv}_Uk-U(JJ31`STE=QlV+Jr=M zP}|G(x8-HV4gF~v+ar*WG`UncERCNC&$YwD$~8q0K-shyy>u6a(KR`)1V6LQvOYi`$Z~F)Z?N?9{9j?Yrl zVNwzEeHzl)Phq+;Fg5#B1d5q5M+Z!Kv!|>#(X!R~skfdWv3gkOIF*ZS$G*Q*uC*i= zQx8Y-VAdST7j;t{DX_l7Vf}~;OmotM1^YJI6TR~Na&cn#|JQD&rI0vMDNfRs_x zOMdrx@K|kI8L%0lxha$DH;@UqK*M87u4LplA>~ew4iQ3Q# zB?5X|B)#q1ZZP?ryMH@te|ZaUFpDch6vtkA@Q~mHi@I?>~h?^*DM7bBPla+8(|qXhq^=*Ig*NGFp4O$a$46 z1}c(|0nJ-&LH~ppNIt@=oAq|A!|N497T1?r#d;g6*Oz7?jexS9^`+Seme!Z%i1iNs zx&UcMed$63%j-*R2$t2CE)wfq{B<$XuKH3tg7fQ39SF{=FI^(m=knL3NaxmA7NkK7TzA>HPZA^AWh~OY;z1QeXNq zvA%%6z8vX-`qB$(KY5EKa1j!(t}o3;@T&UK3&na5m!WJ=ed)z8r|oP{Pv0!bM3c4^9`fSLNlFXMzYPwV$GLC3A>qIWJYXeWU1yG zLkXvuUSdWZW@MS>OQ6JZGkuO3acyxvxbu8Y=}!@N=h;)Rb41QX`3sO|Pf50OIgZH7 zAxmHak(Zf7@(`&+u5So+E|$eFqAwp?D-#!Tv3#@qC7N#>CEaHF6=tNsjJ!(ojiSV> z&GakHh{udvs`(JSZKauhjTu>CMlQqoAxgZ?OuyEQtTH37*L)$AP|fseGg4?qF4ufh zC~<|EeuEiVV@BSn`Fiv}+U!*9El6J}0$rSzk{21@u6i@@sUAV(P2#j!cb(WQH6%)1 z;)YyxSo7@{arLOO%_gqSRjP(36ZWfJYFLlh74L+Csp?K!P4p@8jS5;7q_nCg8scrr zoq1|ljp*UUiZ>~qRL}=POO^Gxnzu#hAhF&dKAxvW74Jw*j4CTr!rKC>u|>+qb468? z8d1DsT6Ke{?$RTRK^1lNkWtD{KveZMDBf|gJ+~&ptw$Ft!&;ybWF`-ZDLt}C zt!`D0sMSqMbwW8ou3^lfoTT=>ty(pX^BU}v>hpSRF_wG2;ToN}=of(&Oij974Ya{= z4NNP~p(fg_3Cl)u;Kc-*(0)V{Ok^qmw+oq<}K)Vu{Knbm?Ve%kwz_KgQ zq6IocpivJmkw7W_M)fF7LsetS^P0C!RN;uQT^&}dI+Us*rK*Ld$jCxvk`S$G)sPWd zEMd~T?F?TSz^YNr->7&)lLwS3`yotSF{kQnSE?H{Z?}3_@lT7YZsF}vhn1>vkO3k} zRU1iz>?#!MkiY>jEH@IsPxW`J{tm@Is`#lKK^4`*_Q{0eZ@0%Zf0OXH=#d=d2tZRK zP)-ijpFFI1d+eu_xInWBTE_aD6n`9b6d%c~o=`xvdPws(3xA`;k>_B|3-+2sb+;Z~ zs2l=<>J;+T>Sm=nrBrul_!gN==&_|rb&FkB!&-H#sBYpm74LopS_0J;g@I)p;Z zb2H%sD3t1MJF2um&k{N^%0Pn}Ws@9LVmO{fTYAW@L~0@u+Xk41I;B+Ozitp?QzK#v z>`@#Xv%w|7f)cS-caS;5&{2p?PLT4{s#c|{M|l!e(JC~^2;z8qG9jv(tyKU~^)?!o z=1rk`Y%!4u3ttO2-l4`-A7C3HeEOgvxNlXBWNf;=2+ij(o4!uPo1jXqR$r&^gA<1m z)gzLVb~T~;I~D(aA~6VaVGP4IySD*tO9K9G#XALEDpBF<7J&w(R}U>vVw$fT@J$Z7 zeeJ^A>GpPG`1N)!R(#{ZPkrg5pL!>nQfL{fgjwt+(LXr|Ps!Wt_BCQ^zuzoBG^m@j606>U!q|!LzHviv9V!>T4&VcV5tgXa z-3x`dy&V`#fw?bL6K2YTy0;x$0o1hyMa=E(#CDOdjW}$BMGq@|qN*jwAleJ4#{wc5%^*Ba!iIsmhQNi%7=i52ON znFf&x-e=GZbP6B!Nh;7v614+%n3$=)DM=I~8=E3FrNUIS31Eu|v}anxh^gilQyi&g z)?+hELrC}L5H&;34kZj=42$g`vP`a-pvef`j6P$aLu!QGxCiETmw3j!n;^KMm-e*r zbWp(#6dX1668tJv00+UJam{c|m_Eq4>dgK#K|}Tt7@NUn8ySv04s=jl8Ki;!Ng7lA z=mC?1T2(W^rXE1kg>MXddQrO)=p-#^fd;zS5;iz%0V>t)=%6(*X6yukP6&vIsOoe_ zMZfNCTs%355fSRCi7>O(9n|!Q<1+$tR zlbMLoWU$z-qvxvLrkd#UZ{G1inu`1lN=jftY($^n$vKMAx}_#Y^=Y7oQ!s@giDoAF z1?YwLC`|+rS${$qX8t>Ave5#q=ma!TG}J_8{Sg}77g9H`YNFxN+d|zaIti{8+au%% z=(uD=Qxp1uzr98$vJitTzma_=nT1|zN`PrIOcQ{2x+ctxAl1M_yG&!K;dvv1qD|zb zC5TuXI%bAgBM?FnSO?85F}OiQrJW}Q^LV75P2#Vg9t!Z^2`FDAF@I~2n0h)LLwJ-09NIo8YSpr1e(s{L9=9aG66B| zVFFld<8tJ~^0gQ7rl{B&oWamMPW^fwOqze@0spP(=@A%-yNEPJMh+ZXv z(cbNEW^cvb3%F=vx}OMA$JhBnBiaI7(w_she)fRc%n5ubSW7g~MQC=+G1S*22H0!y z!4T=Q+nb&xLy}?eO7xqcaygBMSrKh+Zxap4(=;U8lqaAXn%Y{@6KxxL0*1`G)VLE9 zd<=@xjERoiz6cL0aVf9_C(sPV8{o7UD0di)wXjPyKr07HnL8`1vH|T!Xlg;%CA1~M zgz&eqUJU*_jNz;iyh_)L;U;1Ln@YAyFEZ-xW3@CuEg5nlZjq#DVVmtBp;;}B#9jkA zHIf<$(!itaB2WvXkB|>JM=R15F*IFGVql4_V>ET82 zz=DqwrO82<3ea*#OhX^3i82e`Zsi1db?&g}1v2bh*$DmWX2LTLRY^CeJ?jy9;4TD?KcR$wq(#MX{##kdzsR>KoAT7*+blSuShjTEIP*WJynUKE| z9K~`lgj53*(i27yxQJ1n)#A`9x~b$|IYzbyg^=a75O>(QPy*dVZcKzR>bawmJpc#} zVH18{Ho_-^{nv!A`RnHI!mBYH$ZlzaaXDz~HU%SBOr>Fm2HFH~+RzF|J~`% zp1_K|Cd#y`8yI%pNwO)Jp{pB}6s?MN=8R{R{ff7d#xrj#P1)EksiFl8?Iu(=Pad=% zMGsb=Acm_ZYGO?F6vooY0{{h(*bk|P(KvQE#1VCvHY_kcR;2(qJDTknd;l>-uZeKo zqi{=9%%FC35;cKc8QK`(9UbbiQLu~sl|kBGX=OJF}We z;vQM>u%%n7I|!|a>TQ#?Y1&C>KI$E`q6*uTL%fgHsKzG`sy^s&0u_u+4sWNf=P2+V zp-C)6kEln1hUB03sNiKo)aViw9?GOrHOh`C4NmMWMV7+9wujXyb&9IS9NBzInF59& zt+Mw)UW~VytO*7@c>r?R4?zQv0pDq7?vz}6(Z_oExTQm_&D>yw88yZsb=JTjt$0o`Hp)vK|y zgmSdGbV#Z0G3`q#u3PR*El{ePK~_quL)sI({8q69{;Cn(Y8Re-OZ zRtY&!SMULeR|wWgrr!e8G$<9Sre%kENa<7H*!qWg!PIT+%fTl6=t3q!D2 zo`l)uNti>Pge}2I7=oqp9Ly=t!Cdkj>>QkfAy_6)!IsNYuv~cxb}mlA5S%B^z|NOv zV0rQk>}5ER!ZDcoxI7PAhTwwj+i(zeLvnq&JfSk*8_mBD-NN^wx6%#JQ#TmbK4ab% z3tu~LiFsQo7W208I|FY!zccW5@H+!*Uo^d8f9dOx`e+cWO(@jfFKweic?p#-ZKFYX7nLtoMFF8Hx5_194K>EI`AUlMWg9O9GC)_&WU=yd5hdmQPhdFd1L(kJJoPt8kD z&rAPxc3SHkX(sLL9%({QT6@an+_1XtsWOP+^{?0Y#&^%|8a@^nEuRiVY8paGorgaxz5&JMV!)hc^o*}R*&1C z)BkdzxX$CSpAa_nu%Hs{M;553)j|E)1?njcpF~Bo`fI8y?!qz(WNl(n|Kr8>Blyjq6|-_pl~B_aeZza#320Zxv!=8NSuaZ@cBUJW;v<-&|s2IWQ;#Y#UIfL6&Kh zWpYu#0UTGv$~>MMG3q^Q6DTK89>Z&|vsFJ|9Mzv%s*j$p;u50%>>_};0auC2JZ0(u zXM22^9rtRM*^f~MeNs=0lzJ2&mg-L}QxDMBrTFHuA5+Ub73yhs8Oj_*+{M}`_msQK zK?-r@2yzORPocC&$y?ta}+AQ}n{m%>a(U;j%_Cd;{Vko{!9CMe0 z<}OdZdzWVoY7|1sa@0vch64L_o&xuEo+5h!UmQyR@-U8>@O60%Wr~3;&DGGRIzt%N zLM9u~H~}2#JJKs`0F!`(Oeq2qC^MFn!z~qOumsyrEiHluGIG?fS5uEVKxKd!(ukvM z8cX{i(4>5Oib@h@bFf@Rh_QrubFeIAEL|p+T(f9-OhX=Hxn>TQ459r5l>w+GmTS^j zl2s-shg&Mb=y4R^Of2=M0k-`Z@_-t?0XJ~ChA6(jWxq)ScfhEh7 z$58mtC6c7kfl~5%~-l-+ojBBEXyU9cAyGw^9V;q&}9eOZbBDG zvb^OidxeQ5*DPEfW9-Bc#!j8lPy(e^p)CRsFxpQrimRB5!ZendKE8_bU!;#0vt1Uk zT^6!k77J;QYryR)!kDqFn2TkZf#n7hOTw(2u`DDBEVUYG#FFt|5z~ zK29SND|7=RSZoK{K(^d{oq_BcX(=X_T+?-yK3*ipm-)RM@}z(vRhm1G=TX+#`Z#}e z5PoErD07tJG$s+UG$K*RSQgF2a+QH)p@Aj$xiySs#Ti(xVJwS)<*M{NUTDnYt2s)a z&3SyyYA!d=E(;mURcwF6b+Jg;cY!icc9VsYHPX1mJFlcjF%4X<1WUsg0XZMSmwFqe4fi#7S6>o-@vlK#IlUWWyW&D z8Cb4jEDM2Uej3XH^?uC5=F=&>~<8q}^rsOV$ee zWO?)1E(=V%<3qN#p;$bXf2M3zw}uw)4_!YeN-EY;#3&Sw!x^R90Yb zV&Acu8CZvFyoDG>X&jZDLy0=W085Vu8Vh^%i^;WK(G ztai31sN(CX!8}CPAi^}?KoR1R2uh)piserCQlW+MU4kY;%| z=5X5hZmZw8;KwTLR{hohK^ulV4z>i_wTo-^XdY*aV{avJnRo+(^D` zWC^ETNXtf+nvLYiO{iDPO{iD#MeG7m=}E3;qRV9J#|6n(a2mhPgjPMWkz6FW5sz%- zTu!@?mW`ZeHc}vOY`;$4*uIQ!Y_AZNtCIU4C896?ae>~Jn+nDHHPi^% z$wp5)4Q-&ESEkc^AAaMjK(z43Xynz1yrsT$1%fx%m%c`SR7jSy5*t9{cFHeiLPNvghy-B9iV!ateH`JHDg{Eu_I(T8e>k4x; zoj;z^@3+v8SFK*pV^pR{=Jy#eSf0bb-!l9CdiuTmcsZ_U8h7{UCO_ZTwjweA^8WNo zUfv&j$;71z5jeOeXbeFH6t&Vm*Fok)0w;bn-SY$k5}Ry!o1u2 z?^M&b_x0b~WIW%zz(4gLxWM1@k{9@sFL8n2PFLm;SxuMp!K8gyvRTM+L@uX?7ooG? z+?Vea)|%-n%}9|Md9&u5plkhR`b}nJ9Y+L?r*W2gmqYAu3HTrQbv2yK;mR8>Fm3r+ zjBZQddY^t*>#c`z+7wlBP_O$O( z8lFcs$GYe0zvA?AKJDSAd)|*jw)wPwG+8EaL^Y4+oFCr+zrvfGPy5lsTQwYf&7-YE zf?vAioQ4l5!$h0zEu%^KAZgJ+_EenFrR$Q zQ(qqjlk>>u#7`akqtsl6cJQnBFZtC3T6pU5-@XDE&u`(-!Yd-dpXEIL`|kpcdF_yK z45JC04Ifn_?pW~Qsc-&e8V&s^_nls;#t1dkM|T&y+_;R@rABJPpDw>NNQkH8N#rqb z7m+V4rs!qJX%RyX4!FS7k*p8Dk8h|^8&9fzz#7Wq3v?je3uURjHTqRoo}9sT1-kQ^ z4Pgndn&Th29~=-xJ5dBR%D&{Ly>yq8=((64cZsrR9&OEW6#e0^5K$6dM1(be7j8H} zE&cSeM$cAygJ1maz!Mu)-MF2P+j*UI7&<7zL}o|#FCJBKnLFpkjXysQu4OAnsTJyA z(NBD31zRf`=wGBfulB1^x=DWmO4noAHTua{fBhNdG{g(j5v(28nW!NZ0_W5f{$&Vg zONvK=U&y(zK3nYz{_M)c&=H~z6H7A=L3`-}&oR0k69wHreCgLukqrPgCJcE_pb{JH z)ZO2>Sg9T%qjizafzf-nwD<6H7dpcxiihpcHywIU1FB12LwzEKFVO|cbM`2-{l%F} zOG(@~zoXF6DeTl~zvFKFJ^?x%Dk(BFX1O-f_cw!Qgz_ zpWE+v0D{k_T|My^>iP3&4_4hfy{Q8iTBx+C+!gs|I{ZoPr?|8EQms$=Rr0CBMW}^4bQ#t5hW3P;O7Sp zUy2tn@{z`3{B}avdZ&%_5uZGy;7ZeH58n4I-Zd+|)=hL6@thLqQSg2n*Kn=t9oEWR zW1%C@$FWj#(IV}ua3JvGn>Kkiu826!#+9gXHty0C<8-_d$K!=K9$zJ@9l_GPxAO`4 zu6@P{Io3MK`zPsy+_f^`GET^!RZy0W$zN$4le^5{gW==y%E`=exoggGc^)5^pD&4T zzd`=yIl?t`R-Wv_AvvlRKvN$)P3PqWNZHQtM`_D~e@sbR zHSc}t_2iFA|HQW0`QXdpk(fSD7QN}r=9GNXshD4Ku-#bIMvklbm~){SSwxrDsLW#1 z$+4$BQe2@yGmf;!YDS!Ck5u|{uC&K$MwX{NQt9R9rae|Oa(>z)Wl!#Hd1;T;j7Xog zQo6YLvmcaRWEQzN?TAXBF71Y1Vn*C)M-+oON_f(asu_88+7ZPpi4rT)j;a}1nRZ0w z+F(`MQ8goJS9P^~Sz4HORLzKLM&5wmK1GSNH+s1lxgzb4O82)Y?XOCwvuXnIwP}}B zu0YnMT~;$9omTki0&iGKa@A6oyVRlL+RsOA;@UhhK-Z-89OGR{ucFiS^9cd-7#Dr` zASxWR?RZo@I>6NnXgyfj16zqg*V3(LYWM4q#)bdPI$4LBj2-VNCZ1TXAZ=k6!+b zQh^bcg8YHbny@TD?f0U9e?*Od0`mX{d|fqBSpb}1CXa}~s2Tq6j?cSME116BIkz>Vfj4eD5c;#!GhXq@;1Go(Dy+_dWLQoTK@cX%)) zaQS^qGE6oUBgYN5UsL3GneW}ERJL{IKB^t6dJwgA@QJcP{YCiFGMHRs)XoOtKw=EUK}M=?+{lR zrScJ_kAOd>Rrd&AO1^cV-$t$)R*pf8eo`Wy*%DtT$u(?~MIbHQGjAugo{$d}RPV@O zNb_Pj18x|gVeU0xQ+BE;;3N9D^>!*bgpyKoLu%N-yhpxxk&VdLy>yu~1?i|tf~w%% zk)hCpd~!i1K~N~Ytbt+GJBCZ!RDM5o7;;*T9>cbQTiIA^fHHA1imSy`k~>Ws%1N`2 zvylKS`}ENq*Xl@}W8WPl12ZP8{+Y z{3m7k4ugM#8$*g|lA?#@9T$NPDnBhEYB)oG+K^(3m=CeMV<_h9pkEd@OkRyb5<{-o z9R8EUe*zE@{VJl55KC0hH}p21;h*{GWno7$_>W0`I*jsT8UC58eipVJO&I)-8d@;; zAC-I=QuL4%DW*RTo~itZkmws@(THJ1A?mrq+;hk90$@;=azP20uSA@BBy`-Z0^B(g zBuRoHZe$cU+6k&Q4azXbI`qxi*e9eotbq}{Q`LO1YZRqU5LUoIlr9K&WRyVg96}4G z8Fk~~qk0&P7(JJI;vjVl*dOjo(-r{Qq{jug#E-!TIRkcF#>cA}T%o56>W?V&o^o>&GI6t3g z6C{A0nsoQ!Za-Q{s?-n)k6_U-sPkhh1*+%~3B27P9SjhIz7D#h-{J13#(IpV`d~{u zox$^@_CnwoBO$dHVrJ?6$$*G}fbqT~WYp~Er!NGiZ;EOrnOPo{lcL}5>vYrebrLhm z&o1bl&Olng>Q1A<9!6)Js!anHa7$GNW^-E;mCrh+&*XW^;CaXZcnShDM)p4981ugY z5Q>dr8H$!@tqOPsb&&w`aH@#ec9dp*iP`qdOP4NsHbi0$m;mhu%tm8l%qG1k?nHHF zm!CZ-eWsXT)Zj4=Pz^nff=6P$kCj4?mI-2hQzDyO*3E~-4j+=5jI8O~Nadakc}4+2MK2P8qlk8HP8+{H6%qaYA*Ri~t1ar8}IjKFrL) zFH?QcrAN?lZnV=tD1mdrICGoA6i>WjI;XzbPxXEx>tQ>{=$(h=_D-tlMziD|*x9*3 zww!O`!H20bMhu#4M^U(cFyzMn4B{{*EDeLg6Kr(Sp#ce+J$fXg7@d?OG%TS8Foy?o zkftlRJH)6lLDlH8Xb8QNMmOw44brI8i;*wTuF=n7gm|!|k&-w=Njx6-@geb<-b=xq-^#O0^RLjnr}JYIIm=_+a#?nhzl!*m3{M1>7^0pme> z(n3qpU0_c!hf39i>0k6QFh#yXQchO}@%A~s0)C?;3<;>%w49}kxv-16pua86c1=_g z?Wl=yBua9`vE#-Z#o2EdHRh_!T+45ONr*T`LQGZcwTu{!&WQ99y0|2BP6NGnMDkCj z-$i_d01T7w;Hgti{o@AtG07JTA^hV?x(jv6KJM)TD{xI2p@@Ngo06ib>KNlPOqv>z zQb|WGBHbNt7dDn?2=6jRohh?#jA5MN?g7Gb4y@6sx*Cg{y4#EpyL~d+}-pPFsb@`$Zb8O`bR`ca3wXy(j~bx z50PzyVbmgZbZXU@kEhk@&}#p*dP=Px6A1mov?rWW{q3|gdxG_o(tRmufrBw6hQZ6* zg~vklLqHf>2gCHt3u^>f6q|*zzX;KC8mH+VXxfL}1Z~mSeKU-OSnxV`RL2c{jh)F zJ=#CV^`Py_5%D;QLppC!J5++RJeQaQL6TEDr$8Zzvqj-^?J`eT<3DC zQyb3aTFwWL)tt)p|u&8Ta^?~|iRzVEZUjv5WtP2petw^=K7 zkq1BI#KK_q1+tHUCWq!LP}ln~OC8Wg=;aG5<`d+goxHH_~}y1t2;tFKM{(&{Rf zt-XmQc;M$V;6^=;A5cZ!%?-{6zd$8Ln1z@;0%{jLW=Nn52#>9-S^vZ}$G*H@TU~gy zO0mP~Sf3dqnVk=Qh8jkK0B>}o6 z;7o4)8*Ntu-&A$QUy|20ZBr7Um52qZz{KH4<-rC9v>=5#sis!aR&DDxU|CRCArIK3 z*zVDp$1@w-bYq)tGIX-dZMZQlP9>$TEg$1Un4+N6iFz@e7U)WV+PD9?@1;pv_W9eG zd+&apd+xpGoO|v$=cOR<_B6^7m1w0dt)=`bP!|0uF;)~DO^>YRPCfoNf~xK9wqfL< z$mK}~B{O+43rSx^%Zaq`jdrXFm#Wum;Ji1KHtWFe**l-}S;8wIJZ|Z0`HMaK021fp ziE})m<~GmwoL}}DfNI&wi7e;ZY=BlySez>?@U42ETIy0uu0*eE)XGU( zCE|{@nZsP&^1%R@v&dhSoYzXxWM@iANv^cYCGAsJ719_nwYo>GoG!homP~a%w_B~8 zsaC@X{{s{F4K42ubbSN)>j&j$CFe=xysgPy(wH8a#%Z;(h~_dEr<=CWB^^KrA|emb z>sECkfPdQ@;}$G*9L53UOOx})1X4?4((B}m?IP?;ZdbitZD9|UcT;H(!b{YWyUg8T`K-tRVUTQ)Kx*K4_K+5uX#5D`CSwM$(eqSS6&-__8=oF78p!b_`W17sZf zCJIt1HxwRHv^zN~$z7_<)Gg}?_!+HV-SP;f>T#s2%^Q&96YWw%k0Cv1u6+Ri6BNg% z!V7*(<1Oy9rxZRuq>$(j^Ue_6#}@A_wqIsb;gIL#yX zYvfYNJoKv}MZ1!-QZ*ws+OP%9zyYV#4O@+=?^U-na~!((d|!;ucbhrXb`+$NO6cXG zMK291lAt8d5^0j4pymi)TNkbEE5_RLDR%Jr@}1pd%yJ)pecK#*FLJ3o5c<=gBBa5n zP~cNzC)3q4WIfkfPnl-kD&3xXagf6Ik&7`W~L>QP;KoF*wo#qv_Iy<7T5^{6YAUS!_pnP6(ocZlIUx*0*-hde#ieSEo`>pEQOfp>`gJn^X_^eYbWDObaLAszqRuNu;422@ZAZs4_ki;36P z0lbdjUgRdrW!EMNt1m4#S!t?4u`Kwa-$|a478GME0 zIkmD7hS611G0vNiAYd> zXp;%lZyki{Erar6QWp~ZxW>5C&>|C@_^qLA_syY2;lZ4k=c2)0C+6=0C#)wKmCzj- zmd?-}v0)n?8_fMb89Km^hZa3Pcub6xm&>{T36s~KGi>Aea3%Y-gP2va;VWL-V!yq7kp2o>>}eSsb$?nT8}@B4v@J>rIK-D%&__ zk;=*}?W2`2lJSqH94*#{`J#wmFn zO2l>G>`na6)Y-Jt`AvrvOOAm~U`gqo)pEj4>P_yWWYEy$9w|5Mex2wJQFfHZ%3&8M zb%aVK7kWZ;^Ui%Ko#Q=sCwc-t>Jy#4B6@(d(3_g^YhTn({a-iw@8*4y0rVvRNM1WC z`S`~H0cdIY#>n}6WR8%VGMsU!W4pq6CR5{%cYIA@J^Y+Q|ehU^{uY zg)wX#U*}zk^~jGC#K3wawzmtQq)I{ns`UWkeaWNur0xl)1~gyT$xjz^sDv^my)m%I zspgMvWKozXK|hX5r3)-)N-H!=g%&5f!Df!*LrS_qFLB&@G%OFHmsp8Z3_FKnXi(pv zi>y@X9>9zZ!L0j2m~{>*v4ei#p9xvWJU-ikB-#3BTY17Anr%Z!Uud?-YtxYCwdqLk z+6=9g*JR>N6ZVl{6Yu)A^l4~WVBa`Pe8j;n z>?4rYIU&pJkjMcV%>naIsW6l6tM&o=>PN1BVqdji*uI+hd$3`z-TafVQY3Ew42iBH z!xH{C?gt?Iu}5}c_MmVbv}1^oj5Wij+!5GjBM0-r$cZdVVn!B z|3Z6tg?3%|b9U_x5u#|t=imv+y+U?j4Z`ygRvinkuwaxKVew)B<_j*mL*jKI$7n0J zweMOd+M$F@nR~6S?NaV_SVHr3xdm`*)a#^3t$K&Z7s``Ej*L^X^;GMr6L;g|WeL8CPj*(g=|C`OvGudOC$v%5*??@E?Qa&ny!kvlzNxod^Ca@gsodp zRK3F?1YG{Re`;~DpJdWTu%a}SuZ_qVQse{~BUmwDg^J((oh4NLfwH(yP-cmLfH^yu z5y)UH1D>5U%3G-Em(X-=B)FKJh7ZR7z~h38?M+8{12q#T#D0W=m#83Y6y(pgxcm-0 z*d3Q()T*Y4duj!o_D7se3n)_tz*@I* zy$~GhW5vc)f+OLQ3RtlY+Gn)A>{q}|e@##8eBR>1qOrds-@2~)16_WXJwZKM0}g)! ztw@+WNz|+<@}MY1qPLc8q8yWKv?9k7i(%!9afD`e0CmblzCv*XF*TFIYtm>Q($2LJ z=c6rJ3tL7*vlg3x+T(0|eDEh|a2M)m1o}2Xw*<2k-5N}TnLc_g_Ot?ta`vV`lU3#8 z`7IV!Omk*?k#5r(l`)bIr}bv7^$EM zL4==G1TSZov)c#~1Vfsl+vE}h4jST8-sa z;&*qewwOu1=xDB&*2eC@F1GSN4n3_1`w#p$d5=I}ZLit;{dC&K8lqsd1Xo(*G$w;~ z5(7NTfQ#an>V*92($~PVDBS+D6q%Dv{8>wC8KN#oiy`0AiM(Lu{d0-A-oYwq@A0W~x2e)OE>KW4xdW2* zV26}OMZ6MupH?!{*5Q19c5b-LZQGAT`qJ)6wo{(hf*0cu@O;j(EK8eXx6N^QI+i(< z9g{q-$sa=K!;G*adX~+=wt~fNQzEU4Hj+s4y=(`gz`ht2J^O>;Mr~KO^Vwl&(>*0p z)4Ih{)5=8NDVV|TFhtuUV+7#e3Q4t(7(Y@4f!4}CmxZ(enkkp@bOtNRLXW?qF?#?- z>{?`z!Bp69(m5t>PBxsZN^`wLGV6(e7Ut@5zAn32<|yLV>Q?q3Zy$8{9l)3UxPTay z{b@86;_$_r@F~0u#V5{X3I;*i1v#TFZ34+g_G5r$t1>xW;*foX@rQag2W;SE&PlF3SWsL8k@lgaw(F(ttiYB4x%;Bohk^V?@F5kwm z+*5(A+)h3CekvV$d_UFV9>je>MR@9|r?#WNS%5Am+hRd!E&rG)kjBzMNP7Zye}rVx zYMUXGnoI8xge5buA%aW3d*e*J8k;HOEfxg%)@|7qst&oSdN$~08`Vv2@s_czkP?vd zn9iA^2`FulFE!bIizPaaLSO`GXXA80jyNBIh$P`)HkcA&b1**NzmG+}Ce8+0m=3~udMpSh z+gR-Eap;4ky(DsG|M+4%?@F*<07^#j;SzJ>a+SqBSf7}{LHjDU-|~LZA6~}Lx~Dyu z)6^EkuOe?E=8G=DH(8K51&}#B?2Fc2&&x;lT1vQ$M7X#MjdF{)QXMYtBO@oS!yTS| za>lk>0Xyny+6$j=OV055G$&Fov=!69HPr_{Uya|BT%G0begUGnK z5NRAjjgSH*qGHF7tcdIb-OO2$Yi-Vd7fl94W4RB)QTnPO9H9pO=?bYg%te-ekCnd7 zQm0KP_+vA;KBqQ4j7?X=A$mT#mY$C{(DV1J>G{$sJeNHD=#%^v-oRgv2l=b1j=!F| zhrfR1$Lq0gH9dwGM5fyG2ohmRJb^?z$AHA8R@4{ps!i*8?Pi~sJqiv&2jGGzlsrKw zLKF(gOGKaPd6SB;RpCng%n>vuCg5;JA5lSdt;UHFE{=JPBLgx6AGo!iIebav(lnZ+ zq0cH4DJ`^?`(C~seDVi+cup^OS7_Jcl*~k^&vZJSUsu{h&*^0!Lan5xcTv;3hBVC? z+*F?^Ku(kX>0iH5a4piOk#0-Bl&0bbW5W3VaBLQ!l6-^c_#!*O-nc zT`sCO+tqRh5d67dCGzM3a|Sb&eO3+*?DTU%fMmJXSOBp-ZKkP^qFk^C7t+fWyhYmS zwCqP{Al+h%yK(QWnT7UovTgCEH|2@t+=DYFBFglyPfhC>N#%P>ymMM;1qDD~Kclmo z_C-rqV*SA!?G_P%){g0H3IUpD*KTp}Joe(mI22vL-kOiEoUyHK#k!!~Xb&%U8D};= zc`feYQcI?wO}3sybUhHBh(itQglYE{iA$VKTe)OA9;UxE$+QO?>WzJh-tSx+;UPz{ z@O*1noUi3KhQ&sRcn~>4hn8rsv3iK>XDy*py(zLPu%-ea8>fG9`MsU;RApAdyL6&X z_S2jFY&pqw5z>FOHjPTOy#WgyiRI^k(`%aCjetg6WuX!BGX@vd8LJ$@+UU*eN_FkL za=zc$v>Ywh?hIZNy%e+JA7Q(d2ORyuv3@>RZTAcO>NEx2eGp~rr^pi2;vO@s(`@&; z*1>X&F{mAW7?`c(AzfY6`Zet)J9{x58VpmgO6>YHJcij5s^ZoRQ&pU1CsmQKxLRaudHjmA z4^|iL6qG)x``}*Bnc$b{ZmYFLzX+-7k#mEi_0O;>fos|FH8_e+~_?GBGE&uW0Y!JF%uoIz`>v?yXW6GBs;$4YV$T>dWKuy#t z^`bTt>i$C+Fj@@P+8)ZF3zSdKyPaCJ)zlgY`23UR;1)aq51s-Y|B-kH>`Q0KC>=(= zy@}hje1^C?Y70!MtTFq~q^{HP;HiLxH6{9E4P`g=&rN`sG8Dw^)Z2>(PX(-OP7;XW z=m!w!8S5R=(@ⅈ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 literal 48781 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 Z?QC$(9UAxG{M~Op{{xFpGU5Pa0RSxSPlNyf diff --git a/shadowsocks-csharp/Encryption/Sodium.cs b/shadowsocks-csharp/Encryption/Sodium.cs index 8d690dd2..dc564ace 100755 --- a/shadowsocks-csharp/Encryption/Sodium.cs +++ b/shadowsocks-csharp/Encryption/Sodium.cs @@ -40,6 +40,9 @@ namespace Shadowsocks.Encryption [DllImport(DLLNAME, CallingConvention = CallingConvention.Cdecl)] public extern static int crypto_stream_chacha20_xor_ic(byte[] c, byte[] m, ulong mlen, byte[] n, ulong ic, byte[] k); + [DllImport(DLLNAME, CallingConvention = CallingConvention.Cdecl)] + public extern static int crypto_stream_chacha20_ietf_xor_ic(byte[] c, byte[] m, ulong mlen, byte[] n, uint ic, byte[] k); + [DllImport(DLLNAME, CallingConvention = CallingConvention.Cdecl)] public extern static void ss_sha1_hmac_ex(byte[] key, uint keylen, byte[] input, int ioff, uint ilen, diff --git a/shadowsocks-csharp/Encryption/SodiumEncryptor.cs b/shadowsocks-csharp/Encryption/SodiumEncryptor.cs index a18d2a69..b3877f86 100755 --- a/shadowsocks-csharp/Encryption/SodiumEncryptor.cs +++ b/shadowsocks-csharp/Encryption/SodiumEncryptor.cs @@ -10,6 +10,7 @@ namespace Shadowsocks.Encryption { const int CIPHER_SALSA20 = 1; const int CIPHER_CHACHA20 = 2; + const int CIPHER_CHACHA20_IETF = 3; const int SODIUM_BLOCK_SIZE = 64; @@ -29,6 +30,7 @@ namespace Shadowsocks.Encryption private static Dictionary _ciphers = new Dictionary { {"salsa20", new int[]{32, 8, CIPHER_SALSA20, PolarSSL.AES_CTX_SIZE}}, {"chacha20", new int[]{32, 8, CIPHER_CHACHA20, PolarSSL.AES_CTX_SIZE}}, + {"chacha20-ietf", new int[]{32, 12, CIPHER_CHACHA20_IETF, PolarSSL.AES_CTX_SIZE}}, }; protected override Dictionary getCiphers() @@ -75,6 +77,9 @@ namespace Shadowsocks.Encryption case CIPHER_CHACHA20: Sodium.crypto_stream_chacha20_xor_ic(sodiumBuf, sodiumBuf, (ulong)(padding + length), iv, ic, _key); break; + case CIPHER_CHACHA20_IETF: + Sodium.crypto_stream_chacha20_ietf_xor_ic(sodiumBuf, sodiumBuf, (ulong)(padding + length), iv, (uint)ic, _key); + break; } Buffer.BlockCopy(sodiumBuf, padding, outbuf, 0, length); padding += length; diff --git a/shadowsocks-csharp/View/ConfigForm.Designer.cs b/shadowsocks-csharp/View/ConfigForm.Designer.cs index 306a92ec..fcd11838 100755 --- a/shadowsocks-csharp/View/ConfigForm.Designer.cs +++ b/shadowsocks-csharp/View/ConfigForm.Designer.cs @@ -201,6 +201,7 @@ "rc4-md5", "salsa20", "chacha20", + "chacha20-ietf", "aes-256-cfb", "aes-192-cfb", "aes-128-cfb"});