📢 本节效果展示
DLL经过加密,不再可看到内部内容。保护了原创性和代码安全性。
1️⃣ 源代码展示
2️⃣ 加密后代码
🟥 加密软件下载
我们用到的加密软件是 .NET Reactor 最新版。
下载地址可在文末联系方式获得。
对比了十几款加密软件,该加密软件的优点是:
- 免费
- 支持Unity DLL
- 加密复杂度比大多数软件高
- 配置方法简单
🟧 加密软件的使用方法
加密分为三步:
- 导入DLL
- 配置加密方法
- 开始加密
🎁 加密必须要知道的事情
🚩 [WebGL端] 不能字符串加密
已知在WebGL端,若使用了反射,并且加密时勾选了加密字符串,则运行到反射时必报错.(尽管在unity editor表现正常,试了官方的特性保护不被加密也不起作用)
因此不建议勾选字符串加密,重要字符串要放在服务器.
比如你可能要与服务器通讯,但打开服务器要账号密码.账号密码不能存在unity,你可以这样做:
- 在你的服务器上用txt保存账号密码,并设置访问权限.
- 写一个php当做中介,php能拿到txt中的账号密码,跟数据库通讯的方法写在php中
- unity给php传入自身的账号密码,php鉴权若成功,再跟数据库通讯,返回unity所需的数据.
简单来说就是:
WebGL支持反射,
但使用了反射,在WebGL就不能使用加密字符串
1️⃣ .NET2.0平台加密规则
如下图所示,按照步骤进行配置即可。
下图的加密选项为最复杂的加密选项。可进行取消勾选,但不可勾选其他两项。否则Unity中由于加密过于复杂会无法解密。
2️⃣ .NET2.1平台加密规则
好了,现在打开加密好的文件夹,将DLL放到Unity中测试看看吧!