android开发中数据加密实现方法
android开发中数据实现方法。
1)android 数据加密
数据安全很重要,无论干什么都需要密码,各种账号密码一旦泄露造成财产的损失,但是android对数据安全支持很弱,并没有很好的数据保密措施。
2)eg: 在使用sharedpreferences 时,它是操作一个xml配置文件的,保存的地址在data/data/应用报名/shared_prefs/***.xml,打开文件全部都是明文,
使用也不安全,数据库文件具体路径在data/data/database/***.db,如果未经加密处理,
通过sqlite的管理工具,也能轻松的查看数据库中存储的各种信息,
所以我们需要使用加密文件:
加密算法有很多种: md5 rsa aes 3des
1)md5:
他是不可逆的加密算法,也就是无法解密,主要用于客户端用户密码加密,
无论原始字符串是什么,md5加密字符串都是32位的十六进制字符串
2)rsa :
算法在客户端使用公钥加密,在服务端使用私钥解密,这样一来,即时加密的公钥被泄密,没有私钥仍然无法解密,
rsa加密的3个注意事项:
1)需要导入加密算法依赖包,bcprov-jdk16-1.46.jar 将该jar包放在当前板块的libs目录下
2)rsa加密的结果是字节数组,经过base64编码才能形成最终的加密字符串,
3)根据需求对加密的字符串做reverse倒序处理;
3) aes加密
aes是设计用来替换des的高级加密算法,该算法是可逆算法,支持对加密字符串进行解密,解密时秘钥必须与加密时一致。
4)3des 加密
3des是三重数据加密算法,相当于对每个数据块应用3次des加密算法,因为原先des算法的秘钥长度过短,容易遭到暴力,所以3des算法是通过增加秘钥的长度防范加密数据被破解,在实际开发中,3des的秘钥必须是24位字节数组,另外,3des加密生成的字节数组,也得通过base64编码为文本形式的加密字符串。
该算法与aes一样是可逆的,支持对加密字符串进行解密,解密时秘钥必须与加密时一致。
下一篇: 3DSMax怎么使用Loft命令建模?
推荐阅读
-
android开发中数据加密实现方法
-
Android开发中如何使用BottomTabBar实现底部导航页
-
Android7.0开发实现Launcher3去掉应用抽屉的方法详解
-
Java中RSA加密解密的实现方法分析
-
基于Android中实现定时器的3种解决方法
-
解析在Android中为TextView增加自定义HTML标签的实现方法
-
解析Android中如何做到Service被关闭后又自动启动的实现方法
-
解析android中隐藏与显示软键盘及不自动弹出键盘的实现方法
-
Android应用开发中模拟按下HOME键的效果(实现代码)
-
Html5中localStorage存储JSON数据并读取JSON数据的实现方法