JS加密混淆

推荐工具:javascript-obfuscator

这是一个功能强大、广泛使用的 JS 混淆器,支持 CLI、Node.js、在线使用。

一、使用 JavaScript 混淆工具

安装:

npm install -g javascript-obfuscator

 

使用:

javascript-obfuscator input.js --output output-obfuscated.js

 

提高混淆强度:

javascript-obfuscator input.js --output output.js \
  --compact true \
  --control-flow-flattening true \
  --dead-code-injection true \
  --debug-protection true \
  --disable-console-output true \
  --string-array true \
  --string-array-encoding base64 \
  --self-defending true

 

二、Node.js 脚本调用示例(自动化)

const JavaScriptObfuscator = require('javascript-obfuscator');
const fs = require('fs');

const code = fs.readFileSync('input.js', 'utf8');

const obfuscatedCode = JavaScriptObfuscator.obfuscate(code, {
    compact: true,
    controlFlowFlattening: true,
    stringArray: true,
    stringArrayEncoding: ['base64'],
    selfDefending: true
}).getObfuscatedCode();

fs.writeFileSync('output.js', obfuscatedCode);

 

参数解释:

  • control-flow-flattening: 控制流扁平化(增加阅读难度)

  • dead-code-injection: 注入无用代码

  • debug-protection: 阻止调试器

  • disable-console-output: 禁用 console.log

  • self-defending: 防止格式化和修改

  • string-array-encoding: 字符串加密(推荐 base64)

posted on 2025-07-01 18:57  //君莫笑  阅读(136)  评论(0)    收藏  举报

导航