同时在不同的机子上测试也得到了不同的结果emm···还没有时间进行修复,当然后面有时间改完封装也会拿出来供大家测试的。 另外,也在一些论坛上也寻找了一些封装好的加解密程序,比如jsc解密v1.44,似乎能满足现在Cocos2dx版本的文件加解密,操作也较为简单,大家可以尝试食用。 总结 常规在libcocos2djs.so文件中搜索As...
对于Cocos2dx打包的游戏就不必多说,我们在修改游戏中,经常会碰到后缀为jsc的文件,这是基于cocos2d开发的游戏的加密代码,本质上是js文件,只是被加密了。 所以如果我们想了解一个jsc游戏的逻辑,就需要将它解密。 最近,在碰到相关的jsc游戏后,了解了相关知识后,对其解密过程有了熟悉,所以就分享下思路吧,有什么问题欢迎...
同时在不同的机子上测试也得到了不同的结果emm···还没有时间进行修复,当然后面有时间改完封装也会拿出来供大家测试的。 另外,也在一些论坛上也寻找了一些封装好的加解密程序,比如jsc解密v1.44,似乎能满足现在Cocos2dx版本的文件加解密,操作也较为简单,大家可以尝试食用。 总结 常规在libcocos2djs.so文件中搜索As...
在AndroidManifest.xml下找到其定义为cocos2djs,即加载了libcocos2djs.so文件。 明确了加载Assets目录资源的操作大概率不在java层后,再结合非虫前辈的“jsc反编译工具编写探索之路”,研究对象随即转移到libcocos2djs.so上。 三•构建过程 通过阅读Cocos2dx源码发现,...
在入口Cocos2dxActivity的onLoadNativeLibraries函数中,我们找到了加载libcocos2djs.so文件的步骤,该文件位于AndroidManifest.xml中。初步分析显示,加载Assets目录资源的操作不在Java层进行。接着,我们参考“jsc反编译工具编写探索之路”一文,将注意力转移到libcocos2djs.so文件上。在Cocos2dx源码中,我们发现其...
通过回溯,找到了游戏A中的Key值(v26),使用该值成功解密jsc文件。游戏B的分析类似,同样在jsb_set_xxtea_key函数中找到Key值(v10),并通过附近的字符串找到可疑的Key值和Cocos Game。尝试使用此Key值解密,同样获得成功。对比游戏A中的密匙,发现都位于applicationDidFinishLaunching函数内,可能为新...
解压之后,找到里面的assets文件夹里面的src文件夹里面的jsc文件。 如果你想要的是js文件,重点就是破解这个文件。 我找到了官网的说辞,通过阅读多个大佬的文章,结合自己的理解,写了一段代码,可以找到加密的密码,从而成功破解了jsc。 但是,看到源码之后,却发现还有更大的问题需要破解。
此时再结合CocosCreator构建项目的过程就不难理解了,当游戏应用环境加载完毕后,该函数内把Key值传入到解密的函数中去,进而解密函数将jsc文件化为js文件,并拷贝到内存中去,游戏开始调用js文件,进入游戏界面。 以上的实例分析只是拿简单的 jsb_set_xxtea_key 函数入手,当然也可以拿其他的关键函数入手,依然拿游戏A举例...
Cocos2dx-js开发的游戏应用,其游戏核心内容被打包到了Android应用的Assets目录中。其中包含了经过加密的jsc文件,正因为经过加密处理,无法获取游戏核心逻辑。通常需要对jsc文件进行解密处理。Assets目录结构如下图所示。 2获取key 2.1静态获取 静态方式直接使用ida打开so文件,以jsb和encrypt为关键字,可以定位到部分加密函数,...
关于《Cocos2dx-js游戏的jsc文件解密教程》,有一些同学似乎遇到了一些新的问题,下面列举一些:利用ASCII字符串Cocos Game来定位解密密匙在有些游戏中似乎行不通;拿到了正确的Key后,利用解密工具解出来依然是乱码;解密后的js文件用不用重新加密为jsc格式的文件然后打包回去;解密的密匙还能在哪里获取;···诸如此类的问...