JS代码的混淆与反混淆
下载了一个js文件查看里面源码发现是类似这样的:
function _0x2091x4() {
$(_0x89fd[11])[_0x89fd[10]](_0x89fd[16])[_0x89fd[15]]();
$(_0x89fd[11])[_0x89fd[10]](_0x89fd[4])[_0x89fd[17]](0);
if (window[_0x89fd[18]] <= 768) {
_0x2091x7();
_0x2091x6();
if (_0x2091x3 == 0) {
$(_0x89fd[19])[_0x89fd[17]](0);
};
} else {
_0x2091x8();
_0x2091x5();
};
};
上面的代码就是被混淆加密过的js代码了,基本上来说没有任何可读性,作用就是为了保护代码,防止被人随意窃取代码,适合前端保护自己的代码,当然,这样也能在一定程度上压缩我们的代码,提高代码的下载速度。
需要混淆的话可以去网上查找相关工具,有很多的在线混淆代码网站,但是要注意,有时候这种加密混淆会影响代码的执行,并且对后期的维护造成很大的困扰。
如果是拿到别人的混淆js代码,那么肯定想知道能不能反向,在这里要注意的是混淆跟加密不一样,加密理论上可以解密,而混淆是不可逆的,混淆后代码就变成天书了,无法轻易逆向破解,这样确实可以达到保护代码的目的,当然了,混淆也不是绝对的,知道了算法,还是有希望能够反向的。
代码 2020-05-26 09:29:12 通过 网页 浏览(2520)
共有0条评论!