JS 代码混淆 / 格式化
工具
使用指导
意见反馈
代码混淆
格式化阅读
源代码
混淆结果
混淆选项
压缩 / 混淆代码
格式化结果
功能说明
本工具提供两项能力:一是使用 javascript-obfuscator 引擎对 JavaScript 源码做混淆保护, 二是把压缩过的代码重新缩进排版,便于阅读。所有运算都在浏览器本地完成,代码不会上传到任何服务器。
重要提示:混淆不可逆
「格式化阅读」标签页无法反向还原 javascript-obfuscator 的混淆结果。 混淆过程会不可逆地丢弃原始变量名、拆散字符串、重排控制流,这些信息在产物中已不存在,任何工具都无法恢复。 格式化只做一件事:按大括号与分号重新缩进换行,把挤成一行的代码排版开,让人能够阅读和调试。 变量名仍然是 _0x1a2b3c 这种形式,控制流仍然是被打散的状态。
混淆选项说明
紧凑输出:把结果压成一行,去掉多余空白,体积最小。
控制流扁平化:把顺序执行的代码改写成 switch 状态机,极大增加阅读难度,但会带来 1.5 倍左右的性能损耗,阈值可控制作用比例。
死代码注入:插入永不执行的分支干扰分析,会显著增大体积,需要与字符串数组配合使用。
字符串数组:把源码中的字符串抽取到统一数组中,通过下标函数访问,让人无法直接搜索到明文字符串。编码方式可选 Base64 或 RC4,RC4 更难还原但更慢。
标识符命名:hexadecimal 生成 _0x 十六进制名,mangled 生成 a、b、c 短名(体积更小)。
自我防御:产物被格式化或美化后会自动失效或崩溃,用于防止逆向。
禁用控制台输出:在产物中插入定时器检测 console 是否被打开,若被打开则无限循环清空控制台。
意见反馈
温馨提示
- 您的反馈将帮助我们改进产品体验
- 反馈内容会匿名保存,保护您的隐私
- 我们会认真阅读每一条反馈
反馈历史
暂无反馈记录
