首页 > 代码库 > 数据安全
数据安全
数据安全与实例
1.网络数据加密1>加密对象:隐私数据,比如密码、银行信息
2>加密方案
* 提交隐私数据,必须用POST请求
* 使用加密算法对隐私数据进行加密,比如MD5
3>加密增强:为了加大破解的难度
* 对明文进行2次MD5: MD5(MD5($pass))
* 先对明文撒盐,再进行MD5: MD5($pass.$salt)
2.本地存储加密
1> 加密对象:重要的数据,比如游戏数据。
3.代码安全问题
1> 反编译工具:逆向工程
* 反编译出来都是纯C语言,可读性不高,但是可以知道源代码里面用的是什么框架。
2> 解决方案:发布之前对代码进行混淆。
4.什么是MD5
全称是Message Digest Algorithm5,译为“消息摘要算法第5版”
效果:对输入信息生成唯一的128位散列值(32个字符)
5.MD5的特点
输入两个不同的明文不会得到相同的输出值
根据输出值,不能得到原始的明文,即其过程不可逆
6.MD5的应用
由于MD5加密算法具有较好的安全性,而且免费,因此该加密算法被广泛使用
主要运用在数字签名、文件完整性验证以及口令加密等方面
MD5解密网站:http://www.cmd5.com
全称是Message Digest Algorithm5,译为“消息摘要算法第5版”
效果:对输入信息生成唯一的128位散列值(32个字符)
5.MD5的特点
输入两个不同的明文不会得到相同的输出值
根据输出值,不能得到原始的明文,即其过程不可逆
6.MD5的应用
由于MD5加密算法具有较好的安全性,而且免费,因此该加密算法被广泛使用
主要运用在数字签名、文件完整性验证以及口令加密等方面
MD5解密网站:http://www.cmd5.com
7.MD5加密实例
/**
* MD5($pass.$salt)
*
* @param text 明文
*
* @return 加密后的密文
*/
- (NSString*)MD5Salt:(NSString*)text
{
// 撒盐:随机地往明文中插入任意字符串
NSString *salt = [textstringByAppendingString:@"aaa"];
return [saltmd5String];
}
注意:
撒盐:随机地往明文中插入随意字符串,但是只能插入固定的字符串,不然服务器也不能解析。
/**
* MD5(MD5($pass))
*
* @param text 明文
*
* @return 加密后的密文
*/
- (NSString*)doubleMD5:(NSString*)text
{
return [[textmd5String]md5String];
}
/**
* 先加密,后乱序
*
* @param text 明文
*
* @return 加密后的密文
*/
- (NSString*)MD5Reorder:(NSString*)text
{
NSString *pwd = [textmd5String];
// 加密后pwd == 3f853778a951fd2cdf34dfd16504c5d8
NSString *prefix = [pwdsubstringFromIndex:2];
NSString *subfix = [pwdsubstringToIndex:2];
// 乱序后 result == 853778a951fd2cdf34dfd16504c5d83f
NSString *result = [prefixstringByAppendingString:subfix];
NSLog(@"\ntext=%@\npwd=%@\nresult=%@", text, pwd, result);
return result;
}
/**
* MD5(MD5($pass))
*
* @param text 明文
*
* @return 加密后的密文
*/
- (NSString*)doubleMD5:(NSString*)text
{
return [[textmd5String]md5String];
}
/**
* 先加密,后乱序
*
* @param text 明文
*
* @return 加密后的密文
*/
- (NSString*)MD5Reorder:(NSString*)text
{
NSString *pwd = [textmd5String];
// 加密后pwd == 3f853778a951fd2cdf34dfd16504c5d8
NSString *prefix = [pwdsubstringFromIndex:2];
NSString *subfix = [pwdsubstringToIndex:2];
// 乱序后 result == 853778a951fd2cdf34dfd16504c5d83f
NSString *result = [prefixstringByAppendingString:subfix];
NSLog(@"\ntext=%@\npwd=%@\nresult=%@", text, pwd, result);
return result;
}
数据安全
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。