Android加密算法种类
对称加密算法
DES、3DES(已不使用)
DES全称为Data Encryption Standard,即数据加密标准,DES秘钥为56位
AES 密码学中的高级加密标准(Advanced Encryption Standard,AES)
非对称加密算法
RES
单向散列算法:验证完整性
md5:加密算法是不可逆的,不再安全,但还彻底放弃使用
MD5(Message Digest Algorithm 5)是消息摘要算法的一种,它可以将任意长度的“消息”(也可以是文件)计算出一个固定长度的“摘要”,通常是128位。MD5广泛应用于数字签名、数据完整性校验、密码存储等领域。在Java中,可以使用java.security.MessageDigest类来实现MD5算法。
SHA
这是一种较新的散列算法,可以对任意长度的数据运算生成一个160位的数值;
编码方式
Base64不是一种加密方式,而是一种编码方式。
base64可以用于在http传递信息,不能用肉眼看到,没有密钥,可以进行解码. 注意:java自带的Base64无法放在url中,因为base64编码后的+等特殊符号会在接手时变为空格(url将+认为空格),例如:http:*?id=’1B2F+3D4g’在传输时候中间的+号就会变为空格,这个时候我们可以使用appach的包来进行对url加密。
常见加密算法的使用场景
非对称加密算法:https的ssl协商秘钥
对称加密算法:协商出秘钥之后的请求加密
单向散列算法:账号密码等保存或网络请求
编码方式:图片的上传可以将图片先编码成base64后上传到服务器