XXTEA加密解密代码示例 - donnki/banabala_wiki GitHub Wiki
使用以下命令:
./pack_files.sh -i /Users/pp3288/Desktop/temp/img -o ./img -ek XXTEA -es MY_SIGN_STRING
pack_files.sh 是quick-cocos里对文件加密打包的工具,详见xxtea_demo。 (下面的ResourcesDecode.h也可以在该ZIP文件里找到)
以下是一串应用ResourcesDecode来解密上面生成的加密PNG文件的例子
ResourcesDecode::sharedDecode()->setXXTeaKey("XXTEA", strlen("XXTEA"), "MY_SIGN_STRING", strlen("MY_SIGN_STRING"));
cocos2d::Scene* scene = cocos2d::Director::getInstance()->getRunningScene();
Data *data = new Data;
*data = FileUtils::getInstance()->getDataFromFile("img/body_down.png");
unsigned char* buffer = data->getBytes();
unsigned long size = data->getSize();
unsigned long pSize = NULL;
unsigned char* pBuffer = ResourcesDecode::sharedDecode()->decodeData(buffer, size, &pSize);
//此处的pBuffer即解密过后的字节流数组
Image *img = new Image;
img->initWithImageData(pBuffer, pSize);
Texture2D *tex = new Texture2D;
tex->initWithImage(img);
cocos2d::Sprite *sprite = cocos2d::Sprite::createWithTexture(tex);
sprite->setPosition(100, 100);
scene->addChild(sprite,99999);