开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 1753|回复: 7
收起左侧

[讨论] 求帮,js函数没头绪

[复制链接]
结帖率:25% (1/4)
发表于 2012-6-22 01:47:25 | 显示全部楼层 |阅读模式   广东省深圳市

又是一个qq的网站的问题。http://act.cb.qq.com/201205/yijifen/index.html
这是在提交数据时出现的一个tk值,虽说我在js中找到了这个函数,但现在真的没头绪
因为下面的一些值,搞不懂是什么意思,翻译出来的也是乱七八糟的,

js和源码都找了也没发现有类似的,求高手给点头绪,
给讲一下这几个值该在哪找,是什么意思
感激不尽啊!!!!

function _getAntiCSRFToken(objConfig){objConfig=objConfig||{};
    var salt=objConfig.salt||CONST_SALT;
    var skey=objConfig.skey||QZFL.cookie.get("skey");
    var md5key=objConfig.md5key||CONST_MD5_KEY;
    var hash=[],ASCIICode;
    hash.push((salt<<5));
    for(var i=0,len=skey.length;
    i<len;++i){ASCIICode=skey.charAt(i).charCodeAt();
    hash.push((salt<<5)+ASCIICode);salt=ASCIICode;}
    var md5str=_md5(hash.join('')+md5key);
    return md5str;};

求助知识:请将问题描述清楚,最好把你有问题的源码打包上传上来,这样更方便大家帮助你。
友情提醒:本版被采纳的主题可在 申请荣誉值 帖子申请荣誉值,获得 3点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。

结帖率:100% (4/4)

签到天数: 26 天

发表于 2012-6-22 11:56:33 | 显示全部楼层   湖南省益阳市
看着好复杂啊, 真的不懂。
回复 支持 反对

使用道具 举报

结帖率:60% (3/5)

签到天数: 2 天

发表于 2012-6-22 16:05:21 | 显示全部楼层   上海市上海市
skey的值是网页的cookie里,类似QQ空间里的skey
回复 支持 反对

使用道具 举报

结帖率:57% (8/14)
发表于 2012-6-27 17:46:06 | 显示全部楼层   贵州省遵义市
-->计算结果:1a229feea4d4f5e9f5649537234c148b
回复 支持 反对

使用道具 举报

结帖率:25% (1/4)

签到天数: 20 天

 楼主| 发表于 2012-6-29 09:06:25 | 显示全部楼层   广东省深圳市
咖啡糖 发表于 2012-6-27 17:46
-->计算结果:1a229feea4d4f5e9f5649537234c148b

求教育~~~!!!!
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)
发表于 2012-6-29 15:04:37 | 显示全部楼层   湖南省益阳市
转换成 易语言就行!其实了解他的运行加密过程就简单了!
回复 支持 反对

使用道具 举报

结帖率:11% (3/27)

签到天数: 1 天

发表于 2012-8-15 20:09:32 | 显示全部楼层   河南省新乡市
枫影第十课看下就明白了QQ的吧
回复 支持 反对

使用道具 举报

结帖率:14% (1/7)
发表于 2012-8-17 13:45:37 | 显示全部楼层   北京市北京市
function _getAntiCSRFToken(objConfig){
    objConfig=objConfig||{};//如果有objConfig就使用objConfig.如果没有就创建一个空对像.
    var salt=objConfig.salt||CONST_SALT;//如果objConfig中定义了salt就使用它.如果没有就使用全局属性CONST_SALT.
    var skey=objConfig.skey||QZFL.cookie.get("skey");//获取skey在objConfig中或者cookies中.objConfig优先.
    var md5key=objConfig.md5key||CONST_MD5_KEY;//获取md5key在objConfig中或者cookies中.objConfig优先.
    var hash=[],ASCIICode;//定义数组hash
    hash.push((salt<<5));//按位左移 <<
    for(var i=0,len=skey.length;i<len;++i){
        ASCIICode=skey.charAt(i).charCodeAt();//skey按位取asciII码.
        hash.push((salt<<5)+ASCIICode);//按位左移5加上ASCIICode的值.(也就是易中的char("a")=97)
        salt=ASCIICode;//ASCIICode赋值给salt
    }
    var md5str=_md5(hash.join('')+md5key);//合并数组到字符串.
    return md5str;//返回值.
};
1变量初始化.分别对objConfig,salt,skey,md5key
2.位移salt
3.把skey按位与salt<<5相加
4.把结果结合成字符串返回

==============================================

按位左移运算符 (<<)
左移表达式的位。
result = expression1 << expression2
参数
result
任何变量。
expression1
任何表达式。
expression2
任何表达式。
说明
<< 运算符把 expression1 的所有位向左移 expression2 指定的位数。例如:
var temp
temp = 14 << 2
变量 temp 的值为 56,因为 14 (即二进制的 00001110)向左移两位等于 56 (即二进制的 00111000)。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表