文档
/
VM 混淆
/

针对特定函数

针对特定函数

Recommended

为获得最佳性能,可以使用 vmTargetFunctionsMode 只对最敏感的代码进行 VM 混淆。

观看

Obfuscator.io: Targeting Functions in VM Obfuscation (IIFE and Comment Mode)

在 YouTube 观看

要只对您标记的函数进行 VM 混淆,请启用 comment 模式:

JavaScript

comment 模式(推荐)

设置 vmTargetFunctionsMode: 'comment',只对带有特殊注释的函数进行 VM 混淆。适用于任意嵌套层级。

JavaScript

非常适合保护许可证校验、身份验证逻辑或专有算法,同时让其余代码保持良好性能。

/* javascript-obfuscator:vm */ 注释必须保留在混淆器接收到的代码中。如果先运行了编译器、打包工具或压缩工具,请将其配置为保留这些注释。注释被删除就意味着对应的函数不会被虚拟化;如果一个标记都没有保留下来,混淆会失败,并报出 "no functions are marked with the /* javascript-obfuscator:vm */ directive" 错误。

root 模式(默认)

只考虑根级函数(开启 Async Executor 时,改为任意深度上最外层的 async 函数;下文的名称列表也作用于这些函数)。使用 vmTargetFunctions 按名称指定允许列表,或使用 vmExcludeFunctions 按名称排除函数。

名称只匹配函数声明和具名函数表达式。赋值给变量的函数(const checkAuth = () => {})没有可供匹配的名称:允许列表会跳过它,排除列表也无法排除它。对于这类函数,请使用 comment 模式。

JavaScript