Project1

标题: 【经验】利用Enigma Protector加密游戏,无通用破解方法 [打印本页]

作者: acips    时间: 2024-6-15 19:32
标题: 【经验】利用Enigma Protector加密游戏,无通用破解方法
本帖最后由 acips 于 2024-6-17 15:29 编辑

2024.06.17更新
改进:仅打包json事件,极大优化启动速度

前言:坛内搜索了一下,发现只提到过Enigma Virtual Box(EVB)。EVB只是一个打包工具,并不是加密,甚至有一键拆包的工具。
而Enigma Protector就不一样了,会在打包的同时加壳,极难破解,还没有通用的解包工具。目前在吾爱上能搜到的脱壳教程都很复杂,并且要是勾选了反调试参数,这些方法也不管用,能破解的人更是寥寥无几。

作者: acips    时间: 2024-6-15 19:46
本帖最后由 acips 于 2024-6-15 19:55 编辑

官方下载地址:https://enigmaprotector.com/en/order.html
记得下载32位的,有条件的可以花200刀支持正版,如果没钱那就 ↓
破解补丁链接:https://www.52pojie.cn/thread-1870623-1-1.html

先说说局限,
1、只能在pc端使用,移植需要考虑其他加密方法
2、打包后启动时会卡顿几秒,不过正常游戏时未发现卡顿
3、无法加密存档,存档文件裸露在外面

使用方法也很简单,把exe执行文件拖进去,


启用反调试和文件校验,



建立虚拟目录,把文件全部拖进去,然后点“保护”开始打包加壳


最后手动建立\www\save 目录用于存档,到这里就已经完成了

作者: acips    时间: 2024-6-15 19:49
最后测试一下,EnigmaVBUnpacker当然也是无法拆包的,意料之中

作者: acips    时间: 2024-6-15 19:52
补充一下,Enigma Protector真的是一款非常强的工具,不仅是MV,几乎所有电脑游戏都可以用这个方法打包加密。
据我所知有的galgame大厂也用这工具进行加密,不过他们用的是定制的版本,效果更好
作者: 夏末GG    时间: 2024-6-16 03:17
可以,支持,但是我试过了,加密之后,但是启动比较慢

作者: acips    时间: 2024-6-17 15:34
本帖最后由 acips 于 2024-6-17 15:40 编辑

更新:
众所周知图片和音频的解密密钥在System.json里写的明明白白的,json本身更是无法加密
那么仅把json和js打包加密不就行了。同一个游戏经过测试,全部打包启动游戏需要10秒,而仅打包关键文件只需要2秒启动。
这样打包后隐藏了密钥,即使素材文件裸露在外面,别人也无法解密。

如图,虚拟目录的层级记得和原游戏调整为一致,打包后删掉原游戏里对应的data和js目录

作者: acips    时间: 2024-6-17 15:36
夏末GG 发表于 2024-6-16 03:17
可以,支持,但是我试过了,加密之后,但是启动比较慢

感谢反馈,试试6楼的新方法呢,已置顶
作者: 青衣blackcloth    时间: 2024-7-10 10:55
本帖最后由 青衣blackcloth 于 2024-7-10 22:01 编辑

优化了启动速度问题,我可以回去试试了。我现在用着论坛某个大佬的加密方法,唯一的问题就是启动速度太慢了,如果这个能解决就完美了


----------------------------------------------
我按照后续方法打包js和data+gameexe  好像已经成功了(我之前没打开的问题是因为层级问题,现在好了  晚上去测试一下流畅度等问题)

----------------------------------------------后续1.
我尝试了一下用网上最简单的一个工具解素材包  还是没有防护能力的




----------------------------------------------后续2
ce,MT等工具改起来还是比较容易(不过应该本来也不是来防它们的吧)


----------------------------------------------后续3
目前简单的解包方法都不能脱壳,进不了工程。

----------------------------------------------后续4
我晚上试了我自己的工程  工程大概有900m,加密的js和data(data里面地图是400多,插件也得200左右)加密完成后,只有启动速度较慢这个问题,
大概20秒吧,而进入游戏还是比较流畅的,我觉得这个加密可能还不错,大家可以试试。


作者: acips    时间: 2024-7-11 02:30
本帖最后由 acips 于 2024-7-11 02:34 编辑
青衣blackcloth 发表于 2024-7-10 10:55
优化了启动速度问题,我可以回去试试了。我现在用着论坛某个大佬的加密方法,唯一的问题就是启动速度太慢了 ...


关于后续1,素材解包需要用到system.json里面的xor密钥吧,打包后看不到密钥怎么解
作者: acips    时间: 2024-7-11 10:14
本帖最后由 acips 于 2024-7-11 10:18 编辑
青衣blackcloth 发表于 2024-7-10 10:55
优化了启动速度问题,我可以回去试试了。我现在用着论坛某个大佬的加密方法,唯一的问题就是启动速度太慢了 ...


明白了,因为xor是对称加密,而且rpg里这个密钥长度还是固定的。所以只要游戏里存在预置(非原创)的素材,网站就可以根据加密前后的素材逆出密钥。这个过程还非常简单。

有个方案是重写素材的加密方法,对称加密太容易破解了。用这个大佬的库对素材进行aes加密:https://github.com/brix/crypto-js
解密函数和密钥单独放在一个新插件里,然后英格玛打包加壳。
确实是可以实现的,之前已经测试过用这方法对数据文件加密。

顺便问下如何点评,我每次回复都是新的楼
作者: 暗爵    时间: 2024-7-11 10:20
看起来好像相当的厉害
作者: 青衣blackcloth    时间: 2024-7-11 10:32
本帖最后由 青衣blackcloth 于 2024-7-11 10:34 编辑
acips 发表于 2024-7-11 10:14
明白了,因为xor是对称加密,而且rpg里这个密钥长度还是固定的。所以只要游戏里存在预置(非原创)的素材, ...


我之前用的加密就是加密素材,加密存档,混淆代码,但加密素材导致了游戏在第二次启动时会黑屏很久(部分电脑要有1分钟之久,玩家会以为游戏玩不了而直接关掉),所以你所说的这个aes加密我同样担心他会影响游戏的
启动速度,这很可能玩家直接流失(ps:游戏可以被破解,但玩家游玩体验不能差)。

论坛内还有一个drill大佬的迷宫密匙加密,我昨天问另一个作者,他说可以防我发的那个简单的一键破解工具,我正在尝试这个迷宫密匙是否能和Enigma兼容。
(你有空也可以看看这个迷宫密匙加密的防护力如何)链接:https://rpg.blue/thread-477260-1-1.html

关于点评,楼层下面就有四个选项,但可输入的字数有点少。
作者: acips    时间: 2024-7-11 11:22
本帖最后由 acips 于 2024-7-11 15:34 编辑
青衣blackcloth 发表于 2024-7-11 10:32
我之前用的加密就是加密素材,加密存档,混淆代码,但加密素材导致了游戏在第二次启动时会黑屏很久(部分 ...


卡顿的主要原因应该是混淆,建议对比一下不混淆js时的启动速度,混淆的话不仅是启动,在游戏中途也会卡顿

迷宫密匙在b站刷到过,就是把密钥隐藏在core.js里,但是楼上说过了,xor的破解甚至不需要拿到密钥

[line]3[/line]
读了下迷宫密匙的代码,分别记录密钥的每个字节最后alert也可让游戏自己吐出密钥




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1