WEBQQ HTTP協議分析

WEBQQ協議css

WEBQQ基本流程html

  • 登陸檢測
  • 發送登陸信息
  • 登陸跳轉
  • 正式上線
  • 消息長輪詢

默認狀況下每一步HTTP操做都是須要帶上Cookie的,下面就再也不重複提醒了。web

登陸檢測

登陸檢測檢測的是你當前賬號是否是須要驗證碼,若是不須要的話就給你提供一個默認的驗證碼。由於在登陸的時候是必須輸入驗證碼的。服務器

請求格式:函數

GET http`s://ssl.ptlogin2.qq.com/check?uin=QQ號碼

響應內容:ui

ptui_checkVC('0','!AAA',`'\x00\x00\x00\x00\x00\x00\x00\x00');

返回的內容是一個函數調用,參數說明以下:加密

  • 參數 1:「0」 表示不須要驗證碼,但須要使用隨後的缺省驗證碼來登陸。「1」 表示須要驗證碼。
  • 參數 2:若是以 「!」 開頭則是傳遞給服務器的缺省驗證碼。
  • 參數 3:QQ號碼的十六進制格式。

發送登陸信息

密碼加密,具體公式以下:code

MD5_STR( MD5_STR( MD5_BIN(PassWord) + UIN ), VERIFY )
  • MD5_STR 計算MD5值,並以十六進制字符組合的形式返回結果。
  • MD5_BIN 計算MD5值,並以二進制組合的形式返回結果。
  • UIN 保存在字符串中的8位數值QQ號碼。
  • VERIFY 驗證碼。

除了二進制外,其餘計算參數都須要大寫!這一步很是重要,尤爲是輸入的驗證碼!htm

QQ號碼能夠是普通QQ號也能夠是其餘主顯號,好比郵箱賬號,手機號碼等。
驗證碼填入4位驗證碼。沒要求你輸入,則是使用上一步操做返回的第二個參數。(注意都必須大寫!)ssl

請求格式:

GET https://ssl.ptlogin2.qq.com/login?u=QQ號碼&p=加密密碼&verifycode=驗證碼&webqq_type=10&remember_uin=1&login2qq=1&aid=1003903&u1=http%3A%2F%2Fweb2.qq.com%2Floginproxy.html%3Flogin2qq%3D1%26webqq_type%3D10&h=1&ptredirect=0&ptlang=2052&daid=164&from_ui=1&pttype=1&dumy=&fp=loginerroralert&action=2-35-18660&mibao_css=m_webqq&t=1&g=1&js_ver=10060&js_type=0

響應內容:

ptuiCB('0','0','跳轉URL','0','登陸成功!', 'uo');

返回的內容依舊是個函數調用,參數說明:

  • 參數 1:錯誤碼,0沒有錯誤。
  • 參數 2:暫未知。
  • 參數 3:跳轉URL,只有訪問過跳轉URL纔算真正登陸完畢。
  • 參數 4:未知。
  • 參數 5:描述信息。
  • 參數 6:未知。

通常狀況下斷定 參數1 爲0,跳轉URL 不爲空就說明這步操做正確。

登陸跳轉

接上一步,若是返回錯誤碼爲0,跳轉URL有效。直接以GET方式請求URL便可。
至此,你已經完成了賬號認證的所有操做!其實上面這幾步只是在TX公共認證平臺上進行了認證。尚未涉及到WEBQQ相關的東西。

文章來源:http://yueqiumao.com/p/7.html

相關文章
相關標籤/搜索