Skip to content
This repository has been archived by the owner on Mar 20, 2024. It is now read-only.

通过代理报403错误,官网可以正常使用 #161

Closed
RogerPu opened this issue Jun 10, 2023 · 45 comments
Closed

通过代理报403错误,官网可以正常使用 #161

RogerPu opened this issue Jun 10, 2023 · 45 comments

Comments

@RogerPu
Copy link

RogerPu commented Jun 10, 2023

image
@znssattpc830
Copy link

我今天用GPT3.5是正常的,用GPT4会出现403

@linweiyuan
Copy link
Owner

docker inspect linweiyuan/go-chatgpt-api | grep Id,如果不是输出 sha256:05acd16484fe3e8d5c55a1a361516e732d17d5f822da1d3ab47944b958ccaad5 则不行

如果确实是这个 Id,但是还是 403:https://github.com/linweiyuan/go-chatgpt-api/blob/main/api/chatgpt/health_check.go#L19

GPT-4 没用过

@RogerPu
Copy link
Author

RogerPu commented Jun 11, 2023

我基本上也是gpt4报错比较多 3.5还好

@linweiyuan linweiyuan closed this as not planned Won't fix, can't repro, duplicate, stale Jun 12, 2023
@elcieloboy
Copy link

我今天用GPT3.5是正常的,用GPT4会出现403

那么你怎么解决的,换别的代理了吗

@RogerPu
Copy link
Author

RogerPu commented Jun 13, 2023

我今天用GPT3.5是正常的,用GPT4会出现403

那么你怎么解决的,换别的代理了吗

换潘多拉的公共代理了,闭源的,没办法

@linweiyuan
Copy link
Owner

既然这样,何不将 token 直接发我来 debug

@RogerPu
Copy link
Author

RogerPu commented Jun 13, 2023

既然这样,何不将 token 直接发我来 debug

你有群没,咋联系

@linweiyuan
Copy link
Owner

没群

邮箱 root@linweiyuan.com

文档有微信

晚上才能测

@yiios
Copy link

yiios commented Jun 13, 2023

我也碰到了同样的问题,3.5正常,使用4会报错403

go-chatgpt-api | [GIN] 2023/06/13 - 11:37:04 | 200 | 123.056863ms | 206...200 | GET "/chatgpt/conversation/d7552ef3-fd57-4626-b96c-ac7e7f00000e"
go-chatgpt-api | [GIN] 2023/06/13 - 11:37:10 | 403 | 375.229161ms | 206...200 | POST "/chatgpt/conversation"

@linweiyuan
Copy link
Owner

能官网 F12 把参数发一下吗

因为我没 GPT-4 帐号,就算想修复也无能为力

@yiios
Copy link

yiios commented Jun 13, 2023

能官网 F12 把参数发一下吗

因为我没 GPT-4 帐号,就算想修复也无能为力

我找个账号,把token发你邮箱。已发,请查收

@linweiyuan linweiyuan reopened this Jun 13, 2023
@linweiyuan
Copy link
Owner

{
  "detail": "Our systems have detected unusual activity from your system. Please try again later."
}

当你们说 3.5 的时候,是用 text-davinci-002-render-sha

@linweiyuan
Copy link
Owner

感觉可以用 gpt-4-mobile? 我用提供的 GPT-4 token 返回是这个结果

2023-06-13_21-37

用自己的 token 则返回
2023-06-13_21-39

linweiyuan added a commit that referenced this issue Jun 14, 2023
@linweiyuan
Copy link
Owner

感谢 @yiios 提供的账号,测试了下 GPT-4,简单修复了下 403,但是测试出来有一个问题,就是测试生成的对话,在第三方客户端访问正常,但是官网访问必卡死,两条测试出来的都会,还没来得及仔细对比数据,也不知为何,风险自负(问过其他人,他们正常)

2023-06-15.00-39-48.mp4

@cnKyan
Copy link
Contributor

cnKyan commented Jun 15, 2023

我在看到issue的时候也把model换成了gpt4mobile,与 @linweiyuan 遇到了同样的问题,官网打开那个conversation就会卡死,其他的chat都没问题,new chat也没问题,所以你这个不是个例

@cnKyan
Copy link
Contributor

cnKyan commented Jun 15, 2023

image
image
image
更新了最新提交的镜像,看起来问题依旧

@linweiyuan
Copy link
Owner

参数是 gpt-4?大小写敏感

有条件可以下代码打断点看是否拿到 token

https://github.com/linweiyuan/go-chatgpt-api/blob/main/api/chatgpt/api.go#L45-L61

@cnKyan
Copy link
Contributor

cnKyan commented Jun 16, 2023

下断点开起来是拿到了token的,这是 "model": "gpt-4",情况下
image
image

@linweiyuan
Copy link
Owner

linweiyuan commented Jun 16, 2023

很明显图片是 gpt-4-mobile

如果改为 gpt-4,并且设置正确的 access token 会怎样

@cnKyan
Copy link
Contributor

cnKyan commented Jun 16, 2023

很抱歉,我设置错了http client的env,现在它正常回复了,但是仍然有上chat.openai.com打不开测试生成的chat,会卡死

@linweiyuan
Copy link
Owner

这个还没空看,但是都用第三方 api 了,好像官网打不开也不是什么大事?因为第三方客户端正常显示

@linweiyuan
Copy link
Owner

image
image
image
更新了最新提交的镜像,看起来问题依旧

env 或者 token 设置错是 401,但是这个 403 是怎么回事?

@cnKyan
Copy link
Contributor

cnKyan commented Jun 16, 2023

image
image
image
更新了最新提交的镜像,看起来问题依旧

env 或者 token 设置错是 401,但是这个 403 是怎么回事?

403的时候报的是这个
{
"detail": "Our systems have detected unusual activity from your system. Please try again later."
}

@linweiyuan
Copy link
Owner

linweiyuan commented Jun 16, 2023

之前不设置 arkose_token 就是这个错,但是那天更新完镜像,依然 403,然到了今天就 200了?有点诡异

@cnKyan
Copy link
Contributor

cnKyan commented Jun 16, 2023

之前不设置 arkose_token 就是这这个错,但是那天更新完镜像,依然 403,然到了今天就 200了?有点诡异

感觉是在灰度测试什么东西。然后有某些异常行为审计了估计,我这次换了一个plus的号....

@linweiyuan
Copy link
Owner

那就说得通了,gpt-4 要 plus 账号才能用

@cnKyan
Copy link
Contributor

cnKyan commented Jun 16, 2023

那就说得通了,gpt-4 要 plus 账号才能用

那倒也不是,我从旧的plus号换了新的号....,我肯定知道plus才能用gpt4

@linweiyuan
Copy link
Owner

那我就不懂了

@opvexe
Copy link

opvexe commented Jun 16, 2023

我发现就算使用最新版的镜像 使用gpt-4也会出现 :Our systems have detected unusual activity from your system. Please try again later.

使用 gpt-4-mobile:返回的 不是gpt4模型。返回消息如下 :我是GPT-3,OpenAI训练的一种语言生成模型。我的知识库截止于2021年9月

实际上我登录网页查看是gpt-4 plus账号

@linweiyuan
Copy link
Owner

按照上面说的方式 debug 一下

@acheong08
Copy link
Contributor

data["arkose_token"] = f"{generate_random_hex()}|r=ap-southeast-1|meta=3|meta_width=300|metabgclr=transparent|metaiconclr=%23555555|guitextcolor=%23000000|pk=35536E1E-65B4-4D96-9D97-6ADB7EFF8147|at=40|sup=1|rid={random_int(1,99)}|ag=101|cdn_url=https%3A%2F%2Ftcr9i.chat.openai.com%2Fcdn%2Ffc|lurl=https%3A%2F%2Faudio-ap-southeast-1.arkoselabs.com|surl=https%3A%2F%2Ftcr9i.chat.openai.com|smurl=https%3A%2F%2Ftcr9i.chat.openai.com%2Fcdn%2Ffc%2Fassets%2Fstyle-manager"

@acheong08
Copy link
Contributor

Don't need to fetch a new one every time.

@opvexe
Copy link

opvexe commented Jun 17, 2023

按照上面说的方式 debug 一下

=====>>>>> 534176955b37066f2.6718281501|r=us-east-1|meta=3|meta_width=300|metabgclr=transparent|metaiconclr=%23555555|guitextcolor=%23000000|pk=35536E1E-65B4-4D96-9D97-6ADB7EFF8147|at=40|rid=5|ag=101|cdn_url=https%3A%2F%2Ftcr9i.chat.openai.com%2Fcdn%2Ffc|lurl=https%3A%2F%2Faudio-us-east-1.arkoselabs.com|surl=https%3A%2F%2Ftcr9i.chat.openai.com|smurl=https%3A%2F%2Ftcr9i.chat.openai.com%2Fcdn%2Ffc%2Fassets%2Fstyle-manager

image

还是会出现:

{
"detail": "Our systems have detected unusual activity from your system. Please try again later."
}

@opvexe
Copy link

opvexe commented Jun 17, 2023

image

自己进入网页看了下,参数没啥区别啊 。

@linweiyuan
Copy link
Owner

思路是这样的,具体为啥还是 403,目前不清楚,也不知怎么修复

@linweiyuan
Copy link
Owner

我在看到issue的时候也把model换成了gpt4mobile,与 @linweiyuan 遇到了同样的问题,官网打开那个conversation就会卡死,其他的chat都没问题,new chat也没问题,所以你这个不是个例

据观察,貌似没有生成标题的就会卡死

@boygoboy
Copy link

data["arkose_token"] = f"{generate_random_hex()}|r=ap-southeast-1|meta=3|meta_width=300|metabgclr=transparent|metaiconclr=%23555555|guitextcolor=%23000000|pk=35536E1E-65B4-4D96-9D97-6ADB7EFF8147|at=40|sup=1|rid={random_int(1,99)}|ag=101|cdn_url=https%3A%2F%2Ftcr9i.chat.openai.com%2Fcdn%2Ffc|lurl=https%3A%2F%2Faudio-ap-southeast-1.arkoselabs.com|surl=https%3A%2F%2Ftcr9i.chat.openai.com|smurl=https%3A%2F%2Ftcr9i.chat.openai.com%2Fcdn%2Ffc%2Fassets%2Fstyle-manager"
data["arkose_token"] = f"{generate_random_hex()}|r=ap-southeast-1|meta=3|meta_width=300|metabgclr=transparent|metaiconclr=%23555555|guitextcolor=%23000000|pk=35536E1E-65B4-4D96-9D97-6ADB7EFF8147|at=40|sup=1|rid={random_int(1,99)}|ag=101|cdn_url=https%3A%2F%2Ftcr9i.chat.openai.com%2Fcdn%2Ffc|lurl=https%3A%2F%2Faudio-ap-southeast-1.arkoselabs.com|surl=https%3A%2F%2Ftcr9i.chat.openai.com|smurl=https%3A%2F%2Ftcr9i.chat.openai.com%2Fcdn%2Ffc%2Fassets%2Fstyle-manager"
data["arkose_token"] = f"{generate_random_hex()}|r=ap-southeast-1|meta=3|meta_width=300|metabgclr=transparent|metaiconclr=%23555555|guitextcolor=%23000000|pk=35536E1E-65B4-4D96-9D97-6ADB7EFF8147|at=40|sup=1|rid={random_int(1,99)}|ag=101|cdn_url=https%3A%2F%2Ftcr9i.chat.openai.com%2Fcdn%2Ffc|lurl=https%3A%2F%2Faudio-ap-southeast-1.arkoselabs.com|surl=https%3A%2F%2Ftcr9i.chat.openai.com|smurl=https%3A%2F%2Ftcr9i.chat.openai.com%2Fcdn%2Ffc%2Fassets%2Fstyle-manager"

I used your solution in the nodejs environment and it didn't work. Is there something wrong with the way I use it?
Now the gpt4 model seems to need the correct arkose_token, otherwise it will return {"error":{"message":"Only one message at a time. Please allow any other responses to complete before sending another message, or wait one minute.", "statusCode":429,"statusText":""}}. I traced the network request and found that this arkose_token needs to be obtained by sending a network request. The parameter bda passed by the request interface for obtaining arkose_token information is encrypted (mainly to encrypt some fingerprint information and timestamp of the browser).
image
image
image

@boygoboy
Copy link

自己整理了下bda这个参数加密流程尝试了下,发现破解难度挺大的,关键js文件单独运行不起来做了无线死循环卡死控制台。能力有限破解了一些简单记录了下看看大佬们能不能搞出来

  1. bda的加密
    aFdK(f_a_ir.n) =》aF'encode'
    aF[dK(f_a_ir.n)]方法和by参数待破解

  2. by参数破解
    by = ALFCCJS[dK(f_a_ir.l)](bx, bv + bw);=》by = ALFCCJS["encrypt"](bx, bv + bw);
    ALFCCJS["encrypt"] 和bx bv bw 变量待破解

  3. bv 固定
    bv="Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36"

  4. bw破解
    bw=Math[dK(f_a_ir.k)](bt - bt % bu)=>Math["round"](bt - bt % 21600)
    var bt = new Date()'getTime' / 1000

  5. bx破解
    bx = stringifyWithFloat(b5, bg)
    stringifyWithFloat方法和b5变量待破解
    bg 固定值
    bg={
    "navigator_connection_downlink": "float",
    "navigator_connection_downlink_max": "float"
    }


开始破解
b5破解:该变量存储了浏览器环境信息,下面的变量需要破解,其他暂时写死看看
{
"key": "n",
"value": "MTY4Njk4OTkzMA=="
},

value=aF['encode'](Math[dH(f_a_iI.Q)](DatedH(f_a_iI.R) / 0x3e8)dH(f_a_iI.S))=>
value=aF['encode'](Math['round'](Date'now' / 1000)"toString")
//加密b5中n的值,调用方式window.get_b5_n(Math['round'](Date'now' / 1000)"toString") 为时间戳转化后的值

/////
var bt = new Date()['getTime']() / 1000;
var bu=21600;
var bv="Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36";
var bw = Math['round'](bt - bt % bu)
var bg={
    "navigator_connection_downlink": "float",
    "navigator_connection_downlink_max": "float"
};
function afEncode(aZ,b0){
        var ds = bU;
        b0 = false;
        var b1, b2, b3, b4, b5, b6, b7, b8, b9 = [], ba = '', bb, bc, bd, be = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
        bc =  aZ,
        bb = bc["length"] % 3;
        if (bb > 0)
            while (bb++ < 3) {
                ba += '=',
                bc += " ";
            }
        for (bb = 0; bb < bc["length"]; bb += 3) {
            b1 = bc["charCodeAt"](bb),
            b2 = bc["charCodeAt"](bb + 1),
            b3 = bc["charCodeAt"](bb + 2),
            b4 = b1 << 16 | b2 << 8 | b3,
            b5 = b4 >> 18 & 63,
            b6 = b4 >> 12 & 63,
            b7 = b4 >> 6 & 63,
            b8 = b4 & 63,
            b9[bb / 3] = be['charAt'](b5) + be["charAt"](b6) + be["charAt"](b7) + be["charAt"](b8);
        }
        return bd = b9["join"](''),
        bd = bd["slice"](0, bd["length"] - ba["length"]) + ba,
        bd;
}

function bU(a, b) {
    var c = f_a_c();
    return bU = function(d, e) {
        d = d - 295;
        var f = c[d];
        return f;
    }
    ,
    bU(a, b);
}

function f_a_c() {
    var lw = ['Function', 'sed_line_w', 'RpDUolIGw5', 'font', 'rOrigins', 'zgwZ0QsSBc', 'ockAlgorit', 'nsions', 'MpC8C7kXWD', 'YhyASyNDJ0', 'getAsyncFP', 'Base64', 'BmkxVIVHBW', 'touch_biom', '4\x202.261-0.', 'oscpu', 'MAX_TEXTUR', 'ntext', 'QuickTime.', 'antialias', 'l7obvEe0kR', 'destinatio', 'gfct', 'Segoe\x20Prin', 'textBaseli', 'rage', 'MAWVWAGYsA', 'clone', 'ocationHre', 'querySelec', 'object', 'getWindowP', 'on=\x221.1\x22\x20x', 'firefox', 'test', 'rCInCKqcWt', 'DEPTH_TEST', 'cloneNode', 'Client-Sec', '*=funcaptc', 'Courier', 'ding:', '_webgl', 'dwriting', 'FWKdMLGdYG', 'the\x20correc', '+QQJCgAAAC', '957v-0.174', 'tReferrer', 'update', 'gwWhShRgQE', 'MAX_FRAGME', 'response', 'ect', 'iframe_hei', 'code', 'E_SIZE', 'orage', 'yASyNDJ0uI', 'tbio', '6hDISWlZpO', 'body', 'H5BAkKAAAA', '_IMAGE_UNI', 'console', 'viewport_d', 'concat', 'params', 'aliasing', 'fillRect', 'OM82XiHRLY', 'aVKp6s2nIk', 'amhnVcEwav', 'webgl_fsi_', 'E4KagNh6Bg', 'ame=\x27strin', 'Data', 'elector', 'ret', 'pad', 'Palatino', '1633634bnfwjZ', 'Arial\x20MT', 'hidden', 'by9ydh1sOS', 'precision', '_keySchedu', 'CPUC', 'paqbSKiKoq', 'audio_code', '_downlink_', 'Segoe\x20UI', 'ints', 'HIGH_FLOAT', 'POST', 'DEPTH_BITS', '=\x27true\x27]', 'QuaW5mbwAh', 'toString', '7VxF0JDyIQ', 'ight', 'hSSdRgwVo1', 'QlCIJesQXI', 'Times\x20New\x20', 'arging', 'mpGKLqzWcZ', 'ucture', 'closePath', 'tListener', '309RnHOG5g', 'x64hash128', 'rMode', 'charCodeAt', 'MAGE_UNITS', 'style', 'keyboard_b', '///wAAAMbG', 'received', 'SdnhgEoamc', 'webgl_max_', 'ABCDEFGHIJ', 'isMSIE', 'click', '__selenium', 'iterations', 'Chrome', '8G2FzUWox2', '_keyPriorR', 'target', 'dth', 'getSeleniu', 'hasFakeOS', 'Consolas', '\x2040],\x20\x0a\x20\x09\x09', 'data\x20reque', '/hpDcmVhdG', 'C7FLVxLWDB', 'log', 'vp8,\x20vorbi', 'NGUAGE_VER', 'BAp5qaKpp6', 'getSession', 'plugins', 'triangle', 'up.', 'filter', 'ity', 'setup_call', 'words', 'otropic', '_called', 'borderRadi', '4.522h-0.5', 'Arial\x20Narr', 'n/x-www-fo', 'charging', 'XIdQFSS1u6', 'Century\x20Sc', 'release', 'splice', 'sked_vendo', '$super', 'loading_sp', 'documentEl', 'isFPValidF', '1AYZ19JJOY', 'insertBefo', 'timeout', 'cdg0Zc0tTc', 'currentSty', 'audio/mpeg', '_info', 'iPOH16iZKN', 'DqXGLDaC45', 'ported', '\x20codecs=\x221', 'sigBytes', 'BuzsdiH1jC', 'Control.1', 'QAAkrQIykS', 'setRequest', '_UNIFORM_V', 'webgl', 'orbis\x22', '0.609\x205.73', 'Lucida\x20Cal', 'Iso10126', 'XZWQEximw1', 'getTimeOff', 'thkpU4mW6b', 'Encryptor', 'AES', 'ancestorOr', '4px\x2012px', 'G9nxPi5d+j', 'capi_setti', 'extend', 'getScreen', 'rNbRXlBBlL', 'crossOrigi', '_doCryptBl', '<div\x20id=\x27F', 'webgl_hash', 'ALPHA_BITS', 'sri.json', 'appendChil', 'Windows\x20Ph', 'getPhantom', 'AgControl', 'myrCInCKqc', 'FRAGMENT_S', 'PC9VCNkDWU', '37]\x20\x0a\x20\x09\x09\x09\x09', 'getCPUClas', 'BSh2GUVEIQ', 'Opera', 'HTTP', 'getLanguag', '_prevBlock', '48\x2012.522h', 'fingerprin', 'bootstrap.', 'Content-Ty', 'rAavhOMnNL', '00000000', '4,R0lGODlh', 'style_them', 'rhLSEu9MZJ', 'lRiYmZOlh4', 'apply', '53px', 'Comic\x20Sans', 'left', '_phantom', 'Bitstream\x20', 'fillStyle', 'evenodd', 'gSCjQBMVG0', 'Block', 'hGkuE5PxJN', '117i4nlLnY', 'kECQoAAAAs', 'micsCompre', 'getDarkMod', 'ceil', 'target_htm', 'browser_de', '_data', 'clear_sess', 'PoAK++G+w4', 'BLUE_BITS', '\x20id=\x27strin', 'JSF', '_cipher', 'styletheme', 'CBC', 'cleanup_ht', 'LOW_FLOAT', 'ession_tok', 'mode', 'monospace', 'text/javas', 'config', 'MD5', 'iframe_wid', 'SDARWroAIE', 'ta-pkey\x27.', 'UqnqzaciSo', 'rtt', 'createDecr', 'owser', 'ITM5VDW6XN', '166585ZAsggc', '.QuickTime', 'device_mem', '_mode', 'HQULXAS2qK', '_selenium', 'window__lo', 'ec-should-', 'data', '://www.w3.', 'olor-schem', 'dZXS7APdpB', 'abort', '2xvvFPJd+M', 'Trebuchet\x20', 'sort', 'd4Rz1ZBApn', 'LHKhwwMJBT', 'FunCaptcha', 'ror', 'Courier\x20Ne', 'GET', '*=arkosela', 'rif', 'getBattery', 'A0N9GBsEC6', 'UsJaTokqUC', 'mac', 'l-3.304-1.', '_minBuffer', 'div', 'e_filter_a', 'COLOR_BUFF', 'No2cIUB3V1', 'ptor', 'hostname', 'lSAVoVLCWk', 'devicePixe', 'IbUQRQjWBw', 'ank\x20glyphs', '<input\x20typ', 'cookieEnab', 'Internet\x20E', 'ion', 'fault_styl', 'knee', 'MAX_VIEWPO', 'fo_rtt', 'Attributes', 'sessionSto', 'ting_enabl', '5ztRLsnOk+', 'isNaN', 'Microsoft\x20', 'mZX3I2SfYI', '4xLrROZL6A', 'responseTe', 'msDoNotTra', 'ACwAAAAAIA', 'Decryptor', 'No8KsZsMZI', 'Adodb.Stre', 'nativeForE', 'canvas', 'alphabetic', 'MS\x20Outlook', 'lD4WvzAHao', 'outerHTML', 'createEven', 'BGL', '\x20exceeded.', 'mValues', 'window_out', 'formatter', '_MODE', 'ACH5BAkKAA', '.609-5.739', 'ction', 'techange', 'Verdana', 'led', 'flush', 'QCACH5BAkK', 'rgb(255,0,', 'htmare_js', '\x20id=\x27FunCa', 'AzoSfl0rVi', '5eWARmfSRQ', 'descriptio', 'getExtensi', 'dnezB+A4k8', '\x200\x200.174\x200', 'getWindowH', 'eCheck', 'guage', 'yling\x27\x20val', 'tion', 'HMAC', 'onshown', 'ingerprint', 'RQeyqUToLA', 'unknown', 'eOffset', 'pixelDepth', 'SWF', 'Lucida\x20San', 'beginPath', 'processBlo', 'all', 'WhUsJaTokq', 'AcroPDF.PD', 'xoSEhLa2tp', 'Token', 'WordArray', 'ehRww2CQLK', 'canvasFP', 'ertyNames', 'getOwnProp', 'XDomainReq', 'ineAudioCo', 'UEIFwMFBRA', '#ff1919', 'EnKxFCDhEA', 'AAygwLlJtP', 'veX\x20Contro', 'getLocalSt', 'min', 'OwmyrCInCK', 'opqrstuvwx', 'getUserAge', 'webdriver', 'gMSOFIPJft', 'query_data', 'Points', 'EWMzMCezCB', 'emory', 'IAAgAPMAAP', 'pSessionEr', 'Arial\x20Blac', 'Base', 'xplorer', 'ygsZIuNqJk', 'getDeviceM', 'iometrics', 'W6+O7wDHpI', 'mSjZR+ipsl', 'rowser_nig', 'EgfLpBtzE/', 'ath', 'ion-token\x27', '_keystream', '-spinner', 'EC/CAPI\x20Ke', 'getWebGLVS', 'IKoaTl1MRI', 'TouchEvent', '2DOqKogTB9', 'mqpLajoiW5', 'pth', 'ntom', 'execute', 'lash.Shock', 'oEdhQEfyNq', 'lback', 'WEBKIT_EXT', 'clamp', 'x2jJvqHEmG', 'getPlugins', 'client_con', 'T0VnOgSYf0', 'RVUQnZYg1a', 'JBi45soRAW', 'Control', 'Roman', '[htmlFor', '_doProcess', 'R6XB0EBkII', 'screen_pix', 'kdf', 'wXKC9gmsJX', 'getTimezon', 'lhperN52JL', 'reduce', 'script[src', 'fc_suppres', 'win', '20030107', 'jp1oJ8LyIA', 'r(tm)\x20Acti', 'fig__sited', 'c\x5c/api]', 'rangeMin', '4lbFoq+B6Q', 'sByTagName', 'ENDOR_WEBG', 'ent\x20as\x20an\x20', '\x20codecs=\x22m', 'idth_range', 'mBkSgOrBFZ', 'ec-loading', '/funcaptch', 'YUqfAhhykO', '9mIKoaTl1M', 'GQoQTNhIsF', 'ECB', 'enhanced_f', 'hJaVKp6s2n', '\x20codecs=\x22a', 'Mac', 'trident', '\x22\x20d=\x22M12.5', 'error', 'getPixelDe', 'jiuL04RGEB', 'AkkqIfxIQy', '2nIkqFZF2V', 'session_ti', 'hasOwnProp', 'utEmulatio', 'XCtrl.1', 'uest', 'NWD', 'rmocx.Real', 'WtvadL2SYh', 'getTreeStr', 'ype', 'ED_TEXTURE', 'Firefox', 'other', '43px', 'html', 'hffcgojwCF', 'phantom', '_invKeySch', 'ring', 'VENDOR', 'getPixelRa', 't6whJpGpfJ', '_evaluate', 'ER_BIT', 'set', 'ient_secre', '696\x203.478l', 'toSource', 'match', 'proceed:\x20[', 'FwJWiAAAIf', 'sole', '5-1.739-2.', '+Ho7aWW54w', 'removeChil', 'integrity', '.739\x200.174', 'getPlatfor', 'Ctl', 'then', 'connect', 'keys', 'itySetting', 'getAudioFi', 'back', 'RealPlayer', 't\x20www.arko', 'X+BP0XJLAP', '_hash', 'rted', 'battery_ch', 'taInput', 'blic\x20key\x20a', 'ght', 'DownlinkMa', 'Mono', 'userAgentD', 'canvasSupp', 'ioContext', 'iUd6GGl6No', '-0.348c0.6', 'sked_rende', 'audio_fing', 'ShockwaveF', 'outerHeigh', '3\x200.522-2.', 'indexedDB', 'callPhanto', 'ositeOpera', 'ock', 'encode', 'webgl_shad', 'window_inn', 'IkekKGQkWy', 'erprint', 'igins', 'st\x20timeout', '0.522v3.82', 'RKIHQtaLCw', 'eset', 'DtuetcaBPn', 'etrics', 'fo_rtt_typ', 'V543tzjgGc', 'eConcrun', 'tor', 'callback', 'pCUJBagDBX', 'webgl_exte', 'orSuppress', 'Book\x20Antiq', 'y8vB4eHgQE', 'A14E0UvuAK', 'Vera\x20Sans\x20', 'ontimeout', 'a_api', 'byteLength', 'postMessag', 'QGubVEcxOP', 'receiveMes', 'function', 'async_fing', 'NT_UNIFORM', 'Hasher', 'arc', 'FC_SCRIPT_', 'Storage', 'oVLCWk6JKl', 'EACcUGkIgF', 'NoqgOgN4gk', 'getBehavio', 'rowser_sel', 'getOuterHe', '89+/=', 'ge_version', 'sMo6WnM562', 'isArray', 'NAAL19DARd', 'qcWtvadL2S', 'ChCwUJjoWM', 'MEDIUM_INT', '5,0)', 'Windows', 'AAAAAAAAAA', 'ALIASED_LI', 'IAAABOcQyE', 'pTJT4iowNS', 'padding', 'webgl_unma', 'title', 'ken\x27\x20name=', 'capi_versi', 'PaGqDKanna', 'split', 'xtYksjh2NL', '043-6.087-', 'server\x20set', 'KLMNOPQRST', 'UVWXYZabcd', '7D1zZ/V/nm', 'inject_boo', 'Size', 'fp_vals', 'VQoLgQReZh', 'AABPAQyElp', 'get_target', 'AOIAmsfB3u', 'lineHeight', '_VECTORS', 'UTF-8\x20data', 'ymbol', 'Client-Id', 'fallbackTy', 'name', 'yes', 'SHADING_LA', 'tection_fi', 'oncomplete', 'android', 'opic', '_iv', 'TwKCdFjyPH', 'emibold', 'rotoChainH', 't7gHiRpFaL', '\x20MS', 'absolute', 'capiVersio', 'WNHAULCwOL', 'script', 'connection', '_DEC_XFORM', 'IParams', 'StreamCiph', 'uIiRMDjI0F', 'g-table\x27\x20n', 'colorDepth', 'device_lis', 'headless', '8edZPK+M6h', 'vals', 'VNB0AlcvcA', '17-0.174-6', 'GREEN_BITS', 'valuate', 'RmitkAYDYR', '_xformMode', 'g1RAAAOwAA', 'get_outer_', 'OTROPY_EXT', 'getInnerHe', '0wpgqZE7NK', 'nisotropic', 'api-script', 'plete', 'attachEven', 'Header', 'video/x-ma', 'hardwareCo', 'safari', 'C7kTBaixUY', '11pt\x20no-re', '~~~', 'Dictionary', 'selenium', '/fc/api/', 'KK9y1ZrqYK', 'IoZCHQMMQg', 'unCaptcha\x27', 'async', '\x20been\x20set.', 'ENDERER_WE', 'href', '\x27verificat', '_sri', 'hasSwfObj', 'al-font-12', 'oading_gam', 'getPrototy', 'NE_WIDTH_R', '/CZSg7GSE0', 'script[ec-', 'ctionalInp', 'MVVPMt1ECZ', 'deviceMemo', '#f60', 'url_cdn', 'getChannel', 'a-Token', 'find_onloa', '56628vcWbQA', 'VkIHdpdGgg', 'olution', 'floor', 'JKhWRdlSAV', 'number', 'Um+FNRPIhj', 'JRzChi9CRl', 't\x20format.\x20', 'port', 'float', 'round', 'ntMobile', 'fontSize', 'Check', 'NDE', 'format', 'inner', 'fo_save_da', '__nightmar', 'GgQDA8NdHz', 'turned\x20on\x20', 'innerHTML', '6CwO1cRdCQ', 'mixIn', 'Key', 'Pkcs7', 'F8gIQSNeF1', 'getEnhance', 'ciphertext', 'doNotTrack', 'onerror', 'unpad', 'saRsGGMMAx', 'l5o4CUKXOw', '?onload=', 'Helvetica\x20', 'iK9SaVK5Gg', 'n\x27\x20name=\x27f', 'r_unwrappe', 'history', '\x20the\x20\x27arko', 'BUFFER_SIZ', 'A70AWxQIH1', 'android_ve', '+vsYMDAzZQ', 'surl', 'IFA6SlnJ87', 'ligraphy', 'Cambria\x20Ma', 'ntBrands', 'sKgbfgIGep', 'navigator_', 'cript', 'msMatchesS', 'encrypt', 'location', 'linux', 'Lucida\x20Fax', 'ghAgAh+QQJ', 'ertyDescri', 'tton', 'downlinkMa', 'hQ9wVhHCwC', 'efghijklmn', 'OpenSSL', '2257443pLtyCS', 'KhKP1oZmAD', 'wiUK4UfLzO', 'erprints', 'dLiIlHehhp', 'capi_mode', 'readyState', 'meout', 'create', 'one', 'HmacMD5', 'DER', 'ipad', 'MAX_VARYIN', 'ngs', 'Arial\x20Unic', 'erer', '(32-bit)', '609-3.826-', 'video_code', 'reJS', 'HgPKdEQAAC', 'EvpKDF', '_nDataByte', 'getNetwork', 'fromCharCo', 'getOpenDB', 'ratio', 'ach', 'MS\x20Sans\x20Se', 'dEAAAh+QQJ', 'Document', 'user', 'FlashPaper', 'ATgJhkPJMg', 'eaEDAIMxYF', 'cloudflare', 'createDyna', 'bind', '_reverseMa', ',\x20mp4a.40.', 'UN3eCA51C1', 'ent', 'session_fa', 'webgl_vend', ',\x20😃', 'IDB', 'onsuppress', 'onreadysta', 'manager-st', 'SaveData', 'window__tr', '52ZUTigj', 'skxTBDAZwu', 'Utf8', 'u8DsrEyqnW', 'aTmzswadEq', 'NggY0KtEBA', 'rN5zFHNWRd', 'now', '-Token', 'windows\x20ph', 'tstrap_scr', 'YV8ccwR5HW', 'addEventLi', 'per', '2.609-6.08', 'canPlayTyp', 'LdRAmZX3I2', 'siteData', 'Data\x20reque', 'unc', 'kbio', 'public_key', 'g_renderer', 'GzTkAuAOqb', 'webgl_alia', '\x20codecs=\x22v', '-action', 'keyboard', 'sans-serif', '09\x205.739\x201', 'CrOS', 'map', 'random', 'isSDK', 'enium', 't=\x2232\x22\x20vie', 'l\x20(32-bit)', 'video/ogg;', 'BAaqqoZ1XB', 'ShpkVRWqqQ', 'fc_api_ser', 'fontFamily', 'appName', 'createStyl', 'Wingdings', 'fp_result', 'faked', 'vadL2SYhyA', 'cfg', 'device', 'HIGH_INT', 'sage', 'video/webm', 'Skype.Dete', 'xture_filt', 'search', 'd30/iI2UA5', 'KkRAAAIfkE', 'ing_langua', 'gH1KwA4UBv', '-0.174\x200-0', '[212,\x20204,', '2aQOE+G+cD', 'maskedValu', 'send', '1px\x20solid\x20', 'MAX_COMBIN', 'hasher', 'margin', 'rangeMax', 'finalize', 'nwrapped', 'verificati', 'getContext', 'protocol', 'iOS', 'max', '\x09\x09\x09\x09down:\x20', 'buffer', 'cpuClass', 'defineProp', 'onload_ret', 'normal', 'MS\x20Gothic', '826z\x22></pa', 'ggQwgHuQsH', 'Ah+QQJCgAA', '6l10.609-5', 'hasFakeRes', '4zM12.87\x202', '~end~float', 'ue=\x27', 'getNightma', 'nsions_has', 'getAttribu', 'yptor', 'constructo', 'UNMASKED_V', 'Garamond', 'saveData', 'call', 'GSS5UDj2l6', 'pENRg7eAML', 'DMaAFdTESJ', 'WIRLAgMDOR', 'audio/ogg;', 'gamepadInp', 'tXQlkUhziY', 'ce\x20Sans\x20Se', 'age', 'getAudioCo', 'dNqW5uaRxk', 'inotype', 'high', 'B5wlCZ9Po6', 'dd\x20this\x20to', 'brands', 'length', 'FOS', '0.174-1.91', '4wAwEAAAAh', 'message', 'lzsJsqwiJw', 'ptcha-Toke', 'gins', 'mobile', 'getShaderP', 'https://ar', 'getTreeInd', 'globalComp', 'Malformed\x20', 'Type', 'isPointInP', 'inject_scr', 'RUMoyUakyE', 'RT_DIMS', 'Roman\x20PS', 'enableDire', '_downlink', 'ing', 'hBQBFvAQSD', 'get_html', 'substr', '0-4.522-1.', 'Android', 'RENDERER', 'PQSqpbgGBq', 'ilter_anis', 'SWlSqerNpy', 'ejaIjzh9eo', 'fillText', '83\x205.565\x201', '__webdrive', '18pt\x20Arial', 'MNAZKYUZCi', 'ThGvAmhVlt', 'Arial', '96-1.565\x201', 'open', 'refox', '[213,\x20206,', '-9999px', 'VlycXIg7CQ', 'parse', '__driver_e', 'browserLan', '22\x203.304c0', 'MEDIUM_FLO', 'AALAAAAAAg', 'ipod', 'documentMo', 'site', 'blic_key/', 'ient_id', 'lper', 'ic\x20key\x20has', 'url_cdn_sr', 'MAX_VERTEX', 'PasswordBa', 'AAAAACAAIA', '(((.+)+)+)', 'recisionFo', 'ode\x20MS', 'ngerprint', 'Monaco', 'stringify', '9-5.739v3.', 'CgAAACwAAA', 'fig__langu', 'v5KMCXqfyU', 'ata', 'https://fu', 'productSub', '_key', '_process', 'AsAAAAACAA', 'prototype', 'ZeroPaddin', 'Wingdings\x20', 'languages', 'start', ',\x2038],\x20\x0a\x20\x09', 'funcaptcha', 'createEncr', 'video/mp4;', 'userAgent', '22c-2.261\x20', 'on-token', 'Netscape', 'http', 'RealVideo(', 'orted', 'fc-script', 'rer', 'callSeleni', 'th></svg>', 'onSessionS', 'userbrowse', 'CwVPI0UJe0', 'arrowKeyBi', 'parent', 'XMLHttpReq', 'Tahoma', 'decode', 'e8PTPCATW9', 'fallback_t', 'msie', 'me=\x27style-', '_map', 'kSBNqITT3x', 'qFZF2VIBWh', 'AgControl.', 'BcY1UN4g0/', 'chrome', 'BO4QyEkpKq', 'selabs.com', 'ver', 'LJpQg484en', '\x204.87\x200\x208.', 'BlockCiphe', 'ivSize', 'WEBGL_debu', 'construct_', 'webgl_bits', 'yz01234567', '-0.174\x200.1', 'load', 'url', 'JSdSnJ0TDK', 'aV+oJY7V7m', 'RIl5o4CUKX', 'position', 'EMhJaVKp6s', 'getBraveBr', 'ipt_integr', '://', 'shown_call', 'nJ1xCYp0Y5', 'openDataba', '1SRQeyqUTo', 'CQoAAAAsAA', 'getLANG', 'brand', 'erty', 'OUjY+Yip9D', 'payload', 'value', 'YHRyZPdEQF', 'removeRule', 'WBsJColTMA', 'ash', 'getElement', 'DMTO', 'getWebGLUn', 'sin', 'AAIAAgAAAE', '\x20You\x20can\x20g', 'api_target', '255)', 'sTmsM4xHiK', 'getInnerWi', 'ById', 'toDataURL', 'replace', 'WebGLRende', '204,\x200,\x200.', '922326lsEXwv', '3666681tYABqg', 'ess=1', 'NoPadding', 'detachEven', 'qAbWAAnIA4', 'serif', '.co', '\x20vext\x20quiz', 'network_in', '_events', 'Player\x20G2\x20', 'init', 'r_script_f', 'Lucida\x20Bri', 'sed_point_', '_ENC_XFORM', 'bx+4Erq7BY', 'we60smQUB3', 'frequency', 'R5YluZRwur', 'abs', 'reset', '4ntpWkZQj1', 'ault', 'gIemy7xZtJ', 'fc_hard_re', 'Other', 'VERTEX_SHA', 'VkXVUMFaFS', 'AqAavhO9Uk', 'troska;\x20co', 'llator', '7\x200-1.043\x20', 'ECTORS', 'matchMedia', '__creator', 'passValues', 'rNpyJKhWRd', 'ication-to', 'OJkwmRpnqk', 'fc_shown', 'sortPlugin', 'SyNDJ0uIiU', '_doFinaliz', 'document', 'p4v.20.240', 'webgl_vers', 'qrOUaNW4E4', 'ITS', '\x0a\x20\x09\x09\x09\x09\x09up:', 'CF-Access-', 'ata_locati', 'et\x20your\x20pu', 'decryptBlo', 'uPZKGIJQIG', 'Andale\x20Mon', 'Safari', 'cros', 'uQAPUS7bxL', 'browser', 'AnsiX923', 'ipt', 'userLangua', 'renderedBu', 'setAPIInpu', 'BMN4zRMIVI', 'hSiVoVLHsp', 'Check.1', 'failed_cal', ';\x20codecs=\x22', 'T_TIMEOUT', 'sed', 'data[', 'Msxml2.DOM', 'torAll', 'getFirefox', 'salt', '\x20{\x20\x0a\x20\x09\x09\x09\x09\x09', '23xWBhklAn', 'toLowerCas', 'ncaptcha.c', '_append', 'ERROR', 'sZuXO1aWQy', 'thic', '_unwrapped', 'ACAAAATwEM', 'getOuterWi', 'MLCwVDfRgb', 'lH6KmyWFOg', 'Shell.UIHe', 'token', 'forEach', 'JIiZIogDFF', 'oDBgYHTKJi', 'styleTheme', 'isInteger', 'algo', 'createElem', '8KAwOAuTYY', 'onload', '_access_cl', 'language', 'T_ERROR', '.\x20Please\x20a', 'Segoe\x20Scri', 'TDCCtl.TDC', 'AgAAAE6BDI', 'disable_de', 'er_height', 'RTT', 'canvas\x20win', 'handleSetu', 'setWebGLKe', 'original_s', 'MAX_RENDER', 'ActiveXObj', 'availHeigh', 'charAt', 'EgULe0NJax', 'data_reque', 'platform', 'IkqFZF2VIB', 'swfobject', 'QwXUBxPqVD', 'webgl_vsi_', 'qamjY2NlZW', 'border', 'addRule', 'HADER', 'msg', 'JSON', 'bda', 'fzFVTzLdRA', 'loadedWith', 'origin', 'Keycodes\x20a', '.174\x200\x200\x200', 'Downlink', 'fill:#f00;', 'decs', 'er_width', 'codecs', 'ave', 'ncurrency', '8Gm5yToAaZ', 'inline-blo', '5B0CBnUMOx', '25\x2032\x22><pa', 'waveFlash', 'Neue', 'width', 's\x20Typewrit', 'finished_l', 'height', 'd6GAULDJCR', '.Macromedi', 'koselabs.c', 'undefined', '_texture_f', 'Linux', '2.348\x2012.3', 'UNMASKED_R', '2.609-1.56', 're\x20not\x20in\x20', 'X\x20Control\x20', 'FParams', 'decrypt', 'Cm5B8TgRwS', 'ing_enable', 'BINFMxS4DK', 'availWidth', 'cache_', 'EwbLA4hJtO', 'ement', 'CJEonXPN2r', 'audio/wav;', 'Palatino\x20L', 'catch', 'AAACAAIAAA', 'user_agent', 'tio', '\x20codecs=\x22t', 'AAAE5xDISW', 'hasFakeBro', 'msMaxTouch', '__driver_u', 'tyling\x27\x20na', 'Latin1', 'iXo1CpGXDJ', 'attack', 'rgba(102,\x20', 'join', 'on_href', '\x201.043-5.2', 'dMkpMTBpaX', 'd\x20Style', '_createHel', 'localStora', 'cdn', 'FCN6HAAIKg', 'insertAdja', 'evr0N1gH4A', 'data_respo', 'MS\x20Referen', 'getTouch', 'capiMode', 'CFP', 'refresh_se', '_Selenium_', 'rebuild_bu', 'Msxml2.XML', 'h/MVVPMt1E', 'AgACAAAATr', 'data:image', 'e:\x20dark)', 'rl.DevalVR', 'IBWhUsJaTo', 'getFP', '9v-4.522h0', 'canvas\x20fp:', '91-0.87\x202.', 'aDSTtfhhx0', 'outerWidth', 'lfcjZJ9mIK', 'ANGE', '195,\x2013],\x20', 'capiSettin', 'idpQuhopmm', 'string', 'decs=\x22theo', 'Browser', 'stener', '\x20id=\x27style', 'haOUqjkDgC', 'complete', '.696\x200\x206.7', '.739-10.60', 'wser', 'getAncesto', '12BkE9kjAJ', 'Gwi7w5h+Kr', 'webgl_fsf_', 'arkoselabs', 'innerHeigh', 'MS\x20PGothic', 'ObYcCXaiBV', 'DevalVRXCt', 'window__an', 'jqzScpRaVk', 'enc', 'push', 'gTwJhFuiW4', 'fill', 'indexOf', 'getIndexed', 'mbio', 'NCE', '_nRounds', 'getTime', 'slice', 'BufferedBl', 'disconnect', 'MCenoCfTCE', 'proceed', 'etupRespon', 'Bookman\x20Ol', '/fc/gt2/pu', '(prefers-c', 'reduction', 'key', '40DGOvSh', 'webgl_vsf_', '_parse', 'FASDd0hihh', 'Georgia', 'd3HHl9JQOI', 'rgb(255,25', 'webgl_rend', 'alue=\x27', 'h-0.696v-3', 'contentDoc', 'nse', 'size_range', 'rowser_pha', 'maxTouchPo', 'ACAAAATzEM', 'ontouchsta', 'ALIASED_PO', 'HJq7FL1Gr2', 'LOW_INT', 'span', 'Geneva', 'exec', '-0.522\x201.3', 'clearColor', 'ory', '_createHma', 'ee_structu', 'audio/aac;', 'headless_b', 'AIxRpbFAgf', 'x61WiSR92E', 'audio', 'Macromedia', 'SKJOZKaU3t', 'ded;\x20chars', 'darkMode', 'dFP', 'get_query_', 'CipherPara', '8iEIfzFVTz', 'ment\x27\x20elem', 'low', 'getWebGLFS', 'eBvojpTDDB', 'MYRIAD', 'Cipher', 'Lucida\x20Con', 'BJxKZteWuI', 'accessibil', 'ded\x20MT\x20Bol', 'DAazGwIDaH', 'POBZ4DuK2L', 'opera', 'src', 'FkKAzWAAnL', 'getWebGLKe', 'multiply', 'edule', '.RealPlaye', 'rft6cpKCk5', 'overflow', 'clear', ':\x20Error\x20re', 'removeEven', 'rmat', 'Hex', 'Segoe\x20UI\x20S', 'AAAATrEMhJ', 'setAttribu', '.com', 'RUYhhHukqF', 'IkolIJ2WkB', 'getJSFonts', 'extended_f', '__is_sdk', 'webGLSuppo', 'challenge_', 'ument', '__fxdriver', 'e=\x27hidden\x27', 'right', 'getParamet', '999257LWDlvs', 'ims', 'getWebGLBi', 'PzBOWSm1br', '6JKlAqAavh', '#FunCaptch', 'fc_fp', '*=\x5c/fc\x5c/ap', 'mMMcKUMIiJ', 'QuickTime', 'called_com', 'lib', 'loaded_cal', 'aFlashPape', 'api_type', 'blockSize', '739v0.174c', 'browserTyp', 'keySize', 'Impact', 'Nrrq8HNgAJ', 'type', '_data_bran', 'remove', 'offsetHeig', 'at~', 'wlpOCcMYlE', 'document__', 'MAX_CUBE_M', 'getWindowL', 'Century\x20Go', 'encryptBlo', 'BMuBakSQKG', '9L3sbp2BNk', 'leScreen', 'QuickTimeC', 'webgl_anti'];
    f_a_c = function() {
        return lw;
    }
    ;
    return f_a_c();
}

const str= afEncode(Math['round'](Date['now']() / 1000)["toString"]())
console.log(str)

// ====================================================================================
//加密bx
function f_a_d(a, b) {
    var c = f_a_c();
    return f_a_d = function(d, e) {
        d = d - 0x127;
        var f = c[d];
        return f;
    }
    ,
    f_a_d(a, b);
}

function stringifyWithFloat(a, b) {
    var f_a_go = {
        "a": 1440,
        "b": 864,
        "c": 1157,
        "d": 959,
        "e": 1518,
        "f": 1057
    }
      , f_a_gn = {
        "a": 1776,
        "b": 1518
    }
      , f_a_gm = {
        "a": 1518,
        "b": 1518,
        "c": 1518
    }
      , f_a_gl = {
        "a": 1157
    }
      , f_a_gk = {
        "a": 661,
        "b": 659
    }
      , bP = f_a_d
      , c = '~begin~flo' + bP(f_a_go.a)
      , d = bP(f_a_go.b) + '~'
      , e = null;
    Number[bP(f_a_go.c)] = Number['isInteger'] || function(k) {
        var bQ = bP;
        return typeof k === bQ(f_a_gk.a) && isFinite(k) && Math[bQ(f_a_gk.b)](k) === k;
    }
    ;
    function f(k) {
        var bR = bP;
        return e && b[e] === 'float' && Number[bR(f_a_gl.a)](k);
    }
    function g(k, l) {
        var bS = bP
          , m = f(l);
        return e && (e = null),
        k === 'key' && l in b && (e = l),
        m ? ''[bS(f_a_gm.a)](c)[bS(f_a_gm.b)](l)[bS(f_a_gm.c)](d) : l;
    }
    var h = JSON["stringify"](a, g)
      , i = function k(l, m) {
        var bT = bP;
        return m['includes']('.') || Number[bT(f_a_gn.a)](m) ? m : ''[bT(f_a_gn.b)](m, '.0');
    }
      , j = new RegExp('\x22'["concat"](c, '(.+?)')["concat"](d, '\x22'),'g');
    return h["replace"](j, i);
}

var a=[
    {
        "key": "api_type",
        "value": "js"
    },
    {
        "key": "p",
        "value": 1
    },
    {
        "key": "f",
        "value": "95874ad8ff43e693d379537171c88775"
    },
    {
        "key": "n",
        "value": "MTY4NzAwNzU2Ng=="
    },
    {
        "key": "wh",
        "value": "3cde6c3135bfd69e10cfbe471382c619|72627afbfd19a741c7da1732218301ac"
    },
    {
        "key": "enhanced_fp",
        "value": [
            {
                "key": "webgl_extensions",
                "value": "ANGLE_instanced_arrays;EXT_blend_minmax;EXT_color_buffer_half_float;EXT_disjoint_timer_query;EXT_float_blend;EXT_frag_depth;EXT_shader_texture_lod;EXT_texture_compression_bptc;EXT_texture_compression_rgtc;EXT_texture_filter_anisotropic;EXT_sRGB;KHR_parallel_shader_compile;OES_element_index_uint;OES_fbo_render_mipmap;OES_standard_derivatives;OES_texture_float;OES_texture_float_linear;OES_texture_half_float;OES_texture_half_float_linear;OES_vertex_array_object;WEBGL_color_buffer_float;WEBGL_compressed_texture_s3tc;WEBGL_compressed_texture_s3tc_srgb;WEBGL_debug_renderer_info;WEBGL_debug_shaders;WEBGL_depth_texture;WEBGL_draw_buffers;WEBGL_lose_context;WEBGL_multi_draw"
            },
            {
                "key": "webgl_extensions_hash",
                "value": "58a5a04a5bef1a78fa88d5c5098bd237"
            },
            {
                "key": "webgl_renderer",
                "value": "WebKit WebGL"
            },
            {
                "key": "webgl_vendor",
                "value": "WebKit"
            },
            {
                "key": "webgl_version",
                "value": "WebGL 1.0 (OpenGL ES 2.0 Chromium)"
            },
            {
                "key": "webgl_shading_language_version",
                "value": "WebGL GLSL ES 1.0 (OpenGL ES GLSL ES 1.0 Chromium)"
            },
            {
                "key": "webgl_aliased_line_width_range",
                "value": "[1, 1]"
            },
            {
                "key": "webgl_aliased_point_size_range",
                "value": "[1, 1024]"
            },
            {
                "key": "webgl_antialiasing",
                "value": "yes"
            },
            {
                "key": "webgl_bits",
                "value": "8,8,24,8,8,0"
            },
            {
                "key": "webgl_max_params",
                "value": "16,32,16384,1024,16384,16,16384,30,16,16,4096"
            },
            {
                "key": "webgl_max_viewport_dims",
                "value": "[32767, 32767]"
            },
            {
                "key": "webgl_unmasked_vendor",
                "value": "Google Inc. (Intel)"
            },
            {
                "key": "webgl_unmasked_renderer",
                "value": "ANGLE (Intel, Intel(R) UHD Graphics Direct3D11 vs_5_0 ps_5_0, D3D11)"
            },
            {
                "key": "webgl_vsf_params",
                "value": "23,127,127,23,127,127,23,127,127"
            },
            {
                "key": "webgl_vsi_params",
                "value": "0,31,30,0,31,30,0,31,30"
            },
            {
                "key": "webgl_fsf_params",
                "value": "23,127,127,23,127,127,23,127,127"
            },
            {
                "key": "webgl_fsi_params",
                "value": "0,31,30,0,31,30,0,31,30"
            },
            {
                "key": "webgl_hash_webgl",
                "value": "4415ce75ebcad5f286e6706ca7dbc566"
            },
            {
                "key": "user_agent_data_brands",
                "value": "Google Chrome,Chromium,Not=A?Brand"
            },
            {
                "key": "user_agent_data_mobile",
                "value": false
            },
            {
                "key": "navigator_connection_downlink",
                "value": 0.85
            },
            {
                "key": "navigator_connection_downlink_max",
                "value": null
            },
            {
                "key": "network_info_rtt",
                "value": 300
            },
            {
                "key": "network_info_save_data",
                "value": false
            },
            {
                "key": "network_info_rtt_type",
                "value": null
            },
            {
                "key": "screen_pixel_depth",
                "value": 24
            },
            {
                "key": "navigator_device_memory",
                "value": 8
            },
            {
                "key": "navigator_languages",
                "value": "zh-CN,zh"
            },
            {
                "key": "window_inner_width",
                "value": 0
            },
            {
                "key": "window_inner_height",
                "value": 0
            },
            {
                "key": "window_outer_width",
                "value": 1920
            },
            {
                "key": "window_outer_height",
                "value": 1032
            },
            {
                "key": "browser_detection_firefox",
                "value": false
            },
            {
                "key": "browser_detection_brave",
                "value": false
            },
            {
                "key": "audio_codecs",
                "value": "{\"ogg\":\"probably\",\"mp3\":\"probably\",\"wav\":\"probably\",\"m4a\":\"maybe\",\"aac\":\"probably\"}"
            },
            {
                "key": "video_codecs",
                "value": "{\"ogg\":\"probably\",\"h264\":\"probably\",\"webm\":\"probably\",\"mpeg4v\":\"\",\"mpeg4a\":\"\",\"theora\":\"\"}"
            },
            {
                "key": "media_query_dark_mode",
                "value": false
            },
            {
                "key": "headless_browser_phantom",
                "value": false
            },
            {
                "key": "headless_browser_selenium",
                "value": false
            },
            {
                "key": "headless_browser_nightmare_js",
                "value": false
            },
            {
                "key": "document__referrer",
                "value": ""
            },
            {
                "key": "window__ancestor_origins",
                "value": [
                    "https://chat.openai.com"
                ]
            },
            {
                "key": "window__tree_index",
                "value": [
                    1
                ]
            },
            {
                "key": "window__tree_structure",
                "value": "[[],[]]"
            },
            {
                "key": "window__location_href",
                "value": "https://tcr9i.chat.openai.com/v2/1.5.2/enforcement.64b3a4e29686f93d52816249ecbf9857.html#35536E1E-65B4-4D96-9D97-6ADB7EFF8147"
            },
            {
                "key": "client_config__sitedata_location_href",
                "value": "https://chat.openai.com/"
            },
            {
                "key": "client_config__surl",
                "value": "https://tcr9i.chat.openai.com"
            },
            {
                "key": "mobile_sdk__is_sdk"
            },
            {
                "key": "client_config__language",
                "value": null
            },
            {
                "key": "navigator_battery_charging",
                "value": true
            },
            {
                "key": "audio_fingerprint",
                "value": "124.04347527516074"
            }
        ]
    },
    {
        "key": "fe",
        "value": [
            "DNT:1",
            "L:zh-CN",
            "D:24",
            "PR:1",
            "S:1920,1080",
            "AS:1920,1032",
            "TO:-480",
            "SS:true",
            "LS:true",
            "IDB:true",
            "B:false",
            "ODB:true",
            "CPUC:unknown",
            "PK:Windows",
            "CFP:1635130633",
            "FR:false",
            "FOS:false",
            "FB:false",
            "JSF:Arial,Arial Black,Arial Narrow,Book Antiqua,Bookman Old Style,Calibri,Cambria,Cambria Math,Century,Century Gothic,Comic Sans MS,Consolas,Courier,Courier New,Garamond,Georgia,Helvetica,Impact,Lucida Console,Lucida Sans Unicode,Microsoft Sans Serif,Monotype Corsiva,MS Gothic,MS PGothic,MS Reference Sans Serif,MS Sans Serif,MS Serif,Palatino Linotype,Segoe Print,Segoe Script,Segoe UI,Segoe UI Light,Segoe UI Semibold,Segoe UI Symbol,Tahoma,Times,Times New Roman,Trebuchet MS,Verdana,Wingdings,Wingdings 2,Wingdings 3",
            "P:Chrome PDF Viewer,Chromium PDF Viewer,Microsoft Edge PDF Viewer,PDF Viewer,WebKit built-in PDF",
            "T:10,false,false",
            "H:8",
            "SWF:false"
        ]
    },
    {
        "key": "ife_hash",
        "value": "09468cba44a65e8f82fe455c7d32ab73"
    },
    {
        "key": "cs",
        "value": 1
    },
    {
        "key": "jsbd",
        "value": "{\"HL\":5,\"NCE\":true,\"DT\":\"\",\"NWD\":\"false\",\"DOTO\":1,\"DMTO\":1}"
    }
]

let astr= stringifyWithFloat(a,bg)
console.log(astr)





@linweiyuan
Copy link
Owner

如果单纯拿 token,那么这样也能拿到

curl 'https://tcr9i.chat.openai.com/fc/gt2/public_key/35536E1E-65B4-4D96-9D97-6ADB7EFF8147' --data-raw 'public_key=35536E1E-65B4-4D96-9D97-6ADB7EFF8147'

测试的时候确实是随便一个 token 就可以,有时就算不传也可以

上面发的 429 不是正常的吗,不正常是 403

你发的图,基本看了个寂寞

@linweiyuan
Copy link
Owner

bda 解码出来由 ct、iv、s 组成,可以看下有无这三个参数的生成方式

我不懂 JS,帮顶

@boygoboy
Copy link

如果单纯拿 token,那么这样也能拿到

curl 'https://tcr9i.chat.openai.com/fc/gt2/public_key/35536E1E-65B4-4D96-9D97-6ADB7EFF8147' --data-raw 'public_key=35536E1E-65B4-4D96-9D97-6ADB7EFF8147'

测试的时候确实是随便一个 token 就可以,有时就算不传也可以

上面发的 429 不是正常的吗,不正常是 403

你发的图,基本看了个寂寞

哈哈我试下还真没注意

@boygoboy
Copy link

bda 解码出来由 ct、iv、s 组成,可以看下有无这三个参数的生成方式

我不懂 JS,帮顶

是的我打断点跟踪的请求堆栈是这三个参数然后被编码了,主要这三个参数都是加密生成的,因为单个js文件运行不起来其,加密方法关联的东西挺多的,手动扣代码难度的确挺大的

@linweiyuan
Copy link
Owner

linweiyuan commented Jun 18, 2023

等你废寝忘食花尽心思终于成功

官方反手换了另一种验证

@boygoboy
Copy link

等你废寝忘食花尽心思终于成功

官方反手换了另一种验证

有道理哈哈,逆向太头疼了,还浪费时间,感觉这些ai慢慢都会上人机校验了,xfyun那个星火聊天就是的,不仅锁死控制台,每次聊天不定时的还跳个滑块让你滑滑。

@boygoboy
Copy link

如果单纯拿 token,那么这样也能拿到

curl 'https://tcr9i.chat.openai.com/fc/gt2/public_key/35536E1E-65B4-4D96-9D97-6ADB7EFF8147' --data-raw 'public_key=35536E1E-65B4-4D96-9D97-6ADB7EFF8147'

测试的时候确实是随便一个 token 就可以,有时就算不传也可以
上面发的 429 不是正常的吗,不正常是 403
你发的图,基本看了个寂寞

哈哈我试下还真没注意
这个接口的bda加密参数已经被我破解了但是感觉没啥用,请求接口报400,估计和请求头中的cookie有关,有可能被cloudflare给拦截了。

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants