import org.springframework.util.DigestUtils;
import java.util.UUID;
/**
* MD5加密
*/
public class MD5Util {
/**
* 循环次数
*/
final static Integer NUM=3;
/**
* 加密
*
* @param rawPassword
* @return
*/
public static String encrypt(String rawPassword) {
String salt = UUID.randomUUID().toString().replace("-", "");
return getPassword(salt, rawPassword);
}
/**
* 验证密文是否正确
* @param rawPassword
* @param encodedPassword
* @return
*/
public static boolean verifyCiphertext(String rawPassword, String encodedPassword) {
String salt = encodedPassword.substring(0, 32);
String newPassword = rawPassword;
newPassword =getPassword(salt,newPassword);
return newPassword.equals(encodedPassword);
}
private static String getPassword(String salt,String password){
for (int i = 0; i < NUM; i++) {
password = DigestUtils.md5DigestAsHex(
(salt + password + salt + password + salt).getBytes());
}
return salt + password;
}
}
密码加密工具类
于 2024-06-20 14:39:36 首次发布