PHP实现的QQ空间g_tk加密算法


Posted in PHP onJuly 09, 2015

本文实例讲述了PHP实现的QQ空间g_tk加密算法。分享给大家供大家参考。具体如下:

//G_tk计算
function getGTK($skey){
  $hash = 5381;
  for($i=0;$i<strlen($skey);++$i){
   $hash += ($hash << 5) + utf8_unicode($skey[$i]);
  }
  return $hash & 0x7fffffff;
}
function utf8_unicode($c) {
  switch(strlen($c)) {
    case 1:
    return ord($c);
    case 2:
    $n = (ord($c[0]) & 0x3f) << 6;
    $n += ord($c[1]) & 0x3f;
    return $n;
    case 3:
    $n = (ord($c[0]) & 0x1f) << 12;
    $n += (ord($c[1]) & 0x3f) << 6;
    $n += ord($c[2]) & 0x3f;
    return $n;
    case 4:
    $n = (ord($c[0]) & 0x0f) << 18;
    $n += (ord($c[1]) & 0x3f) << 12;
    $n += (ord($c[2]) & 0x3f) << 6;
    $n += ord($c[3]) & 0x3f;
    return $n;
  }
}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
一个PHP操作Access类(PHP+ODBC+Access)
Jan 02 PHP
超级简单的php+mysql留言本源码
Nov 11 PHP
批量获取memcache值并按key的顺序返回的实现代码
Jun 14 PHP
DISCUZ在win2003环境下 Unable to access ./include/common.inc.php in... 的问题终极解决方案
Nov 21 PHP
PHP5.4中json_encode中文转码的变化小结
Jan 30 PHP
php通过记录IP来防止表单重复提交方法分析
Dec 16 PHP
php程序内部post数据的方法
Mar 31 PHP
composer.lock文件的作用
Feb 03 PHP
浅谈PHP中的错误处理和异常处理
Feb 04 PHP
php 从指定数字中获取随机组合的简单方法(推荐)
Apr 05 PHP
PHP那些琐碎的知识点(整理)
May 20 PHP
PHP unset函数原理及使用方法解析
Aug 14 PHP
PHP自毁程序(慎用)
Jul 09 #PHP
PHP模板解析类实例
Jul 09 #PHP
PHP多文件上传实例
Jul 09 #PHP
php判断linux下程序问题实例
Jul 09 #PHP
php实现html标签闭合检测与修复方法
Jul 09 #PHP
php可扩展的验证类实例(可对邮件、手机号、URL等验证)
Jul 09 #PHP
php类常量用法实例分析
Jul 09 #PHP
You might like
zend optimizer在wamp的基础上安装图文教程
2013/10/26 PHP
WordPress迁移时一些常见问题的解决方法整理
2015/11/24 PHP
PHP MYSQL实现登陆和模糊查询两大功能
2016/02/05 PHP
php无法连接mysql数据库的正确解决方法
2016/07/01 PHP
PHP设计模式之模板模式定义与用法详解
2018/12/20 PHP
ThinkPHP5分页paginate代码实例解析
2020/11/10 PHP
jQuery中文入门指南,翻译加实例,jQuery的起点教程
2007/02/09 Javascript
用jscript启动sqlserver
2007/06/21 Javascript
一个JavaScript操作元素定位元素的实例
2014/10/29 Javascript
javascript+css3 实现动态按钮菜单特效
2016/02/06 Javascript
js计算时间差代码【包括计算,天,时,分,秒】
2016/04/26 Javascript
Node.js+jade抓取博客所有文章生成静态html文件的实例
2017/09/19 Javascript
vue2中使用less简易教程
2018/03/27 Javascript
jQuery each和js forEach用法比较
2019/02/27 jQuery
在vue中根据光标的显示与消失实现下拉列表
2019/09/29 Javascript
Nautil 中使用双向数据绑定的实现
2019/10/02 Javascript
Vue中rem与postcss-pxtorem的应用详解
2019/11/20 Javascript
Javascript 模拟mvc实现点餐程序案例详解
2020/12/24 Javascript
Python sys.path详细介绍
2013/10/17 Python
Python简单连接MongoDB数据库的方法
2016/03/15 Python
详谈Python高阶函数与函数装饰器(推荐)
2017/09/30 Python
python机器学习之贝叶斯分类
2018/03/26 Python
Windows 8.1 64bit下搭建 Scrapy 0.22 环境
2018/11/18 Python
Python Print实现在输出中插入变量的例子
2019/12/25 Python
pytorch中tensor张量数据类型的转化方式
2019/12/31 Python
Python基于pandas爬取网页表格数据
2020/05/11 Python
如何写python的配置文件
2020/06/07 Python
matplotlib之pyplot模块坐标轴标签设置使用(xlabel()、ylabel())
2021/02/22 Python
css3的transform造成z-index无效解决方案
2014/12/04 HTML / CSS
2014年乡镇植树节活动方案
2014/02/28 职场文书
党员学习党的群众路线思想汇报(5篇)
2014/09/10 职场文书
2014年人事专员工作总结
2014/11/19 职场文书
职工的安全责任书范文!
2019/07/02 职场文书
Python实现打乒乓小游戏
2021/09/25 Python
python编程简单几行代码实现视频转换Gif示例
2021/10/05 Python
zabbix配置nginx监控的实现
2022/05/25 Servers