23 lines
1.1 KiB
TypeScript
23 lines
1.1 KiB
TypeScript
const pako = require('pako');
|
|
|
|
const value = "a/lpZGluZ2VjbBP9IAahQyHll2u4zSdk+eDEshxAXrKZAKBYXiuIYCAnNNRpnrEIBW5XO5a6x/6q21A6RLsYMsZ3law1yXl74NG7eMMEtJHauEYtK4TC8XsM24SQF8VZlYfF1mIU3dx2gJkGNBULa9wo3Dd4YOyA9mJfz5t+oPHPy80BQ5AAn/0II58Ndl+cyATaep28EaPY5NRd9jM+Z8U9scqGSACO3+3XbzEGaIqlY6tJV3Ajt4QYdsf7vVd5HiWzSQcLJGc45F/uT8/A9A9Qb8ABjlHkJva/HuDv9TezGyxKHvW/2/w0oljydYbJSCRKcAHBntf/QEBIPaARhqR57rwrCvp8lyHSyAJxT2I3UFMVwyuCdj9bwYBpnY0SrCNHbU+Po+KcrW2q3SWG988c1rcCY6XEMdoCLSgF/dry0ZHMQVrehI5d7wjATyvFnn9NM3htehPuqqckjgRh+fs/jSU5A5NyUdStfXBtZ2U="
|
|
|
|
const key = 'tradingeconomics-charts-core-api-key'
|
|
|
|
const testFunc = function(e, k) {
|
|
console.log('testFunc called with:', e, k);
|
|
const a = atob(e)
|
|
, n = new Uint8Array(a.length);
|
|
console.log('Decoded base64 string:', a);
|
|
for (let e = 0; e < a.length; e++)
|
|
{n[e] = a.charCodeAt(e);}
|
|
const i = (new TextEncoder).encode(k);
|
|
console.log('Encoded key:', i);
|
|
for (let e = 0; e < n.length; e++)
|
|
{n[e] ^= i[e % i.length];}
|
|
console.log('XORed data:', n);
|
|
return pako.inflate(n, {to :'string'});
|
|
}
|
|
|
|
const result = testFunc(value, key);
|
|
console.log(JSON.parse(result.toString()));
|