设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 7763|回复: 16
打印 上一主题 下一主题

[有事请教] 所以说MV是没有办法加密JSON吗?

[复制链接]

Lv2.观梦者

梦石
0
星屑
306
在线时间
26 小时
注册时间
2018-12-30
帖子
9
跳转到指定楼层
1
发表于 2019-2-21 15:47:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
萌新一枚,看到网上很多仅仅依靠system.json就能够将整个包拆开的情况,话说真的没有什么加密工具吗?
希望能找到那种类似的便捷工具或是方法,有偿亦可。

Lv2.观梦者

梦石
0
星屑
926
在线时间
111 小时
注册时间
2017-8-3
帖子
63
12
发表于 2019-2-27 14:57:07 | 只看该作者
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
926
在线时间
111 小时
注册时间
2017-8-3
帖子
63
11
发表于 2019-2-22 11:58:16 | 只看该作者
gnmyjc 发表于 2019-2-21 20:31
其实是因为只要能搞到json,就能够将你的整个游戏拿去解包,然后破解啊TAT ...

确保你的游戏是应用程序,不是浏览器访问。
如果你会C++的开发,安卓开发,IOS的开发。都是比较简单。自己开发壳子

1.自己制定一个加密 解密的方法。

例如标准定制在几行 第几个文字,乱生成一些乱码。      这些规制要被记录起来。   制定几套。
那么每个文件用那个套规制 生成一次乱码代码出来。 记录好每个文件使用那个规制。

2.运行壳子程序。
在壳子里面读取外部JS,读取文件后对应的解密方法。  赋值给webview里面的html里面。

技术点1
这里注意的是,因为里面不少请求ajax,意味着。你需要一个web服务。  就是你的壳子要带着web的服务。

技术点2
因为默认的RMMV是谷歌内核,所以最好你的壳子,也是谷歌内核的容器吧。

点评

安卓开发的话,相对简单一些。 把webview内核改成是wechat内核,好像还是很多教程。 对应的技术点,网上都有教程。  发表于 2019-2-22 12:01
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1001
在线时间
212 小时
注册时间
2011-11-23
帖子
109
10
发表于 2019-2-22 07:32:22 | 只看该作者
gnmyjc 发表于 2019-2-21 20:31
其实是因为只要能搞到json,就能够将你的整个游戏拿去解包,然后破解啊TAT ...

试试将这个文件隐藏起来?
不是办法的办法有时候或许管用
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
306
在线时间
26 小时
注册时间
2018-12-30
帖子
9
9
 楼主| 发表于 2019-2-21 20:31:37 | 只看该作者
garfeng 发表于 2019-2-21 19:50
不管怎么加密,纯js就是明文,别人解你包,放到电脑上拿浏览器跑一下,然后对象在运行时就是明文的,人家JS ...

其实是因为只要能搞到json,就能够将你的整个游戏拿去解包,然后破解啊TAT
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
2
星屑
5520
在线时间
2564 小时
注册时间
2012-2-9
帖子
990

开拓者

8
发表于 2019-2-21 19:50:02 | 只看该作者
不管怎么加密,纯js就是明文,别人解你包,放到电脑上拿浏览器跑一下,然后对象在运行时就是明文的,人家JSON.stringify($gameMap),数据的json明文就出来了(同样适用于其他数据)。

我觉得加密data文件没有意义啊……

难不成还有人复制你的事件拿走使用么。

在所有data里,唯一需要保密的可能就是动画?动画可以通过加密图片资源来保护。

如果手机版一定要加密,只能用c写一个arm linux(也就是手机上的运行库),然后在crosswalk里调用,加密解密算法写进库里,对外不提供解密整个json的接口,只提供获取某个数据的接口,比如:
要获取某个坐标的用的图块id,js里的正常用法是这样:
(乱写的不要在意)

  1. var id = $gameMap.data[i][j]
复制代码


这个$gameMap对于破解者来说就是明文。

而该库只提供如下接口:


  1. int GetMapId(i,j);
复制代码

实际的$gameMap,只存在于该库的内存中,你还可以想办法,让$gameMap在每次取完某个数据后立即销毁,下次用时再解密。
而该函数是你用c写的,破解者只能拿到编译好的库,拿不到代码,不知道你的算法。

这样,即使他把你的包解压后放电脑上运行,因为这个库是安卓版的,所以电脑上跑不起来,他也无法拿到你的数据。

进一步,如果他要把库反编译,看汇编看懂你解密数据的逻辑,那就认了吧。

(我正在写一个电脑上的加密工具,但我也只打算加密素材,不加密数据)

点评

当然可行,壳子不自己开发也行  发表于 2019-2-22 19:23
素材这点....如果外壳是自己开发的,我有一个想法。素材都是base64。在乱码,壳子里面引后在解密,然后在使用。不知道是否可行?  发表于 2019-2-22 12:06
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
22017
在线时间
8574 小时
注册时间
2011-12-31
帖子
3362
7
发表于 2019-2-21 19:31:08 | 只看该作者
本帖最后由 tseyik 于 2019-2-21 19:33 编辑

RPG Maker MV Cook Tool
https://forums.rpgmakerweb.com/i ... v-cook-tool.100489/
What is this?
This tool automates the compilation of JavaScript files with NW.js' compiler. The compiler creates binary versions of the files, ensuring protection of the source code. The tool also packages the code (and the assets) on an archive that Nw.js can read.
這是什麼?
此工具使用NW.js的編譯器自動編譯JavaScript文件。 編譯器創建文件的二進製版本,確保源代碼的保護。 該工具還將代碼(和資產)打包到Nw.js可以讀取的存檔上。

Please note: This tool will not work on Windows 10 S devices. It may work on ARM-powered devices, so long as you use the x86 version of nwjs.

点评

大佬每次給的東西都很棒!  发表于 2019-2-22 10:42
回复 支持 1 反对 0

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1001
在线时间
212 小时
注册时间
2011-11-23
帖子
109
6
发表于 2019-2-21 16:19:31 | 只看该作者
加密这方面还是自己来比较好,因为js之类的加密代码大的话影响效率
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7531
在线时间
1227 小时
注册时间
2008-12-14
帖子
555
5
发表于 2019-2-21 16:08:16 | 只看该作者
gnmyjc 发表于 2019-2-21 16:04
图像和声音有rpgmvp的加密,但是对于js和json,官方那边是不是也从来没有弄过加密呢? ...

js最好是混淆,效果不错。
需要购买本人MV插件必须先加wx好友。加不上wx就是本人忙,没时间卖。原则上太久以前的插件也不想卖,因为我也忘了,维护上会不给力。wx名:alskyif    本人插件地址:
   LCK_SRPG梦幻模拟战、火焰纹章类系统
   究极立绘ADV系统

   究极换装统合系统
   究极! 回想与CG系统
   消息文字的距离调整  
   自动返回上一张地图
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
306
在线时间
26 小时
注册时间
2018-12-30
帖子
9
4
 楼主| 发表于 2019-2-21 16:04:01 | 只看该作者
if216 发表于 2019-2-21 15:52
有啊,很简单的,异或一下就可以了。
代码推荐用混淆。
你是担心代码被人看还是图像声音被人用哪个呢?

图像和声音有rpgmvp的加密,但是对于js和json,官方那边是不是也从来没有弄过加密呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-14 01:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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