's'
This commit is contained in:
1
javascript/crypto-js.min.js
vendored
Normal file
1
javascript/crypto-js.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
539
javascript/haixiu.js
Normal file
539
javascript/haixiu.js
Normal file
@@ -0,0 +1,539 @@
|
||||
var closeGeetest = !1, _a123 = "haija1c7", _b2x = "xiuhc2a6", _c3y = "anchc3a5", _dx34 = "famic7a2", _hf_constants1 = "sowh1e", _hf_constants2 = "1000ha", _hf_constants3 = "butr12", _hf_constants4 = "2000h5", _gf_constants1 = "lehaaj", _gf_constants2 = "1000ax", _gf_constants3 = "lehaData"
|
||||
let CryptoJS = null;
|
||||
function EnmoliParamter() {
|
||||
|
||||
this._a123 = eval("_hf_constants1"),
|
||||
this._b2x = eval("_hf_constants2"),
|
||||
this._c3y = eval("_hf_constants3"),
|
||||
this._dx34 = eval("_hf_constants4"),
|
||||
this.getA123 = function() {
|
||||
return this._a123
|
||||
}
|
||||
,
|
||||
this.getB2X = function() {
|
||||
return this._b2x
|
||||
}
|
||||
,
|
||||
this.getC3Y = function() {
|
||||
return this._c3y
|
||||
}
|
||||
,
|
||||
this.getDX34 = function() {
|
||||
return this._dx34
|
||||
}
|
||||
}
|
||||
EnmoliParamter.prototype = {
|
||||
aa: function(e, t) {
|
||||
if (e === t)
|
||||
return e;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e;
|
||||
if (e.arity === t.arity && e.string === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
ac: function(e, t) {
|
||||
if (e === t)
|
||||
return e;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e;
|
||||
if (e.id === t.id && (e = CryptoJS.MD5(e) + ""),
|
||||
e.arity1 === t.arity && e.string2 === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
ad: function(e, t) {
|
||||
if (e === t)
|
||||
return !0;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e;
|
||||
if (e.arity2 === t.arity && e.string3 === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
ae: function(e, t) {
|
||||
if (e === t)
|
||||
return !0;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e.number === t.number;
|
||||
if (e.arity3 === t.arity && e.string4 === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
af: function(e, t) {
|
||||
if (e === t)
|
||||
return !0;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e.number === t.number;
|
||||
if (e.arity4 === t.arity && e.string5 === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
ah: function(e, t) {
|
||||
if (e === t)
|
||||
return !0;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e;
|
||||
if (e.arity6 === t.arity && e.string9 === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
ai: function(e, t) {
|
||||
if (e === t)
|
||||
return !0;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e;
|
||||
if (e.arity2 === t.arity5 && e.string === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
aj: function(e, t) {
|
||||
if (e === t)
|
||||
return !0;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e.number === t.number;
|
||||
if (e.arity44 === t.arity42 && e.string === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
ak: function(e, t) {
|
||||
if (e === t)
|
||||
return !0;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e.number === t.number;
|
||||
if (e.arity21 === t.arity322 && e.string === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
ax: function(e, t) {
|
||||
if (e === t)
|
||||
return !0;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e.number === t.number;
|
||||
if (e.arity22 === t.arity32 && e.string === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
az: function(e, t) {
|
||||
if (e === t)
|
||||
return !0;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e.number === t.number;
|
||||
if (e.arity42 === t.arity57 && e.string2 === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return e
|
||||
},
|
||||
are_similar: function(e, t) {
|
||||
if (e === t)
|
||||
return !0;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return !0;
|
||||
return !0
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return e;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e.number === t.number;
|
||||
if (e.arity === t.arity && e.string === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third);
|
||||
case "function":
|
||||
case "regexp":
|
||||
return e;
|
||||
default:
|
||||
return !0
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e.second.string === t.second.string && "(string)" === t.second.id;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return e.second.string === t.second.string && "(string)" === e.second.id
|
||||
}
|
||||
return !1
|
||||
},
|
||||
ayz: function(e, t) {
|
||||
if (e === t)
|
||||
return e;
|
||||
if (Array.isArray(e)) {
|
||||
if (Array.isArray(t) && e.length === t.length) {
|
||||
var i;
|
||||
for (i = 0; i < e.length; i += 1)
|
||||
if (!this.are_similar(e[i], t[i]))
|
||||
return e;
|
||||
return e
|
||||
}
|
||||
return e
|
||||
}
|
||||
if (Array.isArray(t))
|
||||
return t;
|
||||
if ("(number)" === e.id && "(number)" === t.id)
|
||||
return e.number === t.number;
|
||||
if (e.arity42 === t.arity57 && e.string2 === t.string)
|
||||
switch (e.arity) {
|
||||
case "prefix":
|
||||
case "suffix":
|
||||
case "infix":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second);
|
||||
case "ternary":
|
||||
return this.are_similar(e.first, t.first) && this.are_similar(e.second, t.second) && this.are_similar(e.third, t.third)
|
||||
}
|
||||
else {
|
||||
if ("." === e.id && "[" === t.id && "infix" === t.arity)
|
||||
return e;
|
||||
if ("[" === e.id && "infix" === e.arity && "." === t.id)
|
||||
return t
|
||||
}
|
||||
return this.getA123().substring(4) + this.getB2X().substring(4) + this.getC3Y().substring(4) + this.getDX34().substring(4)
|
||||
}
|
||||
}
|
||||
function EnmoliSubmiter() {}
|
||||
EnmoliSubmiter.prototype = {
|
||||
bsq: function(e) {
|
||||
var t = this.pf(e)
|
||||
, i = this.as(t);
|
||||
return this.brm(i)
|
||||
},
|
||||
pf: function(e) {
|
||||
var t = {};
|
||||
for (var i in e)
|
||||
"" !== e[i] && (t[i] = e[i]);
|
||||
return t
|
||||
},
|
||||
as: function(e) {
|
||||
for (var t = {}, i = Object.keys(e).sort(), o = 0; o < i.length; o++) {
|
||||
var n = i[o];
|
||||
t[n] = e[n]
|
||||
}
|
||||
return t
|
||||
},
|
||||
brm: function(e) {
|
||||
var t = this.cls(e)
|
||||
, i = new EnmoliParamter;
|
||||
return this.pt(t, i.ayz(t, "showselfAnchorVisitorParameters"))
|
||||
},
|
||||
cls: function(e) {
|
||||
var t = "";
|
||||
for (var i in e)
|
||||
t = t + i + "=" + e[i] + "&";
|
||||
return t = t.substring(0, t.length - 1)
|
||||
},
|
||||
pt: function(e, t) {
|
||||
var i = new EnmoliParamter;
|
||||
return e += t,
|
||||
i.az(i.ax(i.ak(i.aj(i.ai(i.ah(i.af(i.ae(i.ad(i.ac(i.aa(e, e + "01" + t), e + "escape" + t), e + "same"), e + "visitor"), "anchor"), e + "person"), e + "ax" + t), "ae" + t), e + "ax" + t), e + "inspect" + t), "af" + t)
|
||||
},
|
||||
bnu: function(e, t) {
|
||||
for (var i = e.split("&"), o = 0; o < i.length; o++) {
|
||||
var n = i[o].split("=");
|
||||
2 == n.length && (t[n[0]] = encodeURIComponent($.trim(n[1])).toString())
|
||||
}
|
||||
},
|
||||
bn: function(e, t) {
|
||||
for (var i in e)
|
||||
"object" == typeof e[i] ? t[i] = encodeURIComponent($.trim(JSON.stringify(e[i]))).toString() : t[i] = encodeURIComponent($.trim(e[i])).toString()
|
||||
}
|
||||
}
|
||||
var enmoliSubmiter = new EnmoliSubmiter();
|
||||
|
||||
function sign(options, cryptoJSPath){
|
||||
CryptoJS = require(cryptoJSPath);
|
||||
return enmoliSubmiter.bsq(options);
|
||||
}
|
||||
module.exports = {
|
||||
sign
|
||||
};
|
||||
|
||||
// const options = {
|
||||
// "accessToken": "pLXSC%252FXJ0asc1I21tVL5FYZhNJn2Zg6d7m94umCnpgL%252BuVm31GQvyw%253D%253D",
|
||||
// "tku": "3000006",
|
||||
// "c": "10138100100000",
|
||||
// "_st1": "1728621076958"
|
||||
// }
|
||||
// const cryptoJSPath = './crypto-js.min.js'
|
||||
// console.log(sign(options, cryptoJSPath))
|
||||
425
javascript/liveme.js
Normal file
425
javascript/liveme.js
Normal file
@@ -0,0 +1,425 @@
|
||||
/**
|
||||
* @author Hmily
|
||||
* @createTime 2024-10-10
|
||||
*/
|
||||
|
||||
const id = 1;
|
||||
const r = `${new Date().getTime()}${id}`
|
||||
const Am = "LM6000101139961122666757";
|
||||
const rl = "undefined"
|
||||
|
||||
function createRandom(length = 32) {
|
||||
let result = "";
|
||||
const characters = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678";
|
||||
for (let i = 0; i < length; ++i) {
|
||||
const randomIndex = Math.floor(Math.random() * characters.length);
|
||||
result += characters.charAt(randomIndex);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
function createSignature(input = "4l4m5") {
|
||||
let signature = "";
|
||||
let number = 0;
|
||||
for (let i = 0; i < input.length; ++i) {
|
||||
const charCode = input.charCodeAt(i);
|
||||
if (charCode >= 48 && charCode <= 57) {
|
||||
number = number * 10 + (charCode - 48);
|
||||
} else {
|
||||
if (number !== 0) {
|
||||
signature += createRandom(number);
|
||||
number = 0;
|
||||
}
|
||||
signature += String.fromCharCode(charCode);
|
||||
}
|
||||
}
|
||||
if (number !== 0) {
|
||||
signature += createRandom(number);
|
||||
}
|
||||
return signature;
|
||||
}
|
||||
|
||||
function oC(e) {
|
||||
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e
|
||||
}
|
||||
var Tm = {
|
||||
exports: {}
|
||||
}
|
||||
, Sm = {
|
||||
exports: {}
|
||||
};
|
||||
(function() {
|
||||
var e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
|
||||
, t = {
|
||||
rotl: function(n, r) {
|
||||
return n << r | n >>> 32 - r
|
||||
},
|
||||
rotr: function(n, r) {
|
||||
return n << 32 - r | n >>> r
|
||||
},
|
||||
endian: function(n) {
|
||||
if (n.constructor == Number)
|
||||
return t.rotl(n, 8) & 16711935 | t.rotl(n, 24) & 4278255360;
|
||||
for (var r = 0; r < n.length; r++)
|
||||
n[r] = t.endian(n[r]);
|
||||
return n
|
||||
},
|
||||
randomBytes: function(n) {
|
||||
for (var r = []; n > 0; n--)
|
||||
r.push(Math.floor(Math.random() * 256));
|
||||
return r
|
||||
},
|
||||
bytesToWords: function(n) {
|
||||
for (var r = [], s = 0, o = 0; s < n.length; s++,
|
||||
o += 8)
|
||||
r[o >>> 5] |= n[s] << 24 - o % 32;
|
||||
return r
|
||||
},
|
||||
wordsToBytes: function(n) {
|
||||
for (var r = [], s = 0; s < n.length * 32; s += 8)
|
||||
r.push(n[s >>> 5] >>> 24 - s % 32 & 255);
|
||||
return r
|
||||
},
|
||||
bytesToHex: function(n) {
|
||||
for (var r = [], s = 0; s < n.length; s++)
|
||||
r.push((n[s] >>> 4).toString(16)),
|
||||
r.push((n[s] & 15).toString(16));
|
||||
return r.join("")
|
||||
},
|
||||
hexToBytes: function(n) {
|
||||
for (var r = [], s = 0; s < n.length; s += 2)
|
||||
r.push(parseInt(n.substr(s, 2), 16));
|
||||
return r
|
||||
},
|
||||
bytesToBase64: function(n) {
|
||||
for (var r = [], s = 0; s < n.length; s += 3)
|
||||
for (var o = n[s] << 16 | n[s + 1] << 8 | n[s + 2], i = 0; i < 4; i++)
|
||||
s * 8 + i * 6 <= n.length * 8 ? r.push(e.charAt(o >>> 6 * (3 - i) & 63)) : r.push("=");
|
||||
return r.join("")
|
||||
},
|
||||
base64ToBytes: function(n) {
|
||||
n = n.replace(/[^A-Z0-9+\/]/ig, "");
|
||||
for (var r = [], s = 0, o = 0; s < n.length; o = ++s % 4)
|
||||
o != 0 && r.push((e.indexOf(n.charAt(s - 1)) & Math.pow(2, -2 * o + 8) - 1) << o * 2 | e.indexOf(n.charAt(s)) >>> 6 - o * 2);
|
||||
return r
|
||||
}
|
||||
};
|
||||
Sm.exports = t
|
||||
}
|
||||
)();
|
||||
var iC = Sm.exports
|
||||
, nl = {
|
||||
utf8: {
|
||||
stringToBytes: function(e) {
|
||||
return nl.bin.stringToBytes(unescape(encodeURIComponent(e)))
|
||||
},
|
||||
bytesToString: function(e) {
|
||||
return decodeURIComponent(escape(nl.bin.bytesToString(e)))
|
||||
}
|
||||
},
|
||||
bin: {
|
||||
stringToBytes: function(e) {
|
||||
for (var t = [], n = 0; n < e.length; n++)
|
||||
t.push(e.charCodeAt(n) & 255);
|
||||
return t
|
||||
},
|
||||
bytesToString: function(e) {
|
||||
for (var t = [], n = 0; n < e.length; n++)
|
||||
t.push(String.fromCharCode(e[n]));
|
||||
return t.join("")
|
||||
}
|
||||
}
|
||||
}, sd = nl;
|
||||
|
||||
var aC = function(e) {
|
||||
return e != null && (Cm(e) || lC(e) || !!e._isBuffer)
|
||||
};
|
||||
function Cm(e) {
|
||||
return !!e.constructor && typeof e.constructor.isBuffer == "function" && e.constructor.isBuffer(e)
|
||||
}
|
||||
function lC(e) {
|
||||
return typeof e.readFloatLE == "function" && typeof e.slice == "function" && Cm(e.slice(0, 0))
|
||||
}
|
||||
(function() {
|
||||
var e = iC
|
||||
, t = sd.utf8
|
||||
, n = aC
|
||||
, r = sd.bin
|
||||
, s = function(o, i) {
|
||||
o.constructor == String ? i && i.encoding === "binary" ? o = r.stringToBytes(o) : o = t.stringToBytes(o) : n(o) ? o = Array.prototype.slice.call(o, 0) : !Array.isArray(o) && o.constructor !== Uint8Array && (o = o.toString());
|
||||
for (var a = e.bytesToWords(o), l = o.length * 8, c = 1732584193, u = -271733879, f = -1732584194, d = 271733878, m = 0; m < a.length; m++)
|
||||
a[m] = (a[m] << 8 | a[m] >>> 24) & 16711935 | (a[m] << 24 | a[m] >>> 8) & 4278255360;
|
||||
a[l >>> 5] |= 128 << l % 32,
|
||||
a[(l + 64 >>> 9 << 4) + 14] = l;
|
||||
for (var v = s._ff, w = s._gg, R = s._hh, y = s._ii, m = 0; m < a.length; m += 16) {
|
||||
var b = c
|
||||
, _ = u
|
||||
, g = f
|
||||
, C = d;
|
||||
c = v(c, u, f, d, a[m + 0], 7, -680876936),
|
||||
d = v(d, c, u, f, a[m + 1], 12, -389564586),
|
||||
f = v(f, d, c, u, a[m + 2], 17, 606105819),
|
||||
u = v(u, f, d, c, a[m + 3], 22, -1044525330),
|
||||
c = v(c, u, f, d, a[m + 4], 7, -176418897),
|
||||
d = v(d, c, u, f, a[m + 5], 12, 1200080426),
|
||||
f = v(f, d, c, u, a[m + 6], 17, -1473231341),
|
||||
u = v(u, f, d, c, a[m + 7], 22, -45705983),
|
||||
c = v(c, u, f, d, a[m + 8], 7, 1770035416),
|
||||
d = v(d, c, u, f, a[m + 9], 12, -1958414417),
|
||||
f = v(f, d, c, u, a[m + 10], 17, -42063),
|
||||
u = v(u, f, d, c, a[m + 11], 22, -1990404162),
|
||||
c = v(c, u, f, d, a[m + 12], 7, 1804603682),
|
||||
d = v(d, c, u, f, a[m + 13], 12, -40341101),
|
||||
f = v(f, d, c, u, a[m + 14], 17, -1502002290),
|
||||
u = v(u, f, d, c, a[m + 15], 22, 1236535329),
|
||||
c = w(c, u, f, d, a[m + 1], 5, -165796510),
|
||||
d = w(d, c, u, f, a[m + 6], 9, -1069501632),
|
||||
f = w(f, d, c, u, a[m + 11], 14, 643717713),
|
||||
u = w(u, f, d, c, a[m + 0], 20, -373897302),
|
||||
c = w(c, u, f, d, a[m + 5], 5, -701558691),
|
||||
d = w(d, c, u, f, a[m + 10], 9, 38016083),
|
||||
f = w(f, d, c, u, a[m + 15], 14, -660478335),
|
||||
u = w(u, f, d, c, a[m + 4], 20, -405537848),
|
||||
c = w(c, u, f, d, a[m + 9], 5, 568446438),
|
||||
d = w(d, c, u, f, a[m + 14], 9, -1019803690),
|
||||
f = w(f, d, c, u, a[m + 3], 14, -187363961),
|
||||
u = w(u, f, d, c, a[m + 8], 20, 1163531501),
|
||||
c = w(c, u, f, d, a[m + 13], 5, -1444681467),
|
||||
d = w(d, c, u, f, a[m + 2], 9, -51403784),
|
||||
f = w(f, d, c, u, a[m + 7], 14, 1735328473),
|
||||
u = w(u, f, d, c, a[m + 12], 20, -1926607734),
|
||||
c = R(c, u, f, d, a[m + 5], 4, -378558),
|
||||
d = R(d, c, u, f, a[m + 8], 11, -2022574463),
|
||||
f = R(f, d, c, u, a[m + 11], 16, 1839030562),
|
||||
u = R(u, f, d, c, a[m + 14], 23, -35309556),
|
||||
c = R(c, u, f, d, a[m + 1], 4, -1530992060),
|
||||
d = R(d, c, u, f, a[m + 4], 11, 1272893353),
|
||||
f = R(f, d, c, u, a[m + 7], 16, -155497632),
|
||||
u = R(u, f, d, c, a[m + 10], 23, -1094730640),
|
||||
c = R(c, u, f, d, a[m + 13], 4, 681279174),
|
||||
d = R(d, c, u, f, a[m + 0], 11, -358537222),
|
||||
f = R(f, d, c, u, a[m + 3], 16, -722521979),
|
||||
u = R(u, f, d, c, a[m + 6], 23, 76029189),
|
||||
c = R(c, u, f, d, a[m + 9], 4, -640364487),
|
||||
d = R(d, c, u, f, a[m + 12], 11, -421815835),
|
||||
f = R(f, d, c, u, a[m + 15], 16, 530742520),
|
||||
u = R(u, f, d, c, a[m + 2], 23, -995338651),
|
||||
c = y(c, u, f, d, a[m + 0], 6, -198630844),
|
||||
d = y(d, c, u, f, a[m + 7], 10, 1126891415),
|
||||
f = y(f, d, c, u, a[m + 14], 15, -1416354905),
|
||||
u = y(u, f, d, c, a[m + 5], 21, -57434055),
|
||||
c = y(c, u, f, d, a[m + 12], 6, 1700485571),
|
||||
d = y(d, c, u, f, a[m + 3], 10, -1894986606),
|
||||
f = y(f, d, c, u, a[m + 10], 15, -1051523),
|
||||
u = y(u, f, d, c, a[m + 1], 21, -2054922799),
|
||||
c = y(c, u, f, d, a[m + 8], 6, 1873313359),
|
||||
d = y(d, c, u, f, a[m + 15], 10, -30611744),
|
||||
f = y(f, d, c, u, a[m + 6], 15, -1560198380),
|
||||
u = y(u, f, d, c, a[m + 13], 21, 1309151649),
|
||||
c = y(c, u, f, d, a[m + 4], 6, -145523070),
|
||||
d = y(d, c, u, f, a[m + 11], 10, -1120210379),
|
||||
f = y(f, d, c, u, a[m + 2], 15, 718787259),
|
||||
u = y(u, f, d, c, a[m + 9], 21, -343485551),
|
||||
c = c + b >>> 0,
|
||||
u = u + _ >>> 0,
|
||||
f = f + g >>> 0,
|
||||
d = d + C >>> 0
|
||||
}
|
||||
return e.endian([c, u, f, d])
|
||||
};
|
||||
s._ff = function(o, i, a, l, c, u, f) {
|
||||
var d = o + (i & a | ~i & l) + (c >>> 0) + f;
|
||||
return (d << u | d >>> 32 - u) + i
|
||||
}
|
||||
,
|
||||
s._gg = function(o, i, a, l, c, u, f) {
|
||||
var d = o + (i & l | a & ~l) + (c >>> 0) + f;
|
||||
return (d << u | d >>> 32 - u) + i
|
||||
}
|
||||
,
|
||||
s._hh = function(o, i, a, l, c, u, f) {
|
||||
var d = o + (i ^ a ^ l) + (c >>> 0) + f;
|
||||
return (d << u | d >>> 32 - u) + i
|
||||
}
|
||||
,
|
||||
s._ii = function(o, i, a, l, c, u, f) {
|
||||
var d = o + (a ^ (i | ~l)) + (c >>> 0) + f;
|
||||
return (d << u | d >>> 32 - u) + i
|
||||
}
|
||||
,
|
||||
s._blocksize = 16,
|
||||
s._digestsize = 16,
|
||||
Tm.exports = function(o, i) {
|
||||
if (o == null)
|
||||
throw new Error("Illegal argument " + o);
|
||||
var a = e.wordsToBytes(s(o, i));
|
||||
return i && i.asBytes ? a : i && i.asString ? r.bytesToString(a) : e.bytesToHex(a)
|
||||
}
|
||||
}
|
||||
)();
|
||||
var cC = Tm.exports;
|
||||
var t = {
|
||||
utf8: {
|
||||
stringToBytes: function(e) {
|
||||
return nl.bin.stringToBytes(unescape(encodeURIComponent(e)))
|
||||
},
|
||||
bytesToString: function(e) {
|
||||
return decodeURIComponent(escape(nl.bin.bytesToString(e)))
|
||||
}
|
||||
},
|
||||
bin: {
|
||||
stringToBytes: function(e) {
|
||||
for (var t = [], n = 0; n < e.length; n++)
|
||||
t.push(e.charCodeAt(n) & 255);
|
||||
return t
|
||||
},
|
||||
bytesToString: function(e) {
|
||||
for (var t = [], n = 0; n < e.length; n++)
|
||||
t.push(String.fromCharCode(e[n]));
|
||||
return t.join("")
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
const hC = (e, t, n=!1) => {
|
||||
if (t.params) {
|
||||
const o = {};
|
||||
Object.keys(t.params).forEach(i => {
|
||||
t.params[i] !== void 0 && t.params[i] !== null && (o[i] = t.params[i])
|
||||
}
|
||||
),
|
||||
t.params = o
|
||||
}
|
||||
let r = {};
|
||||
const s = t.method.toLowerCase();
|
||||
if (s === "get")
|
||||
t.params = Object.assign({}, e, t.params || {});
|
||||
else if (s === "post")
|
||||
if (typeof t.data == "string") {
|
||||
let o;
|
||||
t.data.split("&").forEach(i => {
|
||||
o = i.split("="),
|
||||
r[o[0]] = o[1]
|
||||
}
|
||||
),
|
||||
r = Object.assign({}, e, r),
|
||||
t.data = Object.keys(r).map(i => `${i}=${r[i]}`).join("&")
|
||||
} else
|
||||
r = Object.assign(r, e, t.data || {}),
|
||||
t.data = r;
|
||||
return n ? t : (r = Object.assign({}, t.params, r),
|
||||
r)
|
||||
}
|
||||
|
||||
const Rm = oC(cC);
|
||||
const s = Rm(r);
|
||||
|
||||
pC = e => {
|
||||
let t = Object.keys(e).sort().map(n => {
|
||||
function r(s) {
|
||||
return Array.isArray(s) ? s.join(",") : typeof s === "object" ? JSON.stringify(s) : s
|
||||
}
|
||||
return n + r(e[n])
|
||||
}
|
||||
).join("");
|
||||
return t += Am + e.lm_s_ts + rl,
|
||||
Rm(t)
|
||||
}
|
||||
|
||||
|
||||
// final encryption function
|
||||
let CryptoJS = null;
|
||||
lm_s_key = atob('ZGQ0NmRiYjQ0MmI2ZTRiYTgxN2Q2MzQ3ZDJkZGY0OTM=');
|
||||
function requestSign(signParams, cryptoJSPath) {
|
||||
let sKey = Object.keys(signParams).sort().map(key => {
|
||||
function getValue(val) {
|
||||
if (Array.isArray(val)) {
|
||||
return val.join(',');
|
||||
}
|
||||
if (typeof val === 'object') {
|
||||
return JSON.stringify(val);
|
||||
}
|
||||
return val;
|
||||
}
|
||||
return key + getValue(signParams[key]);
|
||||
}).join('');
|
||||
|
||||
sKey += signParams.lm_s_id + signParams.lm_s_ts + lm_s_key;
|
||||
console.log(`sKey: ${sKey}`);
|
||||
CryptoJS = require(cryptoJSPath);
|
||||
return CryptoJS.MD5(sKey).toString();
|
||||
}
|
||||
|
||||
function sign(videoid, cryptoJSPath, platform='web'){
|
||||
const vali = createSignature();
|
||||
const data_e = {
|
||||
lm_s_id: Am,
|
||||
lm_s_ts: r,
|
||||
lm_s_str: s,
|
||||
lm_s_ver: 1,
|
||||
h5: 1
|
||||
};
|
||||
/* data_e example value
|
||||
const data_e = {
|
||||
lm_s_id: Am,
|
||||
lm_s_ts: "17284909009151",
|
||||
lm_s_str: "88f9777231dc2d6ac462a1d7ebf5f54e",
|
||||
lm_s_ver: 1,
|
||||
h5: 1
|
||||
};
|
||||
*/
|
||||
console.log("data_e:",data_e);
|
||||
|
||||
data_i = {
|
||||
...data_e,
|
||||
_time: new Date().valueOf(),
|
||||
thirdchannel: 6,
|
||||
videoid: videoid,
|
||||
area: 'zh',
|
||||
vali: vali
|
||||
}
|
||||
console.log("data_i:",data_i);
|
||||
|
||||
// fake lm_s_sign param value
|
||||
let lm_s_sign = pC(data_i);
|
||||
console.log(`fake lm_s_sign: ${lm_s_sign}`);
|
||||
|
||||
//finnal request params
|
||||
/*
|
||||
signParams = {
|
||||
"alias": "liveme",
|
||||
"tongdun_black_box": "iWPU21728483558afruvSVo6x0",
|
||||
"os": "android",
|
||||
"lm_s_id": "LM6000101139961122666757",
|
||||
"lm_s_ts": "17284909009151",
|
||||
"lm_s_str": "88f9777231dc2d6ac462a1d7ebf5f54e",
|
||||
"lm_s_ver": 1,
|
||||
"h5": 1,
|
||||
"_time": 1728490664651,
|
||||
"thirdchannel": 6,
|
||||
"videoid": "17284844223282059697",
|
||||
"area": "zh",
|
||||
"vali": "zH8SlBwnCm4AZWp"
|
||||
}#
|
||||
//result: 4eaf71a1ec19b49b7267e4d16e007105
|
||||
*/
|
||||
signParams = {
|
||||
"alias": "liveme",
|
||||
"tongdun_black_box": "",
|
||||
"os": platform,
|
||||
...data_i
|
||||
}
|
||||
console.log("signParams: ", signParams);
|
||||
lm_s_sign = requestSign(signParams, cryptoJSPath);
|
||||
console.log(`\x1b[32mfinal lm_s_sign: \x1b[0m${lm_s_sign}\n`);
|
||||
data = {
|
||||
...signParams,
|
||||
lm_s_sign
|
||||
}
|
||||
return data;
|
||||
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
sign
|
||||
};
|
||||
143
javascript/migu.js
Normal file
143
javascript/migu.js
Normal file
@@ -0,0 +1,143 @@
|
||||
/**
|
||||
* Function to get the ddCalcu parameter value
|
||||
* @param {string} inputUrl - The original URL before encryption
|
||||
* @returns {Promise<string>} - Returns the calculated ddCalcu value
|
||||
*/
|
||||
async function getDdCalcu(inputUrl) {
|
||||
let wasmInstance = null;
|
||||
let memory_p = null; // Uint8Array view
|
||||
let memory_h = null; // Uint32Array view
|
||||
|
||||
// Fixed parameter
|
||||
const f = 'PBTxuWiTEbUPPFcpyxs0ww==';
|
||||
|
||||
// Utility function: Convert string to UTF-8 in memory
|
||||
function stringToUTF8(string, offset) {
|
||||
const encoder = new TextEncoder();
|
||||
const encoded = encoder.encode(string);
|
||||
for (let i = 0; i < encoded.length; i++) {
|
||||
memory_p[offset + i] = encoded[i];
|
||||
}
|
||||
memory_p[offset + encoded.length] = 0; // Null-terminate
|
||||
}
|
||||
|
||||
// Utility function: Read UTF-8 string from memory address
|
||||
function UTF8ToString(offset) {
|
||||
let s = '';
|
||||
let i = 0;
|
||||
while (memory_p[offset + i]) {
|
||||
s += String.fromCharCode(memory_p[offset + i]);
|
||||
i++;
|
||||
}
|
||||
return s;
|
||||
}
|
||||
|
||||
// WASM import function stubs
|
||||
function a(e, t, r, n) {
|
||||
let s = 0;
|
||||
for (let i = 0; i < r; i++) {
|
||||
const d = memory_h[t + 4 >> 2];
|
||||
t += 8;
|
||||
s += d;
|
||||
}
|
||||
memory_h[n >> 2] = s;
|
||||
return 0;
|
||||
}
|
||||
|
||||
function b() {}
|
||||
|
||||
function c() {}
|
||||
|
||||
// Step 1: Retrieve playerVersion
|
||||
const settingsResp = await fetch('https://app-sc.miguvideo.com/common/v1/settings/H5_DetailPage');
|
||||
const settingsData = await settingsResp.json();
|
||||
const playerVersion = JSON.parse(settingsData.body.paramValue).playerVersion;
|
||||
|
||||
// Step 2: Load WASM module
|
||||
const wasmUrl = `https://www.miguvideo.com/mgs/player/prd/${playerVersion}/dist/mgprtcl.wasm`;
|
||||
const wasmResp = await fetch(wasmUrl);
|
||||
if (!wasmResp.ok) throw new Error("Failed to download WASM");
|
||||
const wasmBuffer = await wasmResp.arrayBuffer();
|
||||
|
||||
const importObject = {
|
||||
a: { a, b, c }
|
||||
};
|
||||
|
||||
const { instance } = await WebAssembly.instantiate(wasmBuffer, importObject);
|
||||
wasmInstance = instance;
|
||||
|
||||
const memory = wasmInstance.exports.d;
|
||||
memory_p = new Uint8Array(memory.buffer);
|
||||
memory_h = new Uint32Array(memory.buffer);
|
||||
|
||||
const exports = {
|
||||
CallInterface1: wasmInstance.exports.h,
|
||||
CallInterface2: wasmInstance.exports.i,
|
||||
CallInterface3: wasmInstance.exports.j,
|
||||
CallInterface4: wasmInstance.exports.k,
|
||||
CallInterface6: wasmInstance.exports.m,
|
||||
CallInterface7: wasmInstance.exports.n,
|
||||
CallInterface8: wasmInstance.exports.o,
|
||||
CallInterface9: wasmInstance.exports.p,
|
||||
CallInterface10: wasmInstance.exports.q,
|
||||
CallInterface11: wasmInstance.exports.r,
|
||||
CallInterface14: wasmInstance.exports.t,
|
||||
malloc: wasmInstance.exports.u,
|
||||
};
|
||||
|
||||
const parsedUrl = new URL(inputUrl);
|
||||
const query = Object.fromEntries(parsedUrl.searchParams);
|
||||
|
||||
const o = query.userid || '';
|
||||
const a_val = query.timestamp || '';
|
||||
const s = query.ProgramID || '';
|
||||
const u = query.Channel_ID || '';
|
||||
const v = query.puData || '';
|
||||
|
||||
// Allocate memory
|
||||
const d = exports.malloc(o.length + 1);
|
||||
const h = exports.malloc(a_val.length + 1);
|
||||
const y = exports.malloc(s.length + 1);
|
||||
const m = exports.malloc(u.length + 1);
|
||||
const g = exports.malloc(v.length + 1);
|
||||
const b_val = exports.malloc(f.length + 1);
|
||||
const E = exports.malloc(128);
|
||||
const T = exports.malloc(128);
|
||||
|
||||
// Write data to memory
|
||||
stringToUTF8(o, d);
|
||||
stringToUTF8(a_val, h);
|
||||
stringToUTF8(s, y);
|
||||
stringToUTF8(u, m);
|
||||
stringToUTF8(v, g);
|
||||
stringToUTF8(f, b_val);
|
||||
|
||||
// Call interface functions
|
||||
const S = exports.CallInterface6(); // Create context
|
||||
exports.CallInterface1(S, y, s.length);
|
||||
exports.CallInterface10(S, h, a_val.length);
|
||||
exports.CallInterface9(S, d, o.length);
|
||||
exports.CallInterface3(S, 0, 0);
|
||||
exports.CallInterface11(S, 0, 0);
|
||||
exports.CallInterface8(S, g, v.length);
|
||||
exports.CallInterface2(S, m, u.length);
|
||||
exports.CallInterface14(S, b_val, f.length, T, 128);
|
||||
|
||||
const w = UTF8ToString(T);
|
||||
const I = exports.malloc(w.length + 1);
|
||||
stringToUTF8(w, I);
|
||||
|
||||
exports.CallInterface7(S, I, w.length);
|
||||
exports.CallInterface4(S, E, 128);
|
||||
|
||||
return UTF8ToString(E);
|
||||
}
|
||||
|
||||
const url = process.argv[2];
|
||||
|
||||
getDdCalcu(url).then(result => {
|
||||
console.log(result);
|
||||
}).catch(err => {
|
||||
console.error(err);
|
||||
process.exit(1);
|
||||
});
|
||||
78
javascript/taobao-sign.js
Normal file
78
javascript/taobao-sign.js
Normal file
@@ -0,0 +1,78 @@
|
||||
function sign(e) {
|
||||
function t(e, t) {
|
||||
return e << t | e >>> 32 - t
|
||||
}
|
||||
function o(e, t) {
|
||||
var o, n, r, i, a;
|
||||
return r = 2147483648 & e,
|
||||
i = 2147483648 & t,
|
||||
a = (1073741823 & e) + (1073741823 & t),
|
||||
(o = 1073741824 & e) & (n = 1073741824 & t) ? 2147483648 ^ a ^ r ^ i : o | n ? 1073741824 & a ? 3221225472 ^ a ^ r ^ i : 1073741824 ^ a ^ r ^ i : a ^ r ^ i
|
||||
}
|
||||
function n(e, n, r, i, a, s, u) {
|
||||
return o(t(e = o(e, o(o(function(e, t, o) {
|
||||
return e & t | ~e & o
|
||||
}(n, r, i), a), u)), s), n)
|
||||
}
|
||||
function r(e, n, r, i, a, s, u) {
|
||||
return o(t(e = o(e, o(o(function(e, t, o) {
|
||||
return e & o | t & ~o
|
||||
}(n, r, i), a), u)), s), n)
|
||||
}
|
||||
function i(e, n, r, i, a, s, u) {
|
||||
return o(t(e = o(e, o(o(function(e, t, o) {
|
||||
return e ^ t ^ o
|
||||
}(n, r, i), a), u)), s), n)
|
||||
}
|
||||
function a(e, n, r, i, a, s, u) {
|
||||
return o(t(e = o(e, o(o(function(e, t, o) {
|
||||
return t ^ (e | ~o)
|
||||
}(n, r, i), a), u)), s), n)
|
||||
}
|
||||
function s(e) {
|
||||
var t, o = "", n = "";
|
||||
for (t = 0; 3 >= t; t++)
|
||||
o += (n = "0" + (e >>> 8 * t & 255).toString(16)).substr(n.length - 2, 2);
|
||||
return o
|
||||
}
|
||||
var u, l, d, c, p, f, h, m, y, g;
|
||||
for (g = function(e) {
|
||||
for (var t = e.length, o = t + 8, n = 16 * ((o - o % 64) / 64 + 1), r = Array(n - 1), i = 0, a = 0; t > a; )
|
||||
i = a % 4 * 8,
|
||||
r[(a - a % 4) / 4] |= e.charCodeAt(a) << i,
|
||||
a++;
|
||||
return i = a % 4 * 8,
|
||||
r[(a - a % 4) / 4] |= 128 << i,
|
||||
r[n - 2] = t << 3,
|
||||
r[n - 1] = t >>> 29,
|
||||
r
|
||||
}(e = function(e) {
|
||||
var t = String.fromCharCode;
|
||||
e = e.replace(/\r\n/g, "\n");
|
||||
for (var o, n = "", r = 0; r < e.length; r++)
|
||||
128 > (o = e.charCodeAt(r)) ? n += t(o) : o > 127 && 2048 > o ? (n += t(o >> 6 | 192),
|
||||
n += t(63 & o | 128)) : (n += t(o >> 12 | 224),
|
||||
n += t(o >> 6 & 63 | 128),
|
||||
n += t(63 & o | 128));
|
||||
return n
|
||||
}(e)),
|
||||
f = 1732584193,
|
||||
h = 4023233417,
|
||||
m = 2562383102,
|
||||
y = 271733878,
|
||||
u = 0; u < g.length; u += 16)
|
||||
l = f,
|
||||
d = h,
|
||||
c = m,
|
||||
p = y,
|
||||
h = a(h = a(h = a(h = a(h = i(h = i(h = i(h = i(h = r(h = r(h = r(h = r(h = n(h = n(h = n(h = n(h, m = n(m, y = n(y, f = n(f, h, m, y, g[u + 0], 7, 3614090360), h, m, g[u + 1], 12, 3905402710), f, h, g[u + 2], 17, 606105819), y, f, g[u + 3], 22, 3250441966), m = n(m, y = n(y, f = n(f, h, m, y, g[u + 4], 7, 4118548399), h, m, g[u + 5], 12, 1200080426), f, h, g[u + 6], 17, 2821735955), y, f, g[u + 7], 22, 4249261313), m = n(m, y = n(y, f = n(f, h, m, y, g[u + 8], 7, 1770035416), h, m, g[u + 9], 12, 2336552879), f, h, g[u + 10], 17, 4294925233), y, f, g[u + 11], 22, 2304563134), m = n(m, y = n(y, f = n(f, h, m, y, g[u + 12], 7, 1804603682), h, m, g[u + 13], 12, 4254626195), f, h, g[u + 14], 17, 2792965006), y, f, g[u + 15], 22, 1236535329), m = r(m, y = r(y, f = r(f, h, m, y, g[u + 1], 5, 4129170786), h, m, g[u + 6], 9, 3225465664), f, h, g[u + 11], 14, 643717713), y, f, g[u + 0], 20, 3921069994), m = r(m, y = r(y, f = r(f, h, m, y, g[u + 5], 5, 3593408605), h, m, g[u + 10], 9, 38016083), f, h, g[u + 15], 14, 3634488961), y, f, g[u + 4], 20, 3889429448), m = r(m, y = r(y, f = r(f, h, m, y, g[u + 9], 5, 568446438), h, m, g[u + 14], 9, 3275163606), f, h, g[u + 3], 14, 4107603335), y, f, g[u + 8], 20, 1163531501), m = r(m, y = r(y, f = r(f, h, m, y, g[u + 13], 5, 2850285829), h, m, g[u + 2], 9, 4243563512), f, h, g[u + 7], 14, 1735328473), y, f, g[u + 12], 20, 2368359562), m = i(m, y = i(y, f = i(f, h, m, y, g[u + 5], 4, 4294588738), h, m, g[u + 8], 11, 2272392833), f, h, g[u + 11], 16, 1839030562), y, f, g[u + 14], 23, 4259657740), m = i(m, y = i(y, f = i(f, h, m, y, g[u + 1], 4, 2763975236), h, m, g[u + 4], 11, 1272893353), f, h, g[u + 7], 16, 4139469664), y, f, g[u + 10], 23, 3200236656), m = i(m, y = i(y, f = i(f, h, m, y, g[u + 13], 4, 681279174), h, m, g[u + 0], 11, 3936430074), f, h, g[u + 3], 16, 3572445317), y, f, g[u + 6], 23, 76029189), m = i(m, y = i(y, f = i(f, h, m, y, g[u + 9], 4, 3654602809), h, m, g[u + 12], 11, 3873151461), f, h, g[u + 15], 16, 530742520), y, f, g[u + 2], 23, 3299628645), m = a(m, y = a(y, f = a(f, h, m, y, g[u + 0], 6, 4096336452), h, m, g[u + 7], 10, 1126891415), f, h, g[u + 14], 15, 2878612391), y, f, g[u + 5], 21, 4237533241), m = a(m, y = a(y, f = a(f, h, m, y, g[u + 12], 6, 1700485571), h, m, g[u + 3], 10, 2399980690), f, h, g[u + 10], 15, 4293915773), y, f, g[u + 1], 21, 2240044497), m = a(m, y = a(y, f = a(f, h, m, y, g[u + 8], 6, 1873313359), h, m, g[u + 15], 10, 4264355552), f, h, g[u + 6], 15, 2734768916), y, f, g[u + 13], 21, 1309151649), m = a(m, y = a(y, f = a(f, h, m, y, g[u + 4], 6, 4149444226), h, m, g[u + 11], 10, 3174756917), f, h, g[u + 2], 15, 718787259), y, f, g[u + 9], 21, 3951481745),
|
||||
f = o(f, l),
|
||||
h = o(h, d),
|
||||
m = o(m, c),
|
||||
y = o(y, p);
|
||||
return (s(f) + s(h) + s(m) + s(y)).toLowerCase()
|
||||
}
|
||||
|
||||
// 正确sign值:05748e8359cd3e6deaab02d15caafc11
|
||||
// var sg =sign('5655b7041ca049730330701082886efd&1719411639403&12574478&{"componentKey":"wp_pc_shop_basic_info","params":"{\\"memberId\\":\\"b2b-22133374292418351a\\"}"}')
|
||||
// console.log(sg)
|
||||
564
javascript/x-bogus.js
Normal file
564
javascript/x-bogus.js
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user