郑重声明:本项目的所有代码和相关文章, 仅用于经验技术交流分享,禁止将相关技术应用到不正当途径,因为滥用技术产生的风险与本人无关。
难点概要:
每日切换一次算法,其中包括环境,运行方式等。
code = new ABC().z(seed, parseInt(ts) + (480 + new Date().getTimezoneOffset()) * 60 * 1000)
这里是zp_stoken的生成位置,其中比较重要的就是z函数,seed与ts为两个接口返回的校验字符串。
def use_seed_ts(seed, ts, fr_str):res = []fr_str_list = opa(fr_str[:4])res += fr_str_listseed_list = opa(seed)res += seed_listtime_flag_list = opb(ts)res += time_flag_listvl = random.randint(0, 100)res.append(vl)res = opc(res)return res
在ts和seed的运用上大概是这样,然后会传入一个环境数组一百多位的样子,通过校验环境得到。
然后在将这一百多位和之前生成的大约60+位组合后作取反\加减乘除等运算,
通过
token = parse.quote_plus(fr_str + res)
生成最后的zptoken
下附运行截图
纯python还原算法,可并发。
可提供接口调用。
详细需求请联系博主
let v = huaqu0727