首页 > 编程知识 正文

WPA 预认证共享密钥,wpapskwpa2psk密码

时间:2023-05-06 14:21:33 阅读:170081 作者:4687

在测试项目中遇到了需要SHA256加密才能登录的东西,但是loadrunner测试工具没有很好地集成这些加密算法,只能自己写。 今天,我们将以. h文件头的形式进行导入调用。

SHA256的具体加密算法流程不会直接访问完整的代码,而无需说明。

#definesha256_rotl(a,b ) ) (a ) a(32-b ) )0x7ffffff ) 31-b )|) ab ) ) definesha256_Sr ) a,b ) ) z () xy ) ) (((x ) z ) ) definesha256_maj,z ) ) xy ) ^ ) xz ) ^ ) yz ) ) #define SHA256_E0(x ) ) sz 10 7 ) ) defining 3) definesha256_O1(x ) ) SHA256_ROTL(x ) x,15 ) SHA256_ROTL(x ) x,13 ) sha256_Sr ) x,x IStrlen(Tsha256; I ) if ) tsha256[I]='a'tsha256[I]='z ' ) {tsha256[i]=tsha256[i] 32; }}}//sha256加密算法char*strsha256(constchar*str,long length,char* sha256 ) longk [ 64 ]={0x 428 a2f 98,0x 713770xd 807 aa98,0x 12835 b01,0x 243185 be,0x 550 c7dc 3,0x 72 be 5d 74,0x 80 de B1 Fe,0x9BDC 06 a0xe FBE 4786,0x 0f c 19dc 6,0x 240 ca1cc0x76f988da、0x 983 e 5152、0xa 831 c66d、0xb 00327 cc0xd5a 79147、0x 06c a 6351、0x 14292967、0x 27 b 70 a 85、0x 2e 1b 2138、0x4d2c6DFC0x81c2c92e0xa81a664b、0x c24 b8b 70、0x c76 c 51a 3、0xd 192 e819、0xd 6990624、0x f40 e 3585、0x 106 aa 070、0x 19 a 4c 116、0x1e 376 C08、0xd 192 e 3760x 682 e6ff 3,0x 748 f82ee,0x78a5636f,0x84c 87814,0x8cc 70208,0x 90 be FFA,0xa4506ceb,0xbEF9a3f char *pp,*ppend; long l,I,W[64],T1,T2,a,b,c,d,e,f,g,h,H0,H1,H2,H3,H4,H5,H6,H7; H0=0x6a09e667、H1=0xbb67ae85、H2=0x3c6ef372、H3=0xa54ff53a; H4=0x510e527f、H5=0x9b05688c、H6=0x1f83d9ab、H7=0x5be0cd19; L=Length () Lengthd56 )? (128 - length % 64 ) : ) 64-Lengthd ); if (! (PP=(char* ) malloc ) (unsignedlong ) l ) )返回0; for(I=0; i length; PP[I3-2*(I%4) ]=str[i],I ); for(PP[I3-2* ) I%4) ]=128,I; i l; PP[I3-2*(I%4) ]=0,I ); * () long* ) pp l - 4 ) )=length 3; * () long* ) pp l - 8 ) )=length 29; for(ppend=PPL; pp ppend; PP=64(for ) I=0; i 16; w[i]=() long* ) pp ) [I],I ); for(I=16; i 64; w[I]=(sha256_O1 ) W[i - 16] ) w[I-7]sha256_O0 ) W[i - 16] ) W[i - 16],I ); A=H0,B=H1,C=H2,D=H3,E=H4,F=H5,G=H6,H=H7; for(I=0; i 64; I () T1=hsha256_E1 ) e ) SHA256_Ch(E ) e、f、g ) K[i] W[i]; T2=sha256_E0(a ) SHA256_Maj(A ) a、b和c ); H=G,G=F,F=E,E=D T1,D=C,C=B,B=A,A=T1 T2; ) H0=a,H1 =B,H2 =C,H3 =D,H4 =E,H5 =F,H6 =G,H7 =H; (free ) PP-L ); sprintf(sha256,' xxxxxxxx ',H0,H1,H2,H3,H4,H5,H6,H7 ); 返回sha 256; }直接在脚本目录中创建文件,粘贴代码,将其重命名为SHA256.h,然后将此文件导入globals.h,在左侧单击鼠标右键,然后导入-AddFiles Script。

这样一切都很顺利。 用脚本直接进行方法调用就可以了。 直接访问代码。

int s; char testSha256[256]; char tsha256[256]; char test[256]; ///将需要加密的字符串连接到字符串变量lr_save_string(lr_eval_string ) (12345678 )、) testSha256 ) ); //获取字符串长度s=strlen (lr _ eval _ string (({ tests ha 256 } ) ); //将字符串复制到新变量并直接使用会导致算法错误的strcat(test,lr_eval_string ) ({testsha256} ); //执行加密算法。 参数为1 .加密字符串、2 .加密字符串保留长度、3 .用于存储字符串的变量strsha256(test,s,tsha256 ); //为了执行文字转换,将通过加密算法得到的文字转换成大小写的SAS(tsha256 ); //将最终加密的信息代入相关参数lr_save_string(tsha256,' S_hash ' ); lr _ log _ message (password data : % s ),lr_eval_string(({s_hash} ) ); 最后,让我们看一下运行结果。 在在线网站上进行比较吧。

复制&; 糊操作像老虎一样激烈,可以吗?

互相学习,共同进步!

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。