解密QQ聊天記錄文件存儲方式

2007年08月31日13:45  來源:來自論壇

 【字號 打印 留言 論壇 網摘 手機點評 糾錯
E-mail推薦:  

  QQ聊天記錄存儲規則

  最近花了幾天時間跟蹤了一下"QQ聊天記錄查看器 5.3 華軍版",總算把聊天記錄的存儲方法弄清了。大家不要笑我,只是好奇而已,呵呵。

  1.聊天記錄存儲方式

  QQ聊天記錄保存在MsgEx.db文件中。以前很早的版本是保存在Msg.db中,文件結構也與現在不同,我們就不分析了。

  MsgEx.db採用Storage結構化存儲。關於Storage復合文檔的知識請查閱Microsoft相關文檔,我們不做贅述。

  大家可以用VC自帶的DocFile View工具查看該文件的內容,可以看到文件結構大致如下:

  |----MsgEx.db

  | |----C2CMsg

  | |----QQ號碼

  | |----Data.msj

  | |----Index.msj

  | |----IMInfo

  | |----info.dat

  | |----Matrix

  | |----Matrix.db

  | |----SysMsg

  | |----10000

  | |----Data.msj

  | |----Index.msj

  | |----DiscMsg

  | |----GroupMsg

  | |----MobileMsg

  |---------TempSessionMsg

  消息內容都存儲在每個號碼下面的Data.msj中,通過Index.msj索引。消息內容是經過加密處理的,必須經過解密才能看到。

  QQ聊天記錄解密方法

  2.解密方法

  消息內容採用BlowFish分組加密。每8個字節為一個分組。密鑰Key通過QQ號碼生成,具體算法稍后討論。

  解密方法:

  a.取前8個字節,通過BlowFish解密, 得到decryptKey﹔

  b.decryptKey與后面8個字節XOR,對結果再進行一次BlowFish解密﹔

  c.將decryptKey與前8個字節XOR,得到第一組結果﹔

  d.decryptKey與后面8個字節XOR,重復b,c兩步﹔

  e.最終全部數據解密完畢。

  最后會剩下一組8字節無法解密,這個實際上是冗余數據,似乎是用來作為校驗。

  3.具體步驟

  以上解密時,BlowFish的密鑰是一個全局公用密鑰Key。Key要通過QQ號碼生成,具體步驟是:

  a.將QQ號碼進行MD5變換,得到Md5Key

  b.取Matrix.db的數據,對其進行解碼。簡單說一下Matrix.db文件的結構:

  Matrix.db採用分塊存儲,每個Record包含類型、名字長度、名字、內容長度、內容幾個字段組成。用數據結構表示就是:

  struct Record{

  char rType;

  short nLen;

  char Name[nLen];

  int rLen;

  char Content[rLen];

  };

  初始內容也是通過加密存儲的。解密方法很簡單:將長度的低位字節和高位字節XOR,得到key﹔將內容逐個與key進行XOR,就得到結果。對名字和內容分別進行解密即可。解密后會看到STL, TIP, CRK, CPH, CAH等字段,不清楚具體的啥含義,感興趣的同學可以自己去研究研究。我們要用到的是CRK字段,長度為32字節(如果本地聊天記錄加密,可能會有變化,沒試過)。將得到的CRK字段作為pData。

  c.用Md5Key對pData進行BlowFish解密,得到全局密鑰Key

  4.結論

  以上討論的都是本地聊天記錄沒有加密的情況。如果選擇了加密,沒有密碼是肯定解不出來滴,大伙就不用費心了。

(責編:宋陽)
更多關於 QQ 的新聞
· 可離線傳文件 QQ2007正式版試用體驗
· QQ聊天避開木馬病毒攻擊的小技巧
· QQ空間注冊人數過兩億 9月將推新版本
· 網購引起糾紛QQ聊天記錄成証據
· 騰訊QQ同時在線人數逾三千萬 已覆蓋九成網民
· 解決QQ聊天無法顯示自定義表情的問題
· 注意QQ登錄窗口 可能是木馬程序!
· QQ2007正式版試用 體驗計劃活動開始
· 讓証據更具說服力 QQ帳號申訴最強技巧
· 騰訊起訴珊瑚虫軟件侵權 蔡文勝遭網監處調查
相關專題
· QQ
新聞檢索:    
   熱圖推薦
組圖 白領最累城市排行組圖 白領最累城市排行
中國40歲下商界精英榜中國40歲下商界精英榜
組圖 全球舉世聞名的運河組圖 全球舉世聞名的運河
盤點世界類生存重要河流盤點世界類生存重要河流
武鋼發言人咆哮女記者武鋼發言人咆哮女記者
全球十大最“性感”的建筑全球十大最“性感”的建筑
全球小而精的航空公司全球小而精的航空公司
盤點全球17個世界之最高盤點全球17個世界之最高
世界上那些叫做“中國”的地方世界上那些叫做“中國”的地方
“三亞最大貧民窟被強拆”真相“三亞最大貧民窟被強拆”真相
   精彩新聞
·上海醫藥港股上市前夕遭舉報 A股股價下跌
·偷梁換柱隱瞞關聯交易 哈爾濱譽衡藥業被責令整改
·京通快速公交道24日啟用 八通線壓力將緩解(圖)
·上網電價提價潮蔓延至華東地區 安徽將率先上調
·中投靜待再注資 外儲激增凸顯主權財富基金必要性
·中國黃金轉讓富豪銀礦32.52%股權 價格為581.05萬
·中國中冶轉讓萬達廣場房產 轉讓價格面議
·聯通單方拆除小靈通基站 退市補償方案遲遲未出台
·稀土價格“朝報夕改” 下游行業或面臨洗牌
·廣東最低工資標准調整有望形成機制
   博客精選
·聯通資費大幅下降意在強奸iPhone用戶
·中國SNS社交游戲市場遭遇“恐美症”?
·積微成著,聯想集團何以短期制勝?
·傳統企業如何對待電子商務的風潮
·別對互聯網電視發展前景過於樂觀

羊年真的會慘嗎?羊年真的會慘嗎?
我們的福利受法律保護我們的福利受法律保護
·本本:4千元精品本本導購·本本:細數近期到貨的新款本
·相機:拍美女都用啥鏡頭?·相機:玩轉風光攝影11條法則
·液顯:超值21.5吋液晶搜羅·液顯:全高清大屏顯示器推薦
·硬件:淘寶鍵鼠假貨全曝光·硬件:暑期不推薦的十大硬件
當當網年底欲赴美上市當當網年底欲赴美上市
團購圖實惠 下單須謹慎團購圖實惠 下單須謹慎
·時尚三核靚本 東芝L600D今日熱銷中
·谷歌將美國內務部告上法庭 稱在競標時偏袒微軟
·蒙牛稱“特侖蘇”域名遭惡意搶注
·時光網關張半月 員工非正面回應“涉黃”問題
·百團大戰的熱鬧背后 團購網站“不能說的秘密”
·華碩天價索賠案:黃靜狀告律師泄密終審敗訴
[一語驚壇]收入差距尚且"諱言",分配不公如何"開刀"?
[論壇]美派三航母迎接胡總出訪?·六國要聯合對抗中國?
[訪談]黨國英談農村城鎮化·外交部李鬆談伊朗問題
[辯論]  花千億投資迪斯尼,值嗎?·你認同買不如租嗎?
[博客]溫總理:見一葉而知天下 女副市長咋被騙色騙財?
[博客]毛澤東為何成中國文化符號 男人居住北京11條理由
   無線·手機媒體
“G族看兩會 不是浮雲”“G族看兩會 不是浮雲”
“手機民意直寄總理”“手機民意直寄總理”
人民網