当前位置: 移动技术网 > IT编程>移动开发>Android > android开发中数据加密实现方法

android开发中数据加密实现方法

2018年09月20日  | 移动技术网IT编程  | 我要评论

gamecih2,手镯脚镯,忻州市委

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一样是可逆的,支持对加密字符串进行解密,解密时秘钥必须与加密时一致。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网