## 功能介绍 ### js代码控制流混淆 打乱函数执行流程,结合不透明表达式,引入多余控制流,插入无用代码、函数,同时进行扁平化处理,使得所有程序基本块看起来不能区分执行先后顺序,使JS代码可读性变差,进而达到防止代码被静态分析的目的。。 ### js禁止调试 基于调试器特征,易盾在被保护的JS代码内插入调试检测代码,一旦发现调试行为,将会阻止被调试的JS继续运行。 ### 高强度js禁止调试 对于破解调试比较频繁的客户,可以配置高强度js禁止调试。 ### 指定字符串加密 将代码中使用的字符串进行加密处理,运行时动态解密,防止攻击者直接获取、使用这些明文的字符串信息,增加分析难度。 ### 域名锁定 将域名或子域名以规则形式写入代码中,在程序运行时,动态获取当前代码加载域名是否是预设定的来控制代码是否执行,防止代码盗用。 ### 高强度字符串加密 个别游戏需要对全量的字符串加密,脚本内默认的加密为50%,开启后会将字符串加密的百分比调整到100%。 ### unity引擎资源加密 ### 小游戏资源保护 开启此配置则会进行资源加密的功能。 ### unityjs的ab资源加密 开启后,会对webgl目录下的符合格式的ab资源进行加密。 ### unityjs的wasm资源加密 开启后,会对当前目录下的wasmcode目录内的webgl.wasm.code.unityweb.wasm.br文件进行加固。 ### webdata加密 webdata为untiy的首包资源文件,webgl.data.unityweb.bin.txt,首包内包含静态资源文件,metadata文件,以及ab资源文件,开启此配置后如果配置有unityjs的ab资源加密,则会直接对内部的ab资源进行加密。 ### 对首包资源内静态资源进行加密 开启后,会对webdata首包资源内的静态资源文件进行加固。 ### 对首包资源内metadata进行加密 开启后,会对webdata首包资源内的global-metadata.dat文件进行加固。 ### unity内部缓存加密 开启后,会对web游戏的缓存进行加密,运行时进行解密。 ### wasm分包 支持wasm分包的场景。wasm分包会对wasm文件进行拆分,拆分成wasmcode与wasmcode1等多个文件夹。 ## 使用说明 该加固工具为jar包文件,适用于Windows、Linux以及Mac系统,以下均以Windows环境下描述,其他系统环境使用方法类似。下载地址点击下载 (https://clienttool.dun.163.com/api/v1/client/jarTool/download)。 ### 使用方式 注意:加固项由易盾后台进行配置,请联系易盾技术支持人员。 命令行模式(注意,第一次使用需要配置config.ini文件) 1. 命令行模式参数 Code: java -jar NHPProtect.jar -h5protect -h5type wx -yunconfig -input xxx.zip ps:zip 内需要包含符号表文件。 1. 参数说明如下: 参数 | 说明 -yunconfig | 必填项,表示自动从易盾后台获取加固参数,加固配置已经在后台部署,可以根据实际情况调整 。 -h5protect | 必填项,表示保护h5文件 -input | 必填项,参数后面跟待加固的文件的绝对路径 -output | 默认加固后的文件输出在原文件同路径,-output参数可以指定加固后文件的输出路径和文件名,示例:java -jar NHPProtect.jar -yunconfig -h5protect -h5type 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 命令参数来处理: Code: java -jar NHPProtect.jar -h5protect -h5type wx -config E:\\Desktop\\test\\config.ini -input E:\\yiduntest\\test.zip ### 设置appkey 用户需要将appkey填写在该配置文件中,格式如下所示。appkey请在官网登录账号后加固服务-服务管理获取。 [appkey] key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx