找回密码
 点一下
查看: 3895|回复: 12

简单,有效的数据存档加密组件与演示

[复制链接]
发表于 2019-6-23 14:32:43 | 显示全部楼层 |阅读模式
在论坛里搜了好久,都没有发现可用存档加密系统,于是我给广大新人门发一个简单好用的触发器组件


内容:StarCodev1.4,KryptCode,Md5Hash,10与16进制转换    下载: SC2Code.SC2Mod (79.96 KB, 下载次数: 68)
其中大部分内容是我在国外论坛上找到的,此次演示只使用了其中的StarCodev1.4


基本加密与解密操作方法如图: QQ截图20190623134551.jpg QQ截图20190623134949.jpg ,即基本的对称加密方法
然而这样不能检查其是否被篡改,所以需要先对数值做下处理再加密,总共操作如下
QQ截图20190623135650.jpg
解密与效验的操作如下
QQ截图20190623140315.png
基本上是先按5个整数值处理要加密的数值,然后再按字符串密码加密处理后的字符串,得到最后用于储存于Bank的字符串
解密操作则是反过来,先按密码解密储存于Bank的字符串,再依次用3个数值按算法得出另外3个数值,如果其中2个数值为之前用来处理的数值,则证明另一个数值是最先开始被加密的数值
想要了解具体原理的可以去CSDN论坛上找加密相关文章,看不懂的可以跳过
肯定有人不知道怎么弄,所以我为大家整合了一键直接加密解密函数: QQ截图20190623141356.png
使用方法如下,直接看作是整数与字符串之间的互转函数就行
QQ截图20190623141601.png
加密后的数值存于Bank中,配合署名验证使用,效果更佳!
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
下面是额外的防作弊小技巧
一,Bank内容复制
署名验证已经阻止不了玩家改档了,玩家通过直接复制另一个玩家的Bank内容,从而绕过解密后的效验
这个时候我提供的方法是,使用玩家的句柄后面的数字,加上任意字符串作为密码,从而让不同玩家的解密出的字符串不同
二,修改器修改内存
玩家直接用CE修改器修改星际2的内存,从而更改存储的已解密后的金钱等整数型变量
这个时候可以用我附带的进制转换,将改为16进制作为字符串变量储存起来
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
好了全部内容完了,下载地址在上面第二行

发表于 2019-6-23 20:33:08 | 显示全部楼层
很赞的演示。
回复

使用道具 举报

发表于 2019-6-29 22:18:46 | 显示全部楼层
看了一下.完全看不明白

点评

演示里的动作和函数是需要先装了这个组件才有的,这演示可以说是这个组件的说明书  详情 回复 发表于 2019-6-30 10:31
回复

使用道具 举报

 楼主| 发表于 2019-6-30 10:31:28 来自手机 | 显示全部楼层
vinboy22 发表于 2019-6-29 22:18
看了一下.完全看不明白

演示里的动作和函数是需要先装了这个组件才有的,这演示可以说是这个组件的说明书

点评

这个直接复制可以用了吗?  详情 回复 发表于 2019-6-30 11:48
回复

使用道具 举报

发表于 2019-6-30 11:48:38 | 显示全部楼层
超级007x 发表于 2019-6-30 10:31
演示里的动作和函数是需要先装了这个组件才有的,这演示可以说是这个组件的说明书

这个直接复制可以用了吗?

点评

是的,直接复制可以,导出触发器库再加入你的地图也可以  详情 回复 发表于 2019-6-30 16:55
回复

使用道具 举报

 楼主| 发表于 2019-6-30 16:55:13 来自手机 | 显示全部楼层
vinboy22 发表于 2019-6-30 11:48
这个直接复制可以用了吗?

是的,直接复制可以,导出触发器库再加入你的地图也可以

点评

不用改动什么吗?  详情 回复 发表于 2019-6-30 22:16
回复

使用道具 举报

发表于 2019-6-30 22:16:34 | 显示全部楼层
超级007x 发表于 2019-6-30 16:55
是的,直接复制可以,导出触发器库再加入你的地图也可以

不用改动什么吗?

点评

不需要改动什么啊,你直接用我整合那两个函数就够了,字符串类型的话按我的演示触发器那样设计就行  详情 回复 发表于 2019-7-1 02:07
回复

使用道具 举报

 楼主| 发表于 2019-7-1 02:07:11 来自手机 | 显示全部楼层
vinboy22 发表于 2019-6-30 22:16
不用改动什么吗?

不需要改动什么啊,你直接用我整合那两个函数就够了,字符串类型的话按我的演示触发器那样设计就行

点评

看不明怎么做  详情 回复 发表于 2019-7-1 14:19
回复

使用道具 举报

发表于 2019-7-1 14:19:53 | 显示全部楼层
超级007x 发表于 2019-7-1 02:07
不需要改动什么啊,你直接用我整合那两个函数就够了,字符串类型的话按我的演示触发器那样设计就行

看不明怎么做

点评

如果你不想校验读取的值是否被更改,直接用encrypt和decrypt这两个函数就够了(输入和输出都是字符串),如果想校验就使用我整合的那个,插入值随便弄多少,只不过同字母的插入值1要小于2,插入值相当于在一句话中间加  详情 回复 发表于 2019-7-1 17:58
回复

使用道具 举报

 楼主| 发表于 2019-7-1 17:58:40 来自手机 | 显示全部楼层
vinboy22 发表于 2019-7-1 14:19
看不明怎么做

如果你不想校验读取的值是否被更改,直接用encrypt和decrypt这两个函数就够了(输入和输出都是字符串),如果想校验就使用我整合的那个,插入值随便弄多少,只不过同字母的插入值1要小于2,插入值相当于在一句话中间加入一个字符当做标记,不知道规则的人乱改该标记就没了,以此来校验是否被改档,加密整合函数会将整数变成字符串,解密则是相反,如果输入的字符串被修改了则返回0。

点评

你能用几个整数变量做一个发出来吗(写测试变量存档) 这样我会明白点  详情 回复 发表于 2019-7-2 15:53
回复

使用道具 举报

发表于 2019-7-2 15:53:32 | 显示全部楼层
超级007x 发表于 2019-7-1 17:58
如果你不想校验读取的值是否被更改,直接用encrypt和decrypt这两个函数就够了(输入和输出都是字符串),如 ...

你能用几个整数变量做一个发出来吗(写测试变量存档)  这样我会明白点
回复

使用道具 举报

发表于 2019-8-29 03:21:08 | 显示全部楼层
本帖最后由 12399637 于 2019-8-29 03:26 编辑

我导入库文件 会提示xml错误 QQ图片20190829032609.png
回复

使用道具 举报

发表于 2019-8-29 03:23:31 | 显示全部楼层
本帖最后由 12399637 于 2019-8-29 03:27 编辑

直接全部复制过去保存会提示脚本编译错误
QQ截图20190829032542.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-12-22 17:01 , Processed in 0.111373 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表