步骤: ①选择JavaScript的zip包 ②点击开始加密 ③耐心等待(估算时间是作为参考,请耐心等待) ④下载加密结果
1.本工具不要使用多次加密,或者使用其他加密后再用此工具加密,会造成加密安全性降低(此工具一次加密,确保安全)。
2.本工具结合了N个组件,并且经过站长6个版本的升级,开发出来的加密JS
代码在线工具,加密后非专业人士解密不开。
3.本工具对JavaScript代码质量稍微要求高一点,如果您的代码写的乱七八糟,语法不严谨,有可能导致加密后使用不了,推荐使用闭包的方式抒写业务块或者核心模块,然后加密。
4.本工具是免费的,只是加密大文件(大于200Kb) 和批量加密文件,需要开通VIP才能实用。
5.复杂的正则表达式,如果加密后错误,请用new RegExp('^[a-zA-Z-0-9]$')
方式,这个正则表达式为/^[a-zA-Z-0-9]$/
(这是一个简单的正则,只是举例)。
6.新增Autojs加密参数一键配置,并且针对Autojs加密算法做了细微的调整,使得Autojs加密更方便,具体清查:Autojs加密注意事项。
压缩成一行:即加密后,代码为一行代码。缩小了代码大小,并配合“防止格式化”
功能一起安全使用。
防止格式化:即加密后,如果有人对代码进行格式化,会导致代码失效。
花指令注入:注入花指令后,干扰解密的过程,增加解密难度系数。花指令百度百科解释:花指令。
防止格式化系数:干扰他人对代码格式化后,代码失效的系数,有0~1
的取值范围,为百分数,比如0.5
即对50%
代码做安全处理,推荐0.75(75%)
。
花指令注入系数:干扰解密难度代码系数,同上一样,值为0~1
之间,为百分数。推荐0.5(50%)
。
加密规则:可选项有“RC4”
和“Base64”
,推荐使用“RC4”
。
变量加密系数:可选项有0.7(70%)
和1(100%)
,意思为对JavaScript
代码多少变量及函数进行加密处理【重要】。
变量规则混淆:很牛 X 的一项设置,开启此项后,结合“变量加密系数”
一起为变量做质变的安全保护。
自卫模式:防护最高的一项配置,开启此项后,加密后代码量增加,安全性很高。对代码质量要求很高,加密后请测试功能是否有效。
函数&变量全部重命名:对全局变量、函数做混淆处理,如果JS
有被依赖,会导致函数、变量未定义。此功能对代码质量要求很高,并适用一个业务只有一个JS
文件的项目。
禁止控制台调试:开启后,阻止他人在使用加密JS
的页面做JS
代码调试。
禁止控制台输出:开启后,阻止他人在使用加密JS
的页面,做控制台输出。
安全域名:
仅允许加密后的JS脚本再设置的域名下运行,在非设置的域名下不能正常运行,可以设置多个(免费用户最多为5
个),需要通配配置的时候,采用all
关键词,如在sojson.com
下所有的域名下都可以运行,只需all.sojson.com
配置。
保留字符串:
不想一段字符串被加密,就可以采用此项配置,支持正则前缀(^)、后缀($)匹配,具体点击保留方法名、变量名规则。
保留方法名、变量名:
这个配置比较有用,以前老版本加密后,会造成部分变量名或者方法名找不到了,导致JS无法运行,可以把找不到的方法和变量名按规则配置好,再加密一次即可完美运行,具体点击:保留方法名、变量名规则。
1.如果加密后提示XXXX is not defined
。说明变量名或是方法名被加密工具重命名了,您可以把这个方法或者变量定义为全局,或者使用【保留方法名、变量名】功能保留这个方法。
2.如果加密后运行卡死,请确认您是否绑定了【安全域名】,如果绑定了,请确认是否正确,如果没有绑定,请重新加密。另外变量名规则请选择【_0x开头的16进制】规则再次加密尝试。
3.多次尝试还是出问题,请在定位过程中把【禁止控制台调试】和【禁止控制台输出】关闭。
1.需要加密的JS脚本
为一个业务整体,函数(方法)相互之间的调用都在当前JS脚本
里,这样可以达到方法名、变量名都可以改变,达到加密的效果。
2.推荐采用闭包的方式编写JS脚本
,这样使得业务完整,并且不会造成变量和方法冲突。
3.优雅的JavaScript代码,不要轻易去省略{ 和 }
,还有 ;
参考方式:Javascript 加密/压缩后运行不了,JavaScript报错排查。
4.JS脚本加密是作为一种业务保护作用,但是不能把业务代码的安全性全寄托在代码加密,这是一种危险的行为,最好的加密要从写业务代码的时候就要有设计思想,并且加入进去,开通VIP的用户可以与技术QQ84034666客服交流。
商务合作:1#vfan.cn
(把#换成@),或者联系QQ:84034666
业务咨询:i#itboy.net
(把#换成@),或者联系QQ:8446666
1.常规难度配置,加密后体积大小适中。
2.包含基础配置[压缩一行、防止格式化、死代码注入]。
3.默认变量名,方法名规则为_0x
开头的十六进制规则。
4.禁止控制台,禁止控制台输出。
1.加密难度最大配置,加密后体积较大。
2.运行效率问题,会有稍微运行速度降低。
3.包含基础配置,最高级配置。
4.加密之后语法不严谨的时候,会出现错误。
5.加密之后会产生很多伪代码,解密难度增加400%。
1.加密PX平坦系数的调整,更加适合Autojs语法,使得Autojs加密后脚本运行速度不会受到影响。
2.加密语法更兼容Autojs 。
3.更加适合Autojs安全的加密算法。
4.Autojs不需要控制台输出和反调试,当选择Autojs的时候,会自动屏蔽 “禁用控制台调试” 和 “禁止控制台输出”。
5.更多说明:Autojs加密注意事项。
1.默认版本为:jsjiami.com.v6,VIP可以自定义版本。
2.VIP用户可以改成自己的网址或者名称,规则:
①.只能命名字符串大小写、数字、点。
②.不能去掉版本号,如果去掉版本号,就无法运行了。
③.关键词"auto"为随机"数字+字母"作为版本号。
默认提示为:该加密由jsjiami.com.v7.core提供,请勿删除版本号!,年费VIP可以自定义提示。
当别人修改了你自定义的version时,会弹出提示框。
代码加密后变成一行代码,必填选项。
格式化后代码无法运行。
1.提取您JS里的代码,打乱插入各个地方,干扰解密过程。
2.解密者很难猜到知道原始代码是什么。
1.标记后代码不可编辑,编辑会造成意外。
2.标记后编码注意为utf-8最佳。
3.标记后可能视觉上看到代码是错位的。
4.有问题联系客服。
1.插入花指令(死代码)后,让解密过程难度增加。
2.代码也是提取您JS里的代码,打乱处理的。
3.系数越大,插入的花指令就越复杂,越多,体积也大。
1.防止在解密过程中格式化加密代码。
2.系数越高,难度越大,代码量也越多。
1.对变量名、方法名的加密百分比。
2.系数越大,加密的变量名和方法名就越多。
RC4:采用 RC4 方式加密,解密难度大,推荐使用。
Base64:加密方式较为简单,不推荐。
1.对变量名、方法名的加密百分比。
2.系数越大,加密的变量名和方法名就越多。
可以禁止Selenium
方式模拟请求网站。
1._0xXXXX
,都是_0x
开头的随机变量【默认】。
2.随机abc
等字母,随机的1~2个字母,加密体积稍微偏小。
3.随机ilI1
变量混淆,比较难识别
4.随机QO0
变量混淆,比较难识别
1.不建议开启,此项没有解密难度。
2.勾选后加密后体积会增大,没有什么意义。
3. 此项没太大意义,只会让JS体积变大 。
1.此项开启后,解密难度大大增加,加密后文件大小会稍微增大。
2.开启此项加密后,请注意测试,当语法不严谨,容易报错。
3.如与加密报错,请去掉此项勾选,再加密一下测试下。
4. Autojs 或 多个JS关联调用,请不要勾选此项 。
此项数值越大,保护等级越高,解密难度越大,不影响执行效率。
1.勾选后全部变量名
和 方法名
都重命名。。
2.如果遇到加密后找不到方法,请使用下面的保留变量名
添加此方法名。
3.如果遇到加密后找不到字符串,请使用下面的保留字符串
添加此字符串。
4. Autojs 或 多个JS关联调用,请不要勾选此项 。
1.不允许用户在浏览器 Console(控制台) 输出内容。
2.与“禁止调试代码” 功能配合使用更佳。
3.此项不支持非浏览器环境 。
1.不允许用户在浏览器种调试加密的JavaScript代码。
2.与“禁止控制台输出” 功能配合使用更佳。
3.此项不支持非浏览器环境 。
①.可以配置多个,支持域名或者IP,但不支持端口,不符合规则,浏览器卡死或者电脑死机。
②.域名支持“单个域名”和“多级域名”配置规则。
1.www.baidu.com
就是只能在www.baidu.com
运行。
2.all.baidu.com
就是只能在所有*.baidu.com
二级域名下运行。
3.w.a.baidu.com
就是只能在w.a.baidu.com
下运行。
4.www.abc.com:8888
就是只能在www.abc.com:8888
下运行。
5.133.3.12.8
就是只能在133.3.12.8
下运行。
6.133.3.12.8:88
就是只能在133.3.12.8:8:88
下运行。
③.此项不支持非浏览器环境 。
一行一个,详细请看:批量添加安全域名的使用方法
1.如需要保留一段“字符串”,可以采用此项配置。
2.支持精确匹配和简单的正则,请参照下面的实例:
①.精确匹配"abcde"
就输入abcde
即可。
②.匹配前缀"updateTime,updateCode"
就输入^update
匹配“update”
开头的字符串。
③.匹配后缀"updateTime,createTime"
就输入Time$
匹配“Time”
结束的字符串。
一行一个,详细请看:保留字符串的使用方法
1.如加密后 JS
执行报xxx is not defined
错,就可以用此项配置。
2.如加密后 JS
变量名找不到了,就可以用此项来配置。
3.支持精确匹配和简单的正则,请参照下面的实例:
①.精确匹配"abcde"
就输入abcde
即可。
②.匹配前缀"updateTime,updateCode"
就输入^update
匹配“update”
开头的方法和变量名。
③.匹配后缀"updateTime,createTime"
就输入Time$
匹配“Time”
开头的方法和变量名。
一行一个,详细请看:保留变量名使用方法
是指JavaScript
加密后放到哪里去运行。
1.浏览器环境,是只在各大浏览器运行。
2.浏览器无eval
模式,是指在浏览器下运行,加密不使用eval
关键词。
3.Nodejs
模式,是指加密后在Nodejs
下运行。