[转载]使用SHA1来校验cocos2dx存储的数据是否被修改
来源:互联网 发布:安卓数据恢复软件 apk 编辑:程序博客网 时间:2024/06/03 12:35
当我们使用本地数据存储CCUserDefault时会存在一个缺陷,那就是CCUserDefault采用的存储方式为明文存储,这对于玩家来说修改存档的数据是十分方便的。今天我们要学习的就是如何使用SHA1消息摘要算法对CCUserDefault存储的数据进行加密。
SHA1库文件的下载地址: http://www.tamale.net/ 进入网页后找到SHA-1点击下载,解压出来后将sha1.h与sha1.cpp两个文件拷贝到项目目录下即可。
采用信息摘要算法加密的过程是:
1.首先使用CCUserDefault存储一个数据
2.使用sha1的addBytes方法写入待校验数据
3.多创建一个key,这个key仍然需要写入,但是会被隐藏到编码中,等到我们取出存储数据时也同时将这个key值取出,然后对校验码进行比对,如果相同,则证明数据没有被修改。当然如果有人将你的项目汇编找到了key那就另当别论了....但是一般选手是不具备这个实力的。
下面看代码:
首先需要引入头文件:
#include "sha1.h"
然后笔者在HelloWorld的init()方法中直接添加了下列代码:控制台输出结果:
校验结果相同,说明数据未被修改。
0 0
- [转载]使用SHA1来校验cocos2dx存储的数据是否被修改
- [Android]使用checksum校验文件是否被修改
- 【Android数据加密与完整性校验之使用MessageDigest类进行MD5/SHA1】校验数据传输的完整性常用方式
- 使用SharedPreferences来存储数据
- 使用void *来存储数据
- 使用 DataSet 来修改数据
- 使用SharedPreference来存储一个变量,用来记录是否已经导入了SQLite数据
- 使用SharedPreference来存储一个变量,用来记录是否已经导入了SQLite数据。
- EASYUI 使用自定义的校验类型来联动校验表单
- 使用不同的stream来CRC校验
- 使用QML LocalStorage来存储我们的数据
- struts2使用validate方法来实现对表单输入数据的校验操作
- 使用jsp来实现对表单对象当中的数据进行校验
- cocos2dx-数据存储
- cocos2dx xml 数据存储
- cocos2dx:数据存储-UserDefault
- cocos2dX 之数据存储
- cocos2dx-数据存储
- 趣写算法系列之--匈牙利算法
- Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
- AX 2012 上线杂记 一
- [转载]Cocos2d-x3.2总结(四)使用物理引擎进行碰撞检测
- [转载]cocos2d-x3.2源码分析(一)类FileUtils--实现把资源放在Resources文件目录下达到多平台的引用
- [转载]使用SHA1来校验cocos2dx存储的数据是否被修改
- 试用Python+Psycopg操作PostgreSQL
- 关于vi/vim不正常退出产生的swp文件
- unix
- mysql 相关语法
- redis教程(五):redis常用命令
- 已知二叉树先序遍历中序遍历求其后序遍历、重建二叉树
- [转载]cocos2d-x游戏开发(十四)用shader使图片背景透明
- PHP学习笔记