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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

g_tk算法详解

發布時間:2024/5/15 编程问答 56 豆豆
生活随笔 收集整理的這篇文章主要介紹了 g_tk算法详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

g_tk是騰訊在QQ空間這一領域使用的密文(其他的地方我沒遇到g_tk),有寫數據包或者url參數中需要加入你計算出的g_tk才能成功!但是也有例外,也有些地方不需要g_tk也一樣成功,為了程序的嚴謹,建議大家要計算g_tk的值。

g_tk是根據從cookie中獲取skey的值加密得到的。
其實g_tk是這樣獲取的:g_tk=getGTK(skey)
所以想計算g_tk必須先獲取skey,并且有g_tk算法getGTK函數。
微軟給我們提供了獲取cookie的API函數,我們直接調用就很方便的獲取cookie

rivate Declare Function InternetGetCookie Lib "wininet.dll" Alias "InternetGetCookieA" (ByVal lpszUrlName As String, ByVal lpszCookieName As String, ByVal lpszCookieData As String, lpdwSize As Long) As Boolean Dim nLen As Long Dim sbuff As String * 1024 nLen = 1024 '獲取cookies InternetGetCookie "http://ptlogin2.qq.com/login", vbNullString, sbuff, nLen '此時sbuff變量里面就是http://ptlogin2.qq.com/login對應的cookie Dim skey As String Dim sPos As Long sPos = InStr(sbuff, "skey=@") If sPos <> 0 Then skey = Mid(sbuff, sPos + 5, 10)


'這樣就從cookie中將skey的值提取出來了

以前在js文件中找到了g_tk算法函數,如下:

function getGTK(str){ var hash = 5381; for(var i = 0, len = str.length; i < len; ++i){ hash += (hash << 5) + str.charAt(i).charCodeAt(); } return hash ; }


后來我用VB中的可以執行腳本語言的ScriptControl控件執行它,獲得g_tk的值:

?

ScriptControl1.Language = "Jscript"ScriptControl1.Timeout = -1 ScriptControl1.AddCode txtVarHexcase.Text Dim js(7) As String js(0) = "function getGTK(str){" & vbCrLf js(1) = "var hash = 5381;" & vbCrLf js(2) = "for(var i = 0, len = str.length; i < len; ++i){" & vbCrLf js(3) = " hash += (hash << 5) + str.charAt(i).charCodeAt();" & vbCrLf js(4) = "}" & vbCrLf js(5) = " return hash ;" & vbCrLf js(6) = "}" ScriptControl1.AddCode js(0) & js(1) & js(2) & js(3) & js(4) & js(5) & js(6) dim g_tk as string g_tk = ScriptControl1.Run("getGTK", "123")'調用getGTK函數,參數為123,返回g_tk值是193432059


不懂javascript的朋友可能看不懂騰訊的代碼,當我寫完這個函數,大家就明白具體怎么回事了,很好理解。
大家要支持易我論壇啊,我以后在慢慢細談我的經驗,我掛科了,有點小郁悶,哎,但是一點也不影響我研究。

總結

以上是生活随笔為你收集整理的g_tk算法详解的全部內容,希望文章能夠幫你解決所遇到的問題。

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