Android中加密算法
加密
1.MD5加密
为了安全保存密码, 可以md5算法, md5是一种不可逆的加密算法
public static void main(String[] args) {
try {
String password = "123456";
MessageDigest digest = MessageDigest.getInstance("MD5");
byte[] result = digest.digest(password.getBytes());
StringBuffer sb = new StringBuffer();
for (byte b : result) {
int i = b & 0xff;// 将字节转为整数
String hexString = Integer.toHexString(i);// 将整数转为16进制
if (hexString.length() == 1) {
hexString = "0" + hexString;// 如果长度等于1, 加0补位
}
sb.append(hexString);
}
System.out.println(sb.toString());//打印得到的md5
} catch (NoSuchAlgorithmException e) {
// 如果算法不存在的话,就会进入该方法中
e.printStackTrace();
}
}
登录网站: http://www.cmd5.com/ 验证md5准确性
为避免暴力破解, 可以对算法加盐
什么是加盐?
比如以前我们只是把password进行md5加密, 现在可以给password加点盐,这个盐可以是一个固定的字符串,比如用户名username, 然后我们计算一下md5(username+password), 保存在服务器的数据库中, 即使这个md5泄露, 被人破解后也不是原始的密码, 一定程度上增加了安全性
目前市面上已经可以达到的解密水平


浙公网安备 33010602011771号