上传您的代码(最多3MB)选择转换
试用完整版
手动混淆单个文件是一个耗时且容易出错的过程。
要获得JSDefender的全部功能,请点击下面下载功能完整的试用版。
以下是我们保护JavaScript代码的一些方法:
转换 | 描述 |
---|---|
域锁 | 允许将代码绑定到特定的域(或其子域)。当浏览器中运行的代码来自不匹配的域时,它就会中断并出现错误。 |
布尔常量 |
将false
和 true
转换为分别产生相同false
和 true
的其他表达式。
|
整数常量 | 将整数常量转换为其他(不太明显的)表达式,在求值时得到相同的值。它还可以将所有整数字面量转换为特定的基数(二进制、十进制、十六进制或八进制)。 |
属性间接运算 | 将直接属性访问转换为间接属性访问。 |
字符串常量 | 提取字符串常量到变量中,并从编码的字符串字面量初始化这些变量。将原始字符串替换为相应的变量。 |
本地声明 | 篡改局部声明的名称。 |
调试器删除 | 从生产代码中删除可能帮助黑客检查代码的信息。 |
控制流保护 | 通过添加不透明的谓词或死代码和扁平化控制流来模糊程序的控制流。 |
函数重新排序 | 将函数从它们原来的位置移动到同一个词汇作用域中的新位置。当*随机化*选项被打开时,它随机设置新位置。 |
篡改检测 | 用保护函数包装关键代码,这些函数在运行时检查修改。篡改的代码将无法正常运行。 |
日期锁定 | 将代码注入受保护的源代码,该源代码将测试当前日期是否处于特定的间隔内。如果是,代码正常运行;否则,它可以退出或运行自定义脚本。 |
连续混淆表达 | 收集代码中相邻的表达式语句,并将它们连接到一个难以理解的表达式序列中。 |
属性解析 | 将对象文字表达式赋值转换为多个赋值语句,使其更难以阅读。 |
变量分组保护 | 将变量声明和初始化分开;它将声明部分移动到声明范围的末尾。 |
通过评估和使用该工具,用户同意使用条款。