使用javascript-obfuscator进行JS的(批量)最小化和混淆
javascript-obfuscator项目地址:
使用
-
安装
NPM
(node.js) -
安装
javascript-obfuscator
npm install javascript-obfuscator -g
-
最小化并混淆文件
javascript-obfuscator input_file_name.js
执行上面的指令后,会生成
input_file_name-obfuscated.js
-
批量操作
javascript-obfuscator ./
执行上面的指令会将当前目录下(包含子目录)的所有
.js
文件进行最小化并混淆 -
更多操作
可以通过指定参数设置更多操作:
--ouput a.js
:指定输出文件名
--ouput ./output
:指定输出目录
详细参数使用:javascript-obfuscator -h
或者
效果
原始JS:
//刷新页面
function refreshHome()
{
location.reload();
}
function initHome() {
initBanner();
}
function initBanner() {
var param = {serviceCode: "100003", adPos: '0101'};
//初始化轮播广告
$.ajax({
type: 'POST',
url: 'http://yourapi.com/banner',
dataType: 'json', // 数据类型
data:{
name: "一碗单炒饭"
},
success: function(data) {completeLoading();
console.log(data);
}
});
}
混淆后:
var a0_0x11b7=['log','http://yourapi.com/banner','POST','100003','reload','ajax'];(function(_0x5ee459,_0x3dd24e){var _0x11b7c9=function(_0x23eb7b){while(--_0x23eb7b){_0x5ee459['push'](_0x5ee459['shift']());}};_0x11b7c9(++_0x3dd24e);}(a0_0x11b7,0x138));var a0_0x23eb=function(_0x5ee459,_0x3dd24e){_0x5ee459=_0x5ee459-0x109;var _0x11b7c9=a0_0x11b7[_0x5ee459];return _0x11b7c9;};function refreshHome(){var _0x2f4f67=a0_0x23eb;location[_0x2f4f67(0x10d)]();}function initHome(){initBanner();}function initBanner(){var _0x5209dd=a0_0x23eb,_0x2398a1={'serviceCode':_0x5209dd(0x10c),'adPos':'0101'};$[_0x5209dd(0x10e)]({'type':_0x5209dd(0x10b),'url':_0x5209dd(0x10a),'dataType':'json','data':{'name':'一碗单炒饭'},'success':function(_0x4a9d88){var _0x227150=_0x5209dd;completeLoading(),console[_0x227150(0x109)](_0x4a9d88);}});}