小游戏加固—laya
功能说明
js代码控制流混淆
打乱函数执行流程,结合不透明表达式,引入多余控制流,插入无用代码、函数,同时进行扁平化处理,使得所有程序基本块看起来不能区分执行先后顺序,使JS代码可读性变差,进而达到防止代码被静态分析的目的。。
js禁止调试
基于调试器特征,易盾在被保护的JS代码内插入调试检测代码,一旦发现调试行为,将会阻止被调试的JS继续运行。
高强度js禁止调试
对于破解调试比较频繁的客户,可以配置高强度js禁止调试。
指定字符串加密
将代码中使用的字符串进行加密处理,运行时动态解密,防止攻击者直接获取、使用这些明文的字符串信息,增加分析难度。
域名锁定
将域名或子域名以规则形式写入代码中,在程序运行时,动态获取当前代码加载域名是否是预设定的来控制代码是否执行,防止代码盗用。
高强度字符串加密
个别游戏需要对全量的字符串加密,脚本内默认的加密为50%,开启后会将字符串加密的百分比调整到100%。
laya类型
小游戏资源保护
开启此配置则会进行资源加密的功能,且对性能无影响。比如图片类型:.png,.jpg,.jpeg,文本类型:.json,.atlas,.prefab,.plf。
微信小游戏标识laya
开启此配置则标识为laya引擎。
使用说明
该加固工具为jar包文件,适用于Windows、Linux以及Mac系统,以下均以Windows环境下描述,其他系统环境使用方法类似。下载地址点击下载。
使用方式
注意:加固项由易盾后台进行配置,请联系易盾技术支持人员。
命令行模式(注意,第一次使用需要配置config.ini文件)
- 命令行模式参数,以.zip结尾的文件
java -jar NHPProtect.jar -h5protect -h5type wx -yunconfig -input xxx.zip
- 参数说明如下:
参数 | 说明 |
---|---|
-yunconfig | 必填项,表示自动从易盾后台获取加固参数,加固配置已经在后台部署,可以根据实际情况调整 。 |
-h5protect | 必填项,表示保护h5文件 |
-input | 必填项,参数后面跟待加固的文件的绝对路径 |
-output | 默认加固后的文件输出在原文件同路径,-output参数可以指定加固后文件的输出路径和文件名,示例:java -jar NHPProtect.jar -yunconfig -h5protect -wx -output E:\enc\test_enc.zip -input E:\yiduntest\test.zip |
-h5type | 可选参数,如果不输入 -h5type,默认是web游戏 wx: 微信小游戏、tt: 头条、ks: 抖音、qq : qq、oppo : oppo、vivo : vivo、mt : 美团 |
config.ini文件配置说明
默认config.ini必须要跟NHPProtect.jar在同一目录下,如果需要指定config文件,可以执行-config 命令参数来处理:
java -jar NHPProtect.jar -yunconfig -h5protect -h5type wx -config E:\\Desktop\\test\\config.ini -input E:\\yiduntest\\test.zip
设置appkey
用户需要将appkey填写在该配置文件中,格式如下所示。appkey请在官网登录账号后加固服务-服务管理获取。
[appkey]
key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx