1.创建加密类
package cn.tedu.boot.demo.util; import org.springframework.stereotype.Component; import org.springframework.util.DigestUtils; import java.util.UUID; @Component public class PasswordEncoder { public String encode(String rawPassword) { // 加密过程 // 1. 使用MD5算法 // 2. 使用随机的盐值 // 3. 循环5次 // 4. 盐的处理方式为:盐 + 原密码 + 盐 + 原密码 + 盐 // 注意:因为使用了随机盐,盐值必须被记录下来,本次的返回结果使用$分隔盐与密文 String salt = UUID.randomUUID().toString().replace("-", ""); String encodedPassword = rawPassword; for (int i = 0; i < 5; i++) { encodedPassword = DigestUtils.md5DigestAsHex( (salt + encodedPassword + salt + encodedPassword + salt).getBytes()); } return salt +encodedPassword; } public boolean matches(String rawPassword, String encodedPassword) {
密码加密类
于 2022-06-08 20:44:10 首次发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)