浏览器环境
Pro
v7.9.0+
声明你的生产构建产物以何种方式提供,使受保护的代码能够将其完整性绑定到它。
browserEnvironment 选项声明生产环境构建产物所处环境的事实,使受保护的代码能够将自身绑定到这些事实上。它仅在与 vmSelfDefending 一起使用时生效;单独使用不起任何作用。
这是一个小对象。目前它只有一个字段:
browserEnvironment: { transport: 'https' }
transport
生产环境提供该 bundle 所用的协议 —— 'http' 或 'https'。
设为 'https' 时,逆向工程师用纯 HTTP 提供的副本将无法正确运行。设为 'http' 或不设置该字段则不会添加此类保护。
支持的目标
browserEnvironment 仅适用于 browser、browser-no-eval 和 service-worker 目标。对于 node、userscript 和 bytenode,该选项会被拒绝 —— 混淆会以校验错误失败,而不是静默丢弃该设置。
要求
- 与
vmSelfDefending一起启用;否则不起作用。 browser、browser-no-eval或service-worker目标。- 混淆器版本 7.9.0 或更高。
示例
JavaScriptObfuscator.obfuscate(code, {
vmObfuscation: true,
vmSelfDefending: true,
target: 'browser',
browserEnvironment: { transport: 'https' }
});