1.全国空气质量在线平台
2.逆向js代码
const askCju6cmMLz = "apAteRdhDd5i5n74";//AESkey,可自定义
const asieXomd2dAl = "bN8izWwuwRjjA0pH";//密钥偏移量IV,可自定义
const ackWpSYGqWDU = "dOzNkylRKkmvJ8WP";//AESkey,可自定义
const aciPXJAqV8bc = "fS6yu6Kz72UWOqLm";//密钥偏移量IV,可自定义
const dskq6mV934LL = "hY8XWvmotJ7yhyBV";//DESkey,可自定义
const dsi68kk2Mig9 = "xCYtuanHBbJFWlKg";//密钥偏移量IV,可自定义
const dckmQMBceyd6 = "ougX3aSyswLitv49";//DESkey,可自定义
const dciNka5Pmv4x = "pebJx2rKU7WTkBP6";//密钥偏移量IV,可自定义
const aes_local_key = ‘emhlbnFpcGFsbWtleQ==‘;
const aes_local_iv = ‘emhlbnFpcGFsbWl2‘;
var CryptoJS = require(‘./crypto-js‘);
function hex_md5(a) {
return binl2hex(core_md5(str2binl(a), a.length * chrsz))
}
function b64_md5(a) {
return binl2b64(core_md5(str2binl(a), a.length * chrsz))
}
function str_md5(a) {
return binl2str(core_md5(str2binl(a), a.length * chrsz))
}
function hex_hmac_md5(a, b) {
return binl2hex(core_hmac_md5(a, b))
}
function b64_hmac_md5(a, b) {
return binl2b64(core_hmac_md5(a, b))
}
function str_hmac_md5(a, b) {
return binl2str(core_hmac_md5(a, b))
}
function md5_vm_test() {
return "900150983cd24fb0d6963f7d28e17f72" == hex_md5("abc")
}
function core_md5(a, b) {
var c, d, e, f, g, h, i, j, k;
for (a[b >> 5] |= 128 << b % 32,
a[(b + 64 >>> 9 << 4) + 14] = b,
c = 1732584193,
d = -271733879,
e = -1732584194,
f = 271733878,
g = 0; g < a.length; g += 16)
h = c,
i = d,
j = e,
k = f,
c = md5_ff(c, d, e, f, a[g + 0], 7, -680876936),
f = md5_ff(f, c, d, e, a[g + 1], 12, -389564586),
e = md5_ff(e, f, c, d, a[g + 2], 17, 606105819),
d = md5_ff(d, e, f, c, a[g + 3], 22, -1044525330),
c = md5_ff(c, d, e, f, a[g + 4], 7, -176418897),
f = md5_ff(f, c, d, e, a[g + 5], 12, 1200080426),
e = md5_ff(e, f, c, d, a[g + 6], 17, -1473231341),
d = md5_ff(d, e, f, c, a[g + 7], 22, -45705983),
c = md5_ff(c, d, e, f, a[g + 8], 7, 1770035416),
f = md5_ff(f, c, d, e, a[g + 9], 12, -1958414417),
e = md5_ff(e, f, c, d, a[g + 10], 17, -42063),
d = md5_ff(d, e, f, c, a[g + 11], 22, -1990404162),
c = md5_ff(c, d, e, f, a[g + 12], 7, 1804603682),
f = md5_ff(f, c, d, e, a[g + 13], 12, -40341101),
e = md5_ff(e, f, c, d, a[g + 14], 17, -1502002290),
d = md5_ff(d, e, f, c, a[g + 15], 22, 1236535329),
c = md5_gg(c, d, e, f, a[g + 1], 5, -165796510),
f = md5_gg(f, c, d, e, a[g + 6], 9, -1069501632),
e = md5_gg(e, f, c, d, a[g + 11], 14, 643717713),
d = md5_gg(d, e, f, c, a[g + 0], 20, -373897302),
c = md5_gg(c, d, e, f, a[g + 5], 5, -701558691),
f = md5_gg(f, c, d, e, a[g + 10], 9, 38016083),
e = md5_gg(e, f, c, d, a[g + 15], 14, -660478335),
d = md5_gg(d, e, f, c, a[g + 4], 20, -405537848),
c = md5_gg(c, d, e, f, a[g + 9], 5, 568446438),
f = md5_gg(f, c, d, e, a[g + 14], 9, -1019803690),
e = md5_gg(e, f, c, d, a[g + 3], 14, -187363961),
d = md5_gg(d, e, f, c, a[g + 8], 20, 1163531501),
c = md5_gg(c, d, e, f, a[g + 13], 5, -1444681467),
f = md5_gg(f, c, d, e, a[g + 2], 9, -51403784),
e = md5_gg(e, f, c, d, a[g + 7], 14, 1735328473),
d = md5_gg(d, e, f, c, a[g + 12], 20, -1926607734),
c = md5_hh(c, d, e, f, a[g + 5], 4, -378558),
f = md5_hh(f, c, d, e, a[g + 8], 11, -2022574463),
e = md5_hh(e, f, c, d, a[g + 11], 16, 1839030562),
d = md5_hh(d, e, f, c, a[g + 14], 23, -35309556),
c = md5_hh(c, d, e, f, a[g + 1], 4, -1530992060),
f = md5_hh(f, c, d, e, a[g + 4], 11, 1272893353),
e = md5_hh(e, f, c, d, a[g + 7], 16, -155497632),
d = md5_hh(d, e, f, c, a[g + 10], 23, -1094730640),
c = md5_hh(c, d, e, f, a[g + 13], 4, 681279174),
f = md5_hh(f, c, d, e, a[g + 0], 11, -358537222),
e = md5_hh(e, f, c, d, a[g + 3], 16, -722521979),
d = md5_hh(d, e, f, c, a[g + 6], 23, 76029189),
c = md5_hh(c, d, e, f, a[g + 9], 4, -640364487),
f = md5_hh(f, c, d, e, a[g + 12], 11, -421815835),
e = md5_hh(e, f, c, d, a[g + 15], 16, 530742520),
d = md5_hh(d, e, f, c, a[g + 2], 23, -995338651),
c = md5_ii(c, d, e, f, a[g + 0], 6, -198630844),
f = md5_ii(f, c, d, e, a[g + 7], 10, 1126891415),
e = md5_ii(e, f, c, d, a[g + 14], 15, -1416354905),
d = md5_ii(d, e, f, c, a[g + 5], 21, -57434055),
c = md5_ii(c, d, e, f, a[g + 12], 6, 1700485571),
f = md5_ii(f, c, d, e, a[g + 3], 10, -1894986606),
e = md5_ii(e, f, c, d, a[g + 10], 15, -1051523),
d = md5_ii(d, e, f, c, a[g + 1], 21, -2054922799),
c = md5_ii(c, d, e, f, a[g + 8], 6, 1873313359),
f = md5_ii(f, c, d, e, a[g + 15], 10, -30611744),
e = md5_ii(e, f, c, d, a[g + 6], 15, -1560198380),
d = md5_ii(d, e, f, c, a[g + 13], 21, 1309151649),
c = md5_ii(c, d, e, f, a[g + 4], 6, -145523070),
f = md5_ii(f, c, d, e, a[g + 11], 10, -1120210379),
e = md5_ii(e, f, c, d, a[g + 2], 15, 718787259),
d = md5_ii(d, e, f, c, a[g + 9], 21, -343485551),
c = safe_add(c, h),
d = safe_add(d, i),
e = safe_add(e, j),
f = safe_add(f, k);
return Array(c, d, e, f)
}
function md5_cmn(a, b, c, d, e, f) {
return safe_add(bit_rol(safe_add(safe_add(b, a), safe_add(d, f)), e), c)
}
function md5_ff(a, b, c, d, e, f, g) {
return md5_cmn(b & c | ~b & d, a, b, e, f, g)
}
function md5_gg(a, b, c, d, e, f, g) {
return md5_cmn(b & d | c & ~d, a, b, e, f, g)
}
function md5_hh(a, b, c, d, e, f, g) {
return md5_cmn(b ^ c ^ d, a, b, e, f, g)
}
function md5_ii(a, b, c, d, e, f, g) {
return md5_cmn(c ^ (b | ~d), a, b, e, f, g)
}
function core_hmac_md5(a, b) {
var d, e, f, g, c = str2binl(a);
for (c.length > 16 && (c = core_md5(c, a.length * chrsz)),
d = Array(16),
e = Array(16),
f = 0; 16 > f; f++)
d[f] = 909522486 ^ c[f],
e[f] = 1549556828 ^ c[f];
return g = core_md5(d.concat(str2binl(b)), 512 + b.length * chrsz),
core_md5(e.concat(g), 640)
}
function safe_add(a, b) {
var c = (65535 & a) + (65535 & b)
, d = (a >> 16) + (b >> 16) + (c >> 16);
return d << 16 | 65535 & c
}
function bit_rol(a, b) {
return a << b | a >>> 32 - b
}
function str2binl(a) {
var d, b = Array(), c = (1 << chrsz) - 1;
for (d = 0; d < a.length * chrsz; d += chrsz)
b[d >> 5] |= (a.charCodeAt(d / chrsz) & c) << d % 32;
return b
}
function binl2str(a) {
var d, b = "", c = (1 << chrsz) - 1;
for (d = 0; d < 32 * a.length; d += chrsz)
b += String.fromCharCode(a[d >> 5] >>> d % 32 & c);
return b
}
function binl2hex(a) {
var d, b = hexcase ? "0123456789ABCDEF" : "0123456789abcdef", c = "";
for (d = 0; d < 4 * a.length; d++)
c += b.charAt(15 & a[d >> 2] >> 8 * (d % 4) + 4) + b.charAt(15 & a[d >> 2] >> 8 * (d % 4));
return c
}
function binl2b64(a) {
var d, e, f, b = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", c = "";
for (d = 0; d < 4 * a.length; d += 3)
for (e = (255 & a[d >> 2] >> 8 * (d % 4)) << 16 | (255 & a[d + 1 >> 2] >> 8 * ((d + 1) % 4)) << 8 | 255 & a[d + 2 >> 2] >> 8 * ((d + 2) % 4),
f = 0; 4 > f; f++)
c += 8 * d + 6 * f > 32 * a.length ? b64pad : b.charAt(63 & e >> 6 * (3 - f));
return c
}
function encode_param(a) {
var b = new Base64;
return b.encode(a)
}
function encode_secret() {
var b, a = appId;
for (b = 0; b < arguments.length; b++)
a += arguments[b];
return a = a.replace(/\s/g, ""),
hex_md5(a)
}
function decode_result(a) {
var b = new Base64;
return b.decode(b.decode(b.decode(a)))
}
var hexcase = 0
, b64pad = ""
, chrsz = 8
, appId = "b73a4aaa989f54997ef7b9c42b6b4b29";
var hexcase = 0;
var b64pad = "";
function hex_md5(s) {
return rstr2hex(rstr_md5(str2rstr_utf8(s)))
}
function b64_md5(s) {
return rstr2b64(rstr_md5(str2rstr_utf8(s)))
}
function any_md5(s, e) {
return rstr2any(rstr_md5(str2rstr_utf8(s)), e)
}
function hex_hmac_md5(k, d) {
return rstr2hex(rstr_hmac_md5(str2rstr_utf8(k), str2rstr_utf8(d)))
}
function b64_hmac_md5(k, d) {
return rstr2b64(rstr_hmac_md5(str2rstr_utf8(k), str2rstr_utf8(d)))
}
function any_hmac_md5(k, d, e) {
return rstr2any(rstr_hmac_md5(str2rstr_utf8(k), str2rstr_utf8(d)), e)
}
function md5_vm_test() {
return hex_md5("abc").toLowerCase() == "900150983cd24fb0d6963f7d28e17f72"
}
function rstr_md5(s) {
return binl2rstr(binl_md5(rstr2binl(s), s.length * 8))
}
function rstr_hmac_md5(key, data) {
var bkey = rstr2binl(key);
if (bkey.length > 16)
bkey = binl_md5(bkey, key.length * 8);
var ipad = Array(16)
, opad = Array(16);
for (var i = 0; i < 16; i++) {
ipad[i] = bkey[i] ^ 0x36363636;
opad[i] = bkey[i] ^ 0x5C5C5C5C
}
var hash = binl_md5(ipad.concat(rstr2binl(data)), 512 + data.length * 8);
return binl2rstr(binl_md5(opad.concat(hash), 512 + 128))
}
function rstr2hex(input) {
try {
hexcase
} catch (e) {
hexcase = 0
}
var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
var output = "";
var x;
for (var i = 0; i < input.length; i++) {
x = input.charCodeAt(i);
output += hex_tab.charAt((x >>> 4) & 0x0F) + hex_tab.charAt(x & 0x0F)
}
return output
}
function rstr2b64(input) {
try {
b64pad
} catch (e) {
b64pad = ‘‘
}
var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var output = "";
var len = input.length;
for (var i = 0; i < len; i += 3) {
var triplet = (input.charCodeAt(i) << 16) | (i + 1 < len ? input.charCodeAt(i + 1) << 8 : 0) | (i + 2 < len ? input.charCodeAt(i + 2) : 0);
for (var j = 0; j < 4; j++) {
if (i * 8 + j * 6 > input.length * 8)
output += b64pad;
else
output += tab.charAt((triplet >>> 6 * (3 - j)) & 0x3F)
}
}
return output
}
function rstr2any(input, encoding) {
var divisor = encoding.length;
var i, j, q, x, quotient;
var dividend = Array(Math.ceil(input.length / 2));
for (i = 0; i < dividend.length; i++) {
dividend[i] = (input.charCodeAt(i * 2) << 8) | input.charCodeAt(i * 2 + 1)
}
var full_length = Math.ceil(input.length * 8 / (Math.log(encoding.length) / Math.log(2)));
var remainders = Array(full_length);
for (j = 0; j < full_length; j++) {
quotient = Array();
x = 0;
for (i = 0; i < dividend.length; i++) {
x = (x << 16) + dividend[i];
q = Math.floor(x / divisor);
x -= q * divisor;
if (quotient.length > 0 || q > 0)
quotient[quotient.length] = q
}
remainders[j] = x;
dividend = quotient
}
var output = "";
for (i = remainders.length - 1; i >= 0; i--)
output += encoding.charAt(remainders[i]);
return output
}
function str2rstr_utf8(input) {
var output = "";
var i = -1;
var x, y;
while (++i < input.length) {
x = input.charCodeAt(i);
y = i + 1 < input.length ? input.charCodeAt(i + 1) : 0;
if (0xD800 <= x && x <= 0xDBFF && 0xDC00 <= y && y <= 0xDFFF) {
x = 0x10000 + ((x & 0x03FF) << 10) + (y & 0x03FF);
i++
}
if (x <= 0x7F)
output += String.fromCharCode(x);
else if (x <= 0x7FF)
output += String.fromCharCode(0xC0 | ((x >>> 6) & 0x1F), 0x80 | (x & 0x3F));
else if (x <= 0xFFFF)
output += String.fromCharCode(0xE0 | ((x >>> 12) & 0x0F), 0x80 | ((x >>> 6) & 0x3F), 0x80 | (x & 0x3F));
else if (x <= 0x1FFFFF)
output += String.fromCharCode(0xF0 | ((x >>> 18) & 0x07), 0x80 | ((x >>> 12) & 0x3F), 0x80 | ((x >>> 6) & 0x3F), 0x80 | (x & 0x3F))
}
return output
}
function str2rstr_utf16le(input) {
var output = "";
for (var i = 0; i < input.length; i++)
output += String.fromCharCode(input.charCodeAt(i) & 0xFF, (input.charCodeAt(i) >>> 8) & 0xFF);
return output
}
function str2rstr_utf16be(input) {
var output = "";
for (var i = 0; i < input.length; i++)
output += String.fromCharCode((input.charCodeAt(i) >>> 8) & 0xFF, input.charCodeAt(i) & 0xFF);
return output
}
function rstr2binl(input) {
var output = Array(input.length >> 2);
for (var i = 0; i < output.length; i++)
output[i] = 0;
for (var i = 0; i < input.length * 8; i += 8)
output[i >> 5] |= (input.charCodeAt(i / 8) & 0xFF) << (i % 32);
return output
}
function binl2rstr(input) {
var output = "";
for (var i = 0; i < input.length * 32; i += 8)
output += String.fromCharCode((input[i >> 5] >>> (i % 32)) & 0xFF);
return output
}
function binl_md5(x, len) {
x[len >> 5] |= 0x80 << ((len) % 32);
x[(((len + 64) >>> 9) << 4) + 14] = len;
var a = 1732584193;
var b = -271733879;
var c = -1732584194;
var d = 271733878;
for (var i = 0; i < x.length; i += 16) {
var olda = a;
var oldb = b;
var oldc = c;
var oldd = d;
a = md5_ff(a, b, c, d, x[i + 0], 7, -680876936);
d = md5_ff(d, a, b, c, x[i + 1], 12, -389564586);
c = md5_ff(c, d, a, b, x[i + 2], 17, 606105819);
b = md5_ff(b, c, d, a, x[i + 3], 22, -1044525330);
a = md5_ff(a, b, c, d, x[i + 4], 7, -176418897);
d = md5_ff(d, a, b, c, x[i + 5], 12, 1200080426);
c = md5_ff(c, d, a, b, x[i + 6], 17, -1473231341);
b = md5_ff(b, c, d, a, x[i + 7], 22, -45705983);
a = md5_ff(a, b, c, d, x[i + 8], 7, 1770035416);
d = md5_ff(d, a, b, c, x[i + 9], 12, -1958414417);
c = md5_ff(c, d, a, b, x[i + 10], 17, -42063);
b = md5_ff(b, c, d, a, x[i + 11], 22, -1990404162);
a = md5_ff(a, b, c, d, x[i + 12], 7, 1804603682);
d = md5_ff(d, a, b, c, x[i + 13], 12, -40341101);
c = md5_ff(c, d, a, b, x[i + 14], 17, -1502002290);
b = md5_ff(b, c, d, a, x[i + 15], 22, 1236535329);
a = md5_gg(a, b, c, d, x[i + 1], 5, -165796510);
d = md5_gg(d, a, b, c, x[i + 6], 9, -1069501632);
c = md5_gg(c, d, a, b, x[i + 11], 14, 643717713);
b = md5_gg(b, c, d, a, x[i + 0], 20, -373897302);
a = md5_gg(a, b, c, d, x[i + 5], 5, -701558691);
d = md5_gg(d, a, b, c, x[i + 10], 9, 38016083);
c = md5_gg(c, d, a, b, x[i + 15], 14, -660478335);
b = md5_gg(b, c, d, a, x[i + 4], 20, -405537848);
a = md5_gg(a, b, c, d, x[i + 9], 5, 568446438);
d = md5_gg(d, a, b, c, x[i + 14], 9, -1019803690);
c = md5_gg(c, d, a, b, x[i + 3], 14, -187363961);
b = md5_gg(b, c, d, a, x[i + 8], 20, 1163531501);
a = md5_gg(a, b, c, d, x[i + 13], 5, -1444681467);
d = md5_gg(d, a, b, c, x[i + 2], 9, -51403784);
c = md5_gg(c, d, a, b, x[i + 7], 14, 1735328473);
b = md5_gg(b, c, d, a, x[i + 12], 20, -1926607734);
a = md5_hh(a, b, c, d, x[i + 5], 4, -378558);
d = md5_hh(d, a, b, c, x[i + 8], 11, -2022574463);
c = md5_hh(c, d, a, b, x[i + 11], 16, 1839030562);
b = md5_hh(b, c, d, a, x[i + 14], 23, -35309556);
a = md5_hh(a, b, c, d, x[i + 1], 4, -1530992060);
d = md5_hh(d, a, b, c, x[i + 4], 11, 1272893353);
c = md5_hh(c, d, a, b, x[i + 7], 16, -155497632);
b = md5_hh(b, c, d, a, x[i + 10], 23, -1094730640);
a = md5_hh(a, b, c, d, x[i + 13], 4, 681279174);
d = md5_hh(d, a, b, c, x[i + 0], 11, -358537222);
c = md5_hh(c, d, a, b, x[i + 3], 16, -722521979);
b = md5_hh(b, c, d, a, x[i + 6], 23, 76029189);
a = md5_hh(a, b, c, d, x[i + 9], 4, -640364487);
d = md5_hh(d, a, b, c, x[i + 12], 11, -421815835);
c = md5_hh(c, d, a, b, x[i + 15], 16, 530742520);
b = md5_hh(b, c, d, a, x[i + 2], 23, -995338651);
a = md5_ii(a, b, c, d, x[i + 0], 6, -198630844);
d = md5_ii(d, a, b, c, x[i + 7], 10, 1126891415);
c = md5_ii(c, d, a, b, x[i + 14], 15, -1416354905);
b = md5_ii(b, c, d, a, x[i + 5], 21, -57434055);
a = md5_ii(a, b, c, d, x[i + 12], 6, 1700485571);
d = md5_ii(d, a, b, c, x[i + 3], 10, -1894986606);
c = md5_ii(c, d, a, b, x[i + 10], 15, -1051523);
b = md5_ii(b, c, d, a, x[i + 1], 21, -2054922799);
a = md5_ii(a, b, c, d, x[i + 8], 6, 1873313359);
d = md5_ii(d, a, b, c, x[i + 15], 10, -30611744);
c = md5_ii(c, d, a, b, x[i + 6], 15, -1560198380);
b = md5_ii(b, c, d, a, x[i + 13], 21, 1309151649);
a = md5_ii(a, b, c, d, x[i + 4], 6, -145523070);
d = md5_ii(d, a, b, c, x[i + 11], 10, -1120210379);
c = md5_ii(c, d, a, b, x[i + 2], 15, 718787259);
b = md5_ii(b, c, d, a, x[i + 9], 21, -343485551);
a = safe_add(a, olda);
b = safe_add(b, oldb);
c = safe_add(c, oldc);
d = safe_add(d, oldd)
}
return Array(a, b, c, d)
}
function md5_cmn(q, a, b, x, s, t) {
return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b)
}
function md5_ff(a, b, c, d, x, s, t) {
return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t)
}
function md5_gg(a, b, c, d, x, s, t) {
return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t)
}
function md5_hh(a, b, c, d, x, s, t) {
return md5_cmn(b ^ c ^ d, a, b, x, s, t)
}
function md5_ii(a, b, c, d, x, s, t) {
return md5_cmn(c ^ (b | (~d)), a, b, x, s, t)
}
function safe_add(x, y) {
var lsw = (x & 0xFFFF) + (y & 0xFFFF);
var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
return (msw << 16) | (lsw & 0xFFFF)
}
function bit_rol(num, cnt) {
return (num << cnt) | (num >>> (32 - cnt))
}
function ObjectSort(obj) {
var newObject = {};
Object.keys(obj).sort().map(function(key){
newObject[key] = obj[key];
});
return newObject;
}
function base64(param){
var res = new Buffer(param).toString(‘base64‘);
return res
}
function jiami(method, obj){
var appId = ‘baec98a73c1bff796603cb2fa9d6d449‘;
var clienttype = ‘WEB‘;
var timestamp = new Date().getTime();
// console.log(method, obj,ObjectSort(obj),appId + method + timestamp + ‘WEIXIN‘ + JSON.stringify(ObjectSort(obj)));
var param = {
appId: appId,
method: method,
timestamp: timestamp,
clienttype: clienttype,
object: obj,
secret: hex_md5(appId + method + timestamp + clienttype + JSON.stringify(ObjectSort(obj)))
};
// console.log(param.secret)
param = base64(JSON.stringify(param));
// console.log(param)
return param;
}
obj = {city: "东莞", type: "HOUR", startTime: "2021-03-21 09:00:00", endTime: "2021-03-22 12:00:00"}
// 请求参数加密
req_param = jiami("GETDETAIL", obj)
console.log(req_param)
// -----------------------------------------解密------------------------------------------------------
// 返回的密文数据
data = ‘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‘
function AESdecrypt(text, key, iv) {
var secretkey = (CryptoJS.MD5(key).toString()).substr(16, 16);
var secretiv = (CryptoJS.MD5(iv).toString()).substr(0, 16);
secretkey = CryptoJS.enc.Utf8.parse(secretkey);
secretiv = CryptoJS.enc.Utf8.parse(secretiv);
var result = CryptoJS.AES.decrypt(text, secretkey, {
iv: secretiv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
return result.toString(CryptoJS.enc.Utf8);
}
function DESdecrypt(text, key, iv){
var secretkey = (CryptoJS.MD5(key).toString()).substr(0, 16);
var secretiv = (CryptoJS.MD5(iv).toString()).substr(24, 8);
secretkey = CryptoJS.enc.Utf8.parse(secretkey);
secretiv = CryptoJS.enc.Utf8.parse(secretiv);
var result = CryptoJS.DES.decrypt(text, secretkey, {
iv: secretiv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
return result.toString(CryptoJS.enc.Utf8);
}
function BASE64decrypt(text){
var b = new Buffer(text, ‘base64‘)
var s = b.toString();
return s
}
// 数据解密函数
function jiemi(data) {
data = AESdecrypt(data, askCju6cmMLz, asieXomd2dAl);
data = DESdecrypt(data, dskq6mV934LL, dsi68kk2Mig9);
data = BASE64decrypt(data);
return data;
}
console.log(jiemi(data))