日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

QQ协议分析及其还原(一)

發布時間:2025/3/20 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 QQ协议分析及其还原(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文網址

QQ協議分析及其還原(一)

2012-02-26

QQ,一個通信工具,號稱6億的用戶量,現在每天的活躍賬戶在1億以上。在中國,只要是一個經常上網的網民,手中必須得有一個,當然也可以沒有,但是朋友、同學、同事都有,就你沒有,人家說什么事都是用這個在聯系,你不用,都不好進行溝通和做事情了。

既然是通信工具,肯定就涉及的網絡通訊,自然就引申到協議了。其實QQ協議,在國內已經分析的比較完善了,由于TX在基于QQ這個產品上承載的很多很多的業務(當然收入也是很多很多很多…..),因此要將其全部分析完全,那工作量非常大,而且沒有必要,只需要分析它的密鑰交互過程,獲取密鑰之后,解密的明文做幾次比對分析,就基本知道是啥意思了。

最初,QQ通信協議并沒有加密,而是直接采取明文的方式進行傳輸,到了后來才使用了加密傳輸,加密算法一直沒有變過,使用的是blowfish算法,但是密鑰的交換協議變得比較頻繁。其實TX也是被逼的,現在的互聯網用戶比前幾年更加注重隱私安全,這么大用戶量的通信軟件,如果用戶與對方之間的聊天信息可以輕易的被第三方破譯獲取,那么用戶量肯定會離開她,而去選擇那些能夠更加保護好個人隱私的人通信軟件。因此,隨著時間的推移和技術的發展,以前設計的協議可能會被研發者發現一些弱點,“圖謀不軌”者加以利用,會對TX造成一些潛在的風險,他不得不對協議進行修改(QQ2011正式版中的密鑰交換中對密碼的MD5計算就加入了salt的概念,這個salt就是對應的QQ號碼,后面會有詳細的描敘)。

QQ協議首選的傳輸層是UDP,如果UDP不可登陸,那么會再嘗試使用TCP進行傳輸。UDP使用的端口是8000,TCP使用的端口是443,應用協議基本一樣,只是在通過TCP進行傳輸時,前兩個字節為協議內容的長度(包括2個字節)。

QQ協議中每個通信內容都帶有一個協議頭部,如下圖:


其中標識1一個字節,版本號、命令字和序號都是2個字節,QQ號碼有4個字節,接下來是數據部分(已加密),最后是一個尾部標識1個字節。

在進行協議還原的時候,最關心的就是協議頭部的命令字,需要根據不同的命令字,來進行相應的處理,最終獲取密鑰解密聊天內容。

第二篇見….


總結

以上是生活随笔為你收集整理的QQ协议分析及其还原(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。