标签:
查阅了一下C#关于QQ GTK方面的资料、然而并没有找到什么相关性的代码
好吧,那只有自己写一份 不过GTK方面算法以前的时候Downloader过一下
虽然是E语言的、不过不打紧 一般GTK主要应用于登陆QQ空间 留言板 那一
块、不过在本代码中包含TXMD5加密部分 TXMD5搞登陆验证其实也还可以
// bkn, gtk, ldw public static string GetAntiCSRFToken(byte[] skey, int uType = 0 // 1-md5,0-int ) { int salt = 5381; string token = string.Empty; if (uType == 1) { string hash = (salt << 5).ToString(); string md5key = "tencentQQVIP123443safde&!%^%1282"; for (int i = 0; i < skey.Length; i++) { int asc = (sbyte)skey[i]; hash += ((salt << 5) + asc); salt = asc; } token = GetDataSummary(Encoding.Default.GetBytes(hash += md5key)); } else { for (int i = 0; i < skey.Length; i++) salt += (salt << 5) + (sbyte)skey[i]; token = (salt & 2147483647).ToString(); } return token; }
上面是GTK && MD5加密的部分、若 uType = 1
返回的是MD5加密文本、否则是GTK加密后的文本、
public static string GetDataSummary(byte[] buf) { string str = string.Empty; using (MD5 md5 = MD5.Create()) { buf = md5.ComputeHash(buf); for (int i = 0; i < buf.Length; i++) str += buf[i].ToString("x"); } return str; }
GetDataSummary 取数据摘要 可以理解为取MD5的文本啦、
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/u012395622/article/details/47274131