首页
社区
课程
招聘
[旧帖] 求助]QQ农场的 Main.swf中的 farmKey,farmTime算法 0.00雪花
发表于: 2009-6-18 22:12 6316

[旧帖] 求助]QQ农场的 Main.swf中的 farmKey,farmTime算法 0.00雪花

2009-6-18 22:12
6316
不知道有没有人研究过这个,以下是反编译的代码,

他的算法是是从一个图片中随机取点,然后弄成一个字符串,再取当前时间连接起来 MD5加密

不过自己实验了下,却不能自己生成 farmTime farmKey

有没有知道的.怎么自己去算 这二个值?

private function request(param1:String, param2:Object, param3:Function, param4:int = 60000, param5:Boolean = false, param6:String = "text") : void
        {
            var url:* = param1;
            var value:* = param2;
            var handlerFun:* = param3;
            var timeout:* = param4;
            var reload:* = param5;
            var dataFormat:* = param6;
            var _timeValue:* = MData.getInstance().mainData.serverTime;
            var farmKey:* = LocalData.root.getKey();
            var farmTime:* = String(_timeValue);
            if (value)
            {
                value["farmTime"] = farmTime;
                value["farmKey"] = farmKey;
            }
            else
            {
                value;
            }// end else if
            HTTPRequest.getInstance().postRequest(url, value, 
function (param1:Object) : void
{
    var _loc_2:* = decode(param1);
    if (_loc_2)
    {
        if (_loc_2.hasOwnProperty("errorType") && _loc_2["errorType"] == "session")
        {
            MData.getInstance().mainData.sessionTimeout = _loc_2["errorContent"];
        }// end if
        handlerFun(_loc_2);
    }
    else
    {
        trace("数据为空!");
    }// end else if
    return;
}// end function
, timeout, reload, dataFormat);
            return;
        }// end function

        public static function getInstance() : FRequest
        {
            if (instance == null)
            {
                instance = new FRequest;
            }// end if
            return instance;
        }// end function

    }



 public static function get encodeKey() : String
        {
            var _loc_1:Bitmap;
            var _loc_2:int;
            var _loc_3:int;
            var _loc_4:String;
            if (_encodeKey != "inu")
            {
                return _encodeKey;
            }// end if
            _loc_1 = new KEYJPG();
            _loc_2 = Math.random() * _loc_1.width + 1;
            _loc_3 = Math.random() * _loc_1.height + 1;
            _loc_4 = MD5.hash(_loc_1.bitmapData.getPixel32(_loc_2, _loc_3).toString(24));
            return _loc_4;
        }// end function 

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//