- MD5即Message-Digest Algorithm 5(信息-摘要算法5),sha Secure Hash Algorithm(安全哈希算法)
- 当我们在用户注册时,写入数据库的密码需要加密,当用户登陆时,登陆输入的密码要加密后与数据库中的密码对比。
- 一般找回密码不是去数据库中反向获取原始密码,因为这是不可能的,所以一般的做法都是重新设置密码。
- 我这里先不讲原理,只求会用,下面就是加密的java代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46import org.apache.commons.codec.digest.DigestUtils;
public class SecurityUtils {
/**
* md5加密
*
* @param value 要加密的值
* @return md5加密后的值
*/
public static String md5Hex(String value) {
return DigestUtils.md5Hex(value);
}
/**
* 3次md5操作
* @param value
* @return
*/
public static String md5Hex3(String value) {
for (int i = 0; i < 3; i++) {
value = DigestUtils.md5Hex(value);
}
return value;
}
/**
* sha256加密
*
* @param value 要加密的值
* @return sha256加密后的值
*/
public static String sha256Hex(String value) {
return DigestUtils.sha256Hex(value);
}
public static String sha512Hex(String value) {
return DigestUtils.sha512Hex(value);
}
public static void main(String[] args) {
System.out.println(SecurityUtils.md5Hex("123456"));
System.out.println(SecurityUtils.sha512Hex("123456"));
System.out.println(SecurityUtils.sha256Hex("123456"));
}
}
注:
- 如有不正确还请见谅。
- 另外,如需项目代码请访问我的Github:https://github.com/Zxnaruto