大智慧协议的Java破解

发现大智慧所有版本的登录协议都是一样的。以用户名 111111 密码 222222 登录为例,


1. 第一阶段的数据为:

00000000  36 10 34 00 00 00 03 00  3E 7A 2A 14 64 5C 36 C0   6.4..... >z*.d/6.
00000010  AE A2 08 6D 2E 43 9D 97  BB E0 E5 40 DC CC 3B FC    ...m.C.. ...@..;.
00000020  3C 63 0A 8D 5E C9 AB 03  8F D9 A2 98 32 52 4D 2A   <c..^... ....2RM*
00000030  DE BF 01 F8 06 CB A6 14  32 32 32 32                        ........ 2222

 36 10 34 00 00 00 03 00  为这个请求的头,
3610 = 1036 为请求的标识
34 00 00 00 为这个请求的长度(长整型 00 00 00 34 )
03 00  未知作用

 

服务器返回

00000000  31 10 39 00 00 00 03 00  50 5E 7C C0 A2 2E 6C 32   1.9..... P^|...l2
00000010  4E 50 DB DD 6B F4 EF 87  02 36 11 8E 7A 4E 02 26   NP..k... .6..zN.&
00000020  BF 15 E8 8F C9 FC DB 42  5F B5 2F 66 AD 2D 55 32   .......B _./f.-U2
00000030  69 5D EB AC A3 11 42 79  7C 0D 0A 3C 2F 41 3E 0D   i]....By |..</A>.
00000040  0A   

 31 10 39 00 00 00 03 00  跟请求的格式一致。31 10  说明后面还有数据,不是最后一个数据。

 

第二阶段的数据格式为

00000000  36 10 04 00 00 00 03 00  01 00 00 00                       6....... ....

该请求可有可无

 

服务器返回认证的结果。

00000000  32 10 63 01 00 00 13 00  3B 39 B4 ED 93 37 FA 19   2.c..... ;9...7..
00000010  EB F8 AF 3C 28 78 49 62  E7 0B 8B F7 8E 57 97 CC   ...<(xIb .....W..
00000020  2C 8F 04 44 70 59 6C BB  E1 95 1F AD 85 9F 49 81   ,..DpYl. ......I.
00000030  CF 30 0A 80 55 9A 68 68  3A E3 BD 51 13 9E FA 4C   .0..U.hh :..Q...L
00000040  C1 A6 9F 3E 02 F2 7D 23  B1 08 09 7A C8 A9 60 02   ...>..}# ...z..`.
00000050  7D 10 3A 38 E8 C3 36 4E  64 DB CF 28 32 83 99 3E   }.:8..6N d..(2..>
00000060  B4 22 85 30 1F AF 32 15  BC 18 3B 38 86 D1 F0 F3   .".0..2. ..;8....
00000070  3C 98 19 D7 FE FB 01 7D  A0 70 A3 90 A9 0A EF 69   <......} .p.....i
00000080  7C A6 44 61 BE 18 39 B4  E6 6D 2D C3 C2 0C F8 F5   |.Da..9. .m-.....
00000090  BB DB B3 FF 56 36 C9 9C  94 D0 46 CD 00 26 A4 05   ....V6.. ..F..&..
000000A0  FD 35 5B 61 05 08 11 FD  0A FE 7E 95 1B 27 50 45   .5[a.... ..~..'PE
000000B0  EE AB 61 5D E5 0B F1 6F  00 BE EA BA F8 90 F6 46   ..a]...o .......F
000000C0  E2 60 F8 EC CB E4 52 3A  78 4F 5C 31 50 E8 A2 63   .`....R: xO/1P..c
000000D0  9C AF 27 74 65 1A FC 96  0A B5 8B 3A 28 33 22 11   ..'te... ...:(3".
000000E0  4D 6F 40 70 D1 21 47 5D  5A 46 A6 4A F6 69 D0 0A   Mo@p.!G] ZF.J.i..
000000F0  4B 46 C0 7C 6F FE D9 B9  D1 B1 9E 61 F1 25 65 59   KF.|o... ...a.%eY
00000100  1B E1 C5 66 2A DE 8F 7E  CE 51 A3 A4 05 61 46 7D   ...f*..~ .Q...aF}
00000110  E1 6E DE CA 9B DB 89 A4  D1 C2 B2 F0 51 DC 45 A4   .n...... ....Q.E.
00000120  26 CB B2 F4 9A 7A EF 41  EE 6F 2A D6 DC B9 84 41   &....z.A .o*....A
00000130  59 65 7B 6A FD 31 96 51  66 5A 1B 88 5B 9A 93 30   Ye{j.1.Q fZ..[..0
00000140  04 7E 49 9F 50 0C EB 3F  2C D0 8C 73 32 FA D4 B7   .~I.P..? ,..s2...
00000150  0D 9F B9 C0 AF 70 3B 10  4C 0C E1 FD DB 1C B3 F0   .....p;. L.......
00000160  24 13 2E F2 4D 2D 56 7D  34 D7 E1                             $...M-V} 4..

 

 

接下来就是具体的协议内容了。

 

大智慧采用的是AES加密算法,具体算法Google一下。

 

大智慧采用的AES key 是 "7654321 Now is t"

 

以第一个服务器返回的数据为例:

00000000  31 10 39 00 00 00 03 00  50 5E 7C C0 A2 2E 6C 32   1.9..... P^|...l2
00000010  4E 50 DB DD 6B F4 EF 87  02 36 11 8E 7A 4E 02 26   NP..k... .6..zN.&
00000020  BF 15 E8 8F C9 FC DB 42  5F B5 2F 66 AD 2D 55 32   .......B _./f.-U2
00000030  69 5D EB AC A3 11 42 79  7C 0D 0A 3C 2F 41 3E 0D   i]....By |..</A>.
00000040  0A   

 

解密后的明文为:

SFLogInPack=ABK
<A>
m_intLoginRet|
4294967286|
</A>

 

AES 加密算法的Java 实现

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值