一般的webgame中都会对资源、消息进行加密,这里只是简单记录一下对文件的加密过程。
上图为实际项目中所使用的加密工具(较为简单的一个air项目)
输入加密key + 需要加密的文件 --> 加密 –> 将加密后的文件保存至另一目录(后缀名视自己的项目的规则进行修改)
实现步骤:
1、读取文件(flash.filesystem.File),获取文件流(flash.filesystem.FileStream),获取文件的二进制流(flash.util.ByteArray)
2、对二进制数据进行加密(混淆一下)
3、保存加密后的二进制数据
new File(path);
//file.isDirectory == false && file.exists
3:
new FileStream();
new ByteArray();
//只读模式
7: fs.position = 0;
8: fs.readBytes(bytes, 0, fs.bytesAvailable);
9: fs.close();
10:
11:
//要保存的文件完整路径
new File(tempFileName);
if (tempFile.exists)
15: {
16: tempFile.deleteFile();
17:
new File(tempFileName);
19: }
20:
new FileStream();
22: tempFS.open(tempFile, FileMode.WRITE);
//加密数据
24: tempFS.close();
25:
26:
//encrypt..
int = 0;
new ByteArray();
30: var key:String = StringUtil.trim(keyTxt.text);
31:
byte.length; i < len; i++)
33: {
//todo...
35:
//.....);
37: }
38:
return outByteArray;