• 文库
  • 字符
  • 转换
  • 加密
  • 网络
  • 更多
    图表
    数学
    坐标
    图片
    文件
  • 文库
    字符
    转换
    加密
    网络
    更多
    图表
    数学
    坐标
    图片
    文件
logo 在线工具大全
17 评论 收藏 复制链接 分享

在线Javascript混淆加密


代码混淆使用浏览器能力实现,您的代码不会被上传到云端。

源代码

混淆结果

Source Map

混淆结果
文件 大小 状态 操作
在线Javascript混淆加密-工具简介

在线Javascript混淆加密工具,支持在线混淆加密javascript代码,混淆支持低混淆度高性能、中等混淆度最优性能、高混淆度低性能模式,你还可以通过自定义参数,来控制混淆加密的细节过程。

在线Javascript混淆加密-使用说明

Javascript(js)代码在线混淆加密工具,是一款免费强大的js混淆工具。 它支持变量重命名,字符串加密,死代码注入,控制流程和代码转换等特性。 本工具支持es3,es5,es2015,es2016,es2017,es2018,es2019语言标准,部分支持es2020语言标准。

  1. 混淆模式:预定义了默认、低混淆度,中等混淆度,高混淆度以及自定义参数五种混淆加密模式。不同混淆程度和参数对性能的影响程度不同。
  2. 文件:选择单文件混淆,还是批量文件混淆。
  3. Source Map:是否同步生成 Source Map 文件。
  4. 打开:单文件模式下,支持打开.js文件,支持的文件字符编码为UTF-8。 批量文件混淆模式下,支持打开 .js.zip 文件。
  5. 在自定义参数中,你可以输入自定义的JSON参数,来控制混淆的底层细节,请确认保持正确的配置参数格式, 同时对混淆后的代码进行测试,以确保工作正常。
    部分核心参数参见下表,完整参数列表请查看文档
  6. 自定义参数的典型应用:
    通过设置domainLockdomainLockRedirectUrl参数,禁止加密后的js文件运行在非授权域名网站中, 从而防止别人拷贝你的代码。
    通过设置debugProtection相关参数,禁止别人在开发者调试工具模式下,调试你的js代码。
    通过设置selfDefending参数,将使美化以后的混淆代码不可用,从而增加混淆代码的理解难度。
部分核心参数释义
名称 类型 默认值 说明
compact boolean true 是否将加密结果压缩成一行。
controlFlowFlattening boolean false 是否开启扁平化控制流程转换,开启后将增大程序的理解难度。
controlFlowFlatteningThreshold number 0.75 最小为0,最大为1。对代码应用控制流程转换的可能性。
deadCodeInjection boolean false 是否注入死代码,以增加程序理解难度。开启这个选项将增大生成文件大小。
deadCodeInjectionThreshold number 0.4 最小为0,最大为1。在节点中增加四代码的可能性。
debugProtection boolean false 是否冻结浏览器的开发者调试工具
debugProtectionInterval number 0 单位毫秒,如果开启,将周期性的强制开发者调试工具处于调试断点状态。 只在debugProtection开启下有效。建议设置为20004000毫秒。
disableConsoleOutput boolean false 禁止控制台输出。将console.logconsole.infoconsole.error 等函数替换为空函数。
domainLock string[] [] 只允许混淆后的代码运行在特定的域名下。这将防止其他人拷贝你的代码进行使用。如果混淆后的代码运行在非指定的域名下,将自动跳转到domainLockRedirectUrl指定的URL。
domainLockRedirectUrl string about:blank 如果混淆后的代码运行在非domainLock指定的域名下,将自动跳转到此URL。
renameGlobals boolean false 混淆全局变量名和函数名,这个选项会破坏你的代码,慎重开启。
renameProperties boolean false 允许重命名属性名称,这个选项有可能破坏你的代码,慎重开启。
selfDefending boolean false 开启混淆结果保护。混淆后的代码,如果被美化/格式化,将无法正常运行。从而增加代码的理解难度。 开启这个选项后,将强制设置compact参数为true
target string browser 混淆代码的目标运行环境。允许的值为browserbrowser-no-evalnode
unicodeEscapeSequence boolean false 开启后,将字符串转换为Unicode代码。