这几天, 学习android 游戏的, 发现android程序基本上都是可以解包的。
很多游戏的素材都是没有加密的,也有一些加密的, 比如 《千炮捕鱼》《放开那三国》
他们的素材都加密了, 图片,lua 脚本 , 而且都把解密算法放在了 .so 文件中 ,
后来深入,发现他们都用了一种很简单的异或算法, 几经测试就可以得到异或的字串,
很容易就解开了 。还有一些游戏, 《时空猎人》还在研究中
《千炮捕鱼》http://www.mumayi.com/android-503955.html
它的解密文件扩展名是 uzqp
的加密就比较简单 , 他用的是 一般的异或, 这样 加密和解密都是一样的, 给一个全是\x00的原文件,
很容易就得出它的异或字串"\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x01\x0d\0x0f\x00"
对此我专门写了一个python 脚本进行测试
def fun():
fn1='../../../qpby/assets/Bubble.png.uzqp'
xorstr='\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x01\x0d\x0e\x0f\x00'
with open(fn1,'rb') as f:
data = f.read();
data0=""
for i in range(len(data)):
data0 += chr