文档
/
VM 混淆
/

浏览器环境

浏览器环境

Pro
v7.9.0+

声明你的生产构建产物以何种方式提供,使受保护的代码能够将其完整性绑定到它。

browserEnvironment 选项声明生产环境构建产物所处环境的事实,使受保护的代码能够将自身绑定到这些事实上。它仅在与 vmSelfDefending 一起使用时生效;单独使用不起任何作用。

这是一个小对象。目前它只有一个字段:

browserEnvironment: { transport: 'https' }

transport

生产环境提供该 bundle 所用的协议 —— 'http''https'

设为 'https' 时,逆向工程师用纯 HTTP 提供的副本将无法正确运行。设为 'http' 或不设置该字段则不会添加此类保护。

支持的目标

browserEnvironment 仅适用于 browserbrowser-no-evalservice-worker 目标。对于 nodeuserscriptbytenode,该选项会被拒绝 —— 混淆会以校验错误失败,而不是静默丢弃该设置。

要求

  • vmSelfDefending 一起启用;否则不起作用。
  • browserbrowser-no-evalservice-worker 目标。
  • 混淆器版本 7.9.0 或更高

示例

JavaScriptObfuscator.obfuscate(code, {
    vmObfuscation: true,
    vmSelfDefending: true,
    target: 'browser',
    browserEnvironment: { transport: 'https' }
});