如何解码这个JS?我知道它做了什么(用警告检查它)并想要解密和编辑它。我该怎么办?
这是什么类型的加密?我知道那里有很多解密器,但没有一个能够解密这个解密器。
BTW我是新手。
function xViewState() {
var a = 0,
m, v, t, z, x = new Array('9091968376', '8887918192818786347374918784939277359287883421333333338896', '877886888787', '949990793917947998942577939317'),
l = x.length;
while (++a <= l) {
m = x[l - a];
t = z = '';
for (v = 0; v < m.length;) {
t += m.charAt(v++);
if (t.length == 2) {
z += String.fromCharCode(parseInt(t) + 25 - l + a);
t = '';
}
}
x[l - a] = z;
}
document.write('<' + x[0] + ' ' + x[4] + '>.' + x[2] + '{' + x[1] + '}</' + x[0] + '>');
}
xViewState();
答案 0 :(得分:0)
这不是加密,而是混淆。现在你知道它写出了什么,失去了混淆,然后写出你想要的东西......
document.write('<style undefined>.yourstylename{position:absolute;top:-9999px}</style>');
混淆的工作原理是简单地列出所涉及的所有内容的ASCII码,偏移约20(每个数组元素不同),表示为2位十进制数。这是非常基本的。
因此:
"style"
-> 115, 116, 121, 108, 101 (ASCII codes)
-> 90, 91, 96, 83, 76 (offset of 25 in this case)