背景
QQ,一个通信工具,号称拥有N亿,现在注册QQ已经是10位数了,如果QQ注册的号码是不断递增的话,那么QQ应该已经被注册了至少10亿次。在中国,只要你是经常上网的网民,手中必须得有一个QQ号,当然你也可以没有,但你的朋友、同学、亲戚、同事全都有,大家都通过QQ进行沟通,你不用,要沟通多不方便啊。
作为一个通信工具,必定涉及到网络通信协议。由于腾讯基于QQ这个产品承载了很多业务,要将协议全部分析完全就需要相当大的工作量了,而且没有这个必要。今天就拿QQ中最基本的聊天协议进行分析一下。
协议
QQ协议首选的传输层协议是UDP,如果UDP不可用,那么会再尝试使用TCP进行传输。UDP使用的端口是8000(0x1F40),TCP使用的端口是443(0x1BB)。
QQ协议中每个通信包都有一个协议头部,如图:

使用结构体可以这样表示:
typedef struct _QQ_DATA_HEAD
{
uchar ucFlag;
ushort usVer;
ushort usCmd;
ushort usSeq;
uint  uiSender;
} QQ_DATA_HEAD, *PQQ_DATA_HEAD;

在进行协议还原的时候,我们最关心的就是协议头部的命令字,需要根据不同的命令

【协议分析】PC QQ协议聊天内容破解相关推荐

  1. android qq协议分析工具,QQ协议分析

    QQ协议说明: 协议由报文头(T)+发送者(T)+接收者(T)+报文类型(T)+报文长度(L)+报文内容组成 发送者和接收者是系统内的程序种类,OICQ服务器0x01,传真服务器0x02,WEB服务器 ...

  2. webqq2协议分析和qq聊天机器人简单实现(转)

    webqq2协议分析和qq聊天机器人简单实现 转之http://hfutxf.javaeye.com/blog/800866 通过webqq接口,可以实现发送qq消息接收qq消息等,这样,想实现一个q ...

  3. 蓝牙协议分析(2)_协议架构

    原文链接:蓝牙协议分析(2)_协议架构 (wowotech.net) 系列索引:蓝牙协议分析(1)_基本概念 目录 1.前言 2.协议层次 2.1 物理层 2.1.1 Physical Channel ...

  4. 协议分析---TCP/IP协议和邮件协议

    协议分析-TCP/IP协议和邮件协议 一.TCP/IP 1.TCP/IP参考模型概述 1.1 常见不同层使用的协议   应用层:Telnet.FTP.TFTP.SNMP.HTTP.SMTP.NFS.D ...

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

    iphone QQ协议,QQ iphone协议,andriodQQ协议,安卓QQ协议 QQ Iphone登陆协议其实只要两个包即可. 没解之前感觉神秘莫测,解完之后感觉QQ也真是胆大啊! 以下为网上抄 ...

  6. oracle监听协议是什么意思,【ORACLE|ORACLE-TNS协议分析】TNS|协议|分析-傻大方

    『傻大方知识库摘要_ORACLE|ORACLE-TNS协议分析』TNS协议传输可以使用TCP/IP协议.使用SSL的TCP/IP协议.命名管道和IPC协议传输,其中TCP/IP协议传输是使用明文传送. ...

  7. mysql协议分析1,MySQL协议分析(1)

    MySQL协议分析 此阶段的协议分析是在未压缩未加密情况下的协议分析 思路: 结合Oracle官网和自己用wireshark抓的网络数据包进行协议分析 官网说明 mysql包共分为4段,格式如下: 第 ...

  8. 计算机网络协议分析dns,DNS协议分析

    一直有一个愿望,能把知道的东西的原理搞明白:计算机网络.操作系统等等等等.今天好好研究了研究DNS协议. DNS协议是应用层协议,一般是基于UDP协议,不过我看了Golangnet 包里相关源码用的是 ...

  9. webqq2协议分析和qq聊天机器人简单实现

    转之http://hfutxf.javaeye.com/blog/800866 通过webqq接口,可以实现发送qq消息接收qq消息等,这样,想实现一个qq聊天机器人,就不是什么难事情了了,下面开始一 ...

  10. 微信协议分析 pc端记录

    android端的之前参考如下帖子: https://blog.csdn.net/yy405145590/article/details/79963999 但是这个帖子出来之后,微信在pack之后又封 ...

最新文章

  1. Yolo:实时目标检测实战(下)
  2. 使用Windows操作系统的13个窍门
  3. shell实例第19讲:一个脚本中调用另一个脚本的3种方法
  4. php fetchassoc 跨表,php-mysqli_fetch_assoc-如果同时更改数据会怎样?
  5. GNN大有可为,从这篇开始学以致用
  6. GIT项目管理工具(part6)--放弃工作区文件修改及从仓库区恢复文件
  7. pytorch 绘制多个算法loss_PyTorch线性模型和梯度下降
  8. 在linux下设置开机自动启动程序的方法
  9. eclipse启动tomcat无法访问的解决方法(转)
  10. NoSQL数据库介绍
  11. html静态模板资源,可下载源码
  12. ros各级授权的区别
  13. 【正点原子Linux连载】第六十五章 Linux 音频驱动实验 -摘自【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.0
  14. ubuntu中耳机声音小的解决方案
  15. 【错误记录】Google Play 上架报错 ( 此版本不符合 Google Play 关于提供 64 位版本应用的要求。| 如果提供 x86 架构动态库则必须提供 x86_64 架构的动态库 )
  16. 电子计算机的发展经历了四代
  17. vite打包工具的介绍
  18. 人力资源管理案例选读【3】
  19. 使用Delphi进行相机访问
  20. 单枪匹马想要搞定亿级流量?2021阿里都换成这个牛逼架构了

热门文章

  1. python贝叶斯分析方法实例_python 贝叶斯分析对应的代码
  2. 三角函数泰勒级数推导
  3. android盒子改造,【当贝市场】废旧手机改造成电视盒子详细教程
  4. 示波器在Multisim仿真中如何看信号周期频率
  5. UltraEdit编辑器+注册机(windows版)让数据处理更简单
  6. 计算机网络奇偶校验码题目,计算机网络试题(考试必备)分解.doc
  7. 经验谈:写给新手的反激变压器KRP详解
  8. 认识电子计算机评课稿,《走进计算机》评课稿.docx
  9. 小米盒子 smb Android,客厅里的多媒体 小米盒子SMB本地连接
  10. cmd命令删除计算机密码,怎么用DOS命令查询或消除电脑登陆密码?