QQ协议概述

原创 2004年09月05日 22:54:00

QQ协议概述<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

最后修改: 2003103

 

 

QQ的版本:

 

QQ的版本升级比较频繁,而且与多数的软件不同的是,它客户端的升级往往伴随着协议相应的改变。

 

目前,对研究QQ协议版本比较重要的是:

 

QQ2000c 。它对应的客户端协议版本是08xx,目前对这个版本的研究比较多。

 

QQ2003 (0808) 这是腾讯最新公布的QQ版本,目前发现它对应的客户端协议版本是0A 1D。目前对这个版本的研究才刚刚开始,此版本对协议做了比较大的改动。

 

 

协议类型:

 

我们尝试把QQ的协议进行分类:

 

文字聊天协议族(TCPF, Text Chatting Protocol Family):它主要支持与其它QQ客户端进行文字聊天。TCPF是建立在UDP协议之上。UDP数据包中的第一个字符02为这个协议族的标识。TCPF的服务器使用8000号端口,腾讯的QQ客户端软件一般从4000号端口开始尝试使用,但实际上,对客户端使用的端口号并没有限制。目前的研究集中在TCPF上。

 

其它未知可能存在的协议族:

 

我们观察到QQ除了与TCPF服务器通信以外,还有与其它的服务器使用UDP进行通信。目前我们观察到的服务器为 218.17.217.111 : 8000。客户端使用与TCPF不同的端口。目前观察到的从客户端发出的包以06开头,而服务器返回的包则以01开头。目前其具体作用未知。我们注意到一个有趣的现象是,如果选择离线后重新上线,那么在发出登录包之前,这个通讯已经开始。我们暂时把它命名为数据传输协议族(DTPFData Transfer Protocol Family)。最新的研究发现,它传递的是QQ Show的图片数据。

 

语音、视频聊天:目前还没有开始分析,尚未知道是使用UDP还是TCP协议。

 

聊天室:没有分析,应该是TCP协议。

 

随着对这些协议分析的开始,我们会给它们更精细的划分和恰当的命名。

 

 

TCPF:

 

TCPF是建立在UDP协议上的协议族,主要支持文字聊天功能。TCPF是以请求-响应模式工作的。也就是说,客户端发出一个请求,服务器端会给出一个相应的响应;服务器向客户端发送信息,客户端也会给服务器相应的响应。请求和响应通过相同的序列号来进行配对(请求代码也应该相同)。而且每种请求的发起方都是相同的。目前,已知的请求包括:

 

0x0001  注销登录

0x0002  心跳信息

0x0004  更新用户信息

0x0005  搜索用户

0x0006  获取用户信息

0x0009  不需认证方式添加好友

0x000a  删除好友

0x000b  需要认证的方式添加好友

0x000d  设置隐身、示忙等状态

0x0012  确认收到系统消息

0x0016  发送消息

0x0017  收到消息(服务器发起)

0x001a  未知作用。

0x001c  在对方好友列表上删除自己

0x001d  未知作用。

0x0022  登录

0x0026  获取好友清单

0x0027  获取在线好友

0x0030  群操作指令

0x0080  收到系统消息(服务器发起)

0x0081  收到好友状态改变消息(服务器发起)

 

修订历史:

 

2003103  jeff_yecn增加群操作的定义

 

2003830  jeff_yecn增加对DTPF的命名

 

2003829  jeff_yecn创建

iphone QQ协议,andriodQQ协议,安卓QQ协议

iphone QQ协议,QQ iphone协议,andriodQQ协议,安卓QQ协议   QQ Iphone登陆协议其实只要两个包即可。 没解之前感觉神秘莫测,解完之后感觉QQ也真是胆大啊...
  • wangyinlon
  • wangyinlon
  • 2017年01月16日 12:38
  • 1701

QQ协议分析总结

QQ传输协议分析 http://www.mamicode.com/info-detail-866314.html 一、 实验目的:   在虚拟机下NAT模式下通过Wireshark抓包,分析Q...
  • bcbobo21cn
  • bcbobo21cn
  • 2016年06月02日 18:46
  • 5015

QQ使用了什么通讯协议?为什么要这样做?为什么采用 UDP 协议,而不采用 TCP 协议实现?

登陆采用TCP协议和HTTP协议,你和好友之间发送消息,主要采用UDP协议,内网传文件采用了P2P技术。 QQ对于普通用户是采用UDP协议,对于会员用TCP协议 总来的说: 1.登陆过程,客...
  • liusandian
  • liusandian
  • 2016年08月18日 11:07
  • 2044

PC端QQ协议分析

http://www.c78.net/anqn/web/12962.html 刚接触PCQQ协议,根据以前借鉴了网上的协议分析文章,写了个笔记,如发现有错误欢迎之处,我会改正本文...
  • oMingZi12345678
  • oMingZi12345678
  • 2015年07月07日 00:41
  • 5559

QQ传输协议分析

2015-06-16 16:27:07 一、 实验目的:   在虚拟机下NAT模式下通过Wireshark抓包,分析QQ的传输模式。了解QQ在传输信息过程中用到的协议。分析在Nat模式下,信息传输...
  • wangyinlon
  • wangyinlon
  • 2017年01月26日 10:17
  • 475

国际版QQ登陆协议的详细分析-握手包发送

免责声明:分析协议只是为了学习,请勿使用在其他的用途上,因此发生的任何法律责任,本帖作者不付任何责任,如果分析协议中损害了您的权益,请联系作者删除本帖,谢谢合作. 上文写到工具的准备,准保好工具之后...
  • wang1994228
  • wang1994228
  • 2015年05月17日 21:56
  • 1030

QQ2013协议分析(一)准备工作

腾讯QQ(统一简称“QQ”)是腾讯公司开发的一款基于Internet的即时通信(IM)软件。腾讯QQ支持在线聊天、视频电话、点对点断点续传文件、共享文件、网络硬盘、自定义面板、QQ邮箱等多种功能,并可...
  • CWangChao
  • CWangChao
  • 2013年06月07日 09:23
  • 9181

QQ2013协议分析(五)0826 Login verify

1.1    0826 Login verify 1.1.1   [2013/6/8 14:35:13:675] 发送 原文 02 32 59 08 26 02 0E 35 37 BB 44 03 0...
  • CWangChao
  • CWangChao
  • 2013年06月12日 21:41
  • 12552

QQ2013的PC版协议,0825包和0826的数据分析

最近写个QQPC协议返回当前QQ各种状态的东东。网上很多地方说的都有点不太明白,而且最新协议的也很少,基本都是以前的。苦逼之下借鉴各种资料,熬了几天。终于写出来了。因为只返回各种状态,,所以偶分析到0...
  • haigenwong
  • haigenwong
  • 2013年09月13日 21:17
  • 9433

QQ机器人{协议篇}

webQQ协议梳理
  • hello_world_zhou
  • hello_world_zhou
  • 2017年01月30日 14:51
  • 2711
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:QQ协议概述
举报原因:
原因补充:

(最多只允许输入30个字)