LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1732|回复: 6

qq协议的0x0018命令

[复制链接]
发表于 2006-12-5 16:46:54 | 显示全部楼层 |阅读模式
登录QQ,如果本次输入的QQ密码和上一次登录的密码不一样,QQ客户端会发出0x0018命令去服务器验证,现把0x0018命令详细生成方法公布如下:

0x0018命令:
命令格式:
字节          内容
0-1           数据包长度:        0x01 0xe6  = 486
2             报文开始标志:      0x02
3-4           QQ版本             0x0f 0x4b  //2006 beta 3 版本
5-6           命令               0x00 0x18
7-8           序列号             随机
9-12          QQ号
13-28         16位随机数(成为:A)
29-484        456位加密数据
485           0x03报文技术标志

现在讨论29-484的数据是怎么生成的,称为DATA:

首先:数据生成用到了tea和md5算法,
        其中tea加密又分两种(核心加密不变,只是随机数的选择和填充有变化),称为:
        a:encrypt
        b:encrypt_18
        以上两种加密算法,可参考另外文档或直接读程序.

开始生成数据:

1.用版本号第1位(此版本是0x0f)加上,QQ号码(4字节二进制数据),共5个字节做md5,生成16字节数据,成为B
2.用版本号第2位(此版本是0x4b)加上,QQ号码(4字节二进制数据),共5个字节做md5,生成16字节数据,成为C
3.用B+C共32个字节做md5,生成16字节数据D
4.把D和C这两个16字节数据进行异或操作C^D生成16字节数据E
5.把E和A这两个16字节数据进行异或操作E^A生成16字节数据F
6.把F和C这两个16字节数据进行异或操作F^C生成16字节数据G_KEY

7.encrypt(NULL,0, passkey, H, 'H'的长度=16);
  用encrypt算法,对NULL进行加密,以passkey(passkey是QQ密码的两次md5)为加密用的key,生成H,长度16.

8.生成加密前的原始数据BUFFER:
  0-15:H
  16:0x00
  17:0x00
  18:0x18
  19-42:0x0062命令返回后的24字节数据(关于0x0062:token命令参考其他文档)
  43:0x01
  44:0x90
  45-444:0x00

9.加密BUFFER:
  encrypt_18(BUFFER, 445, G_KEY, DATA, 长度=456);
  用encrypt_18算法,对BUFFER进行加密,G_KEY为加密用的key,生成DATA,长度456.
  
通过以上复杂算法,终于生成了0x0018命令的所有数据.
发表于 2006-12-20 00:04:02 | 显示全部楼层
呵呵,不会,但要帮顶技术 贴
回复 支持 反对

使用道具 举报

发表于 2006-12-22 12:54:03 | 显示全部楼层
不会,同顶技术帖
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-12-26 14:44:53 | 显示全部楼层
终于有人回复了,谢谢啊!
回复 支持 反对

使用道具 举报

发表于 2007-1-16 16:28:47 | 显示全部楼层
辛苦了。能找出来key
开始生成数据:

1.用版本号第1位(此版本是0x0f)加上,QQ号码(4字节二进制数据),共5个字节做md5,生成16字节数据,成为B
2.用版本号第2位(此版本是0x4b)加上,QQ号码(4字节二进制数据),共5个字节做md5,生成16字节数据,成为C
3.用B+C共32个字节做md5,生成16字节数据D
4.把D和C这两个16字节数据进行异或操作C^D生成16字节数据E
5.把E和A这两个16字节数据进行异或操作E^A生成16字节数据F
6.把F和C这两个16字节数据进行异或操作F^C生成16字节数据G_KEY
真得不容易。!
回复 支持 反对

使用道具 举报

发表于 2007-1-27 11:23:44 | 显示全部楼层
好!!!!!!!!
回复 支持 反对

使用道具 举报

发表于 2007-2-1 11:51:56 | 显示全部楼层
楼主厉害,我正需要这方面的研究资料,希望能多多交流.呵呵.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表