需要弄懂的两个问题:
1、登录请求令牌包是怎么样被构造出来的,它的包结构怎么查看。
2、登录请求令牌包是怎么样被发送出去的。
登陆请求令牌包的构造:
packet = new RequestLoginTokenPacket(user)
一、请求登录令牌的包,格式为:
1. 头部
2. 未知的1字节,0x00
3. 尾部
二、基本协议族的输出包基类:
基本协议族的包都具有以下的格式:
1. 包头标志,1字节,0x02
2. 客户端版本代码,2字节
3. 命令,2字节
4. 包序号, 2字节
5. 用户QQ号,4字节
6. 包体
7. 包尾标志,1字节,0x03
Note: 6部分将用会话密钥加密, 登录包例外,6部分要用密码密钥加密。请求登录令牌包例外,6部分不需加密
RequestLoginTokenPacket(请求登录令牌包)继承BasicOutPacket(基本协议族的输出包基类);
OutPacket(所有输出包基类,这个基类定义了输出包的基本框架)继承了Packet(QQ所有包对象的基类);
BasicOutPacket(基本协议族的输出包基类)继承OutPacket(所有输出包基类,这个基类定义了输出包的基本框架);