C# QQ GTK && MD5

查阅了一下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的文本啦、

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-13 11:29:13

C# QQ GTK && MD5的相关文章

QQ gtk,bkn算法

public long GetGTK(string sKey) { int hash = 5381; for (int i = 0, len = sKey.Length; i < len; ++i) { hash += (hash << 5) + (int)sKey[i]; } return (hash & 0x7fffffff); } long GetBkn(string skey) { var hash = 5381; for (int i = 0, len = skey.L

MySQL 千万 级数据量根据(索引)优化 查询 速度

一.索引的作用 索引通俗来讲就相当于书的目录,当我们根据条件查询的时候,没有索引,便需要全表扫描,数据量少还可以,一旦数据量超过百万甚至千万,一条查询sql执行往往需要几十秒甚至更多,5秒以上就已经让人难以忍受了. 提升查询速度的方向一是提升硬件(内存.cpu.硬盘),二是在软件上优化(加索引.优化sql:优化sql不在本文阐述范围之内). 能在软件上解决的,就不在硬件上解决,毕竟硬件提升代码昂贵,性价比太低.代价小且行之有效的解决方法就是合理的加索引. 索引使用得当,能使查询速度提升上万倍,效

因为我不知道凌雪和

http://v.qq.com/page/3/x/v/n0414wav4bo.htmlhttp://v.qq.com/page/3/x/v/l0414gzcitc.htmlhttp://v.qq.com/page/3/x/v/q0414eqqfme.htmlhttp://v.qq.com/page/3/x/v/i0414y7kadc.htmlhttp://v.qq.com/page/3/x/v/f0414pqrc3i.htmlhttp://v.qq.com/page/3/x/v/h0414vtg

C#调用JS方法、以QQ登录密码的md5为例

C# 调用代码 ScriptControlClass js = new ScriptControlClass(); js.Language = "JScript"; js.AddCode(textBox2.Text);//JS代码 string result = null; result = js.Eval(textBox1.Text).ToString(); //调用函数 MessageBox.Show(result); MD5 JS代码 function md5js(pass, c

QQ空间自动化代码

via 脚本自动更新(2014-11-08 22:51:31) 自动登录 define('ROOT_PATH',__DIR__); include_once(ROOT_PATH.'/lib/Http.class.php'); $config=array( 'username'=>'*******', 'password'=>'*******' ); $cookie=array(); //获取login_sig $url="http://ui.ptlogin2.qq.com/cgi-b

【转】可在广域网部署运行的QQ高仿版 -- GG叽叽V3.4,增加系统设置、最近联系人、群功能(源码)

自从上次版本(GG叽叽V3.2,增加离线消息.离线文件功能)发布后,我个人觉得主要的大功能都实现得差不多了,接下来的几个版本将不断优化GG的细节,提高其可用性.这次版本更新的内容主要是为GG增加了系统设置.并完善的了群所需的基础功能. 一.GG V3.4 新增功能展现 1.群功能完善 (1)创建群 (2)退出群(同时,通知其它群成员) 2.系统设置 (1)叉掉主窗口时,关闭程序还是隐藏窗口. (2)麦克风设备索引 (3)摄像头设备索引 (4)开机自动启动 3.其它 (1)最近联系人列表. (2)

ASP.NET 网站如何集成QQ登录功能

参考了<asp.net 集成QQ2.0 登陆代码示例>和<登陆整合实现-QQ互联认证(ASP.NET版本)>. using System; using System.Net; using System.Text; using System.IO; using System.Collections.Specialized; using System.Data; using System.Configuration; using Newtonsoft.Json.Linq; using

QQ登录类

2015-3-31 22:02:09 1. 首先是库文件, 登录->授权->token->openid->获取用户信息 1 class QQ 2 { 3 public $appid = ''; 4 public $appkey = ''; 5 public $scope = 'get_user_info'; //权限用逗号隔开 6 public $callback = ''; 7 8 public $get_auth_code_url = 'https://graph.qq.com

PylinuxQQ 实现linux平台使用qq

pylinuxqq是博主在linux平台下面使用webqq或者其他第三方插件,或者wine模拟,都或多或少的有一些缺陷.而且一直想锻炼一下,自己写一个linux平台下面的QQ.pylinuxqq基于python,目前博主还算小菜,正在开发当中.下面就记录下开发中遇到的一些问题: 项目地址:https://github.com/younfor/PyLinuxQQ 有兴趣的可以fork一份来一起开发 如何连接QQ 结合网上的方法,发现webqq最新版smartqq是相对比较容易的一种方法.通过pyt