windows加固工具
2024.07.09 11:03:55
加固工具为 NHPProtect.jar, 适用于 Windows、Linux以及Mac系统,以下均以Windows环境下描述,其他系统环境使用方法类似。
解压缩文档所在的压缩包,可看到 NHPProtect.jar 与 config.ini 两个文件,其中配置文件 config.ini 中请填写易盾后台关联的 appKey,请勿泄漏或自行更改。
下载地址
命令行参数
java jar NHPProtect.jar WinEnc [options] input %path/to/input/file%
参数说明
参数 | 说明 |
---|---|
-WinEnc | 必填项,用于标识加固对象为Windows平台上的应用或游戏 |
[options] | 可选项,用于标识加固开启的功能 |
-input [file_path] | 必填项,参数后跟待加固的zip包或PE文件的路径 |
可选参数说明:
参数 | 说明 |
---|---|
-yunconfig | 使用后台配置的功能开关,无需手动指定,推荐使用 |
-target [pe_filename] | 指定保护的PE文件,仅当input 参数不为PE文件时需要指定,若input 参数为单独PE文件,则无需再指定该参数 |
-enginetype [type] | type值可选DEFAULT, u3d_mono, u3d_il2cpp, cocos2d,不填该参数时默认为DEFAULT,表示常规应用,不接入游戏引擎保护功能 |
-u3dastenc | 加密Unity3D的Asset Bundle,仅在enginetype为u3d_mono或u3d_il2cpp时生效 |
-u3dstaticasset | 加密Unity3D的静态资源,仅在enginetype为u3d_mono或u3d_il2cpp时生效 |
-dll [mono_dll_list....] | 指定需要加密的mono dll文件名,可跟多个文件,仅支持用户自定义代码的dll,如Assembly-CSharp.dll和Assembly-CSharp-firstpass.dll和一些插件dll,仅在enginetype为u3d_mono时生效 |
-SingleDllEnc | 该参数单独使用,指定Unity3D MONO DLL单独加密 |
-SingleAstEnc | 该参数单独使用,指定Unity3D Asset Bundle单独加密 |
-SingleStaticVM | 该参数单独使用,指定PE文件单独加壳 |
加固示例
- 游戏主程序接入反外挂
java -jar NHPProtect.jar -WinEnc -yunconfig -input %path/to/game.exe%
- U3D游戏整包加固
java -jar NHPProtect.jar -WinEnc -target game.exe -enginetype u3d_mono -u3dastenc -u3dstaticasset -dll Assembly-CSharp.dll Assembly-CSharp-firstpass.dll -yunconfig -input %path/to/mono/game/zip%
- 单独PE加壳
java -jar NHPProtect.jar -WinEnc -SingleStaticVM -input %path/to/pe/file%
- 单独U3D AssetBundle资源加密
java -jar NHPProtect.jar -WinEnc -SingleAstEnc -input %path/to/asset/file%
- 单独U3D MONO DLL加密
java -jar NHPProtect.jar -WinEnc -SingleDllEnc -input %path/to/mono/dll%