第十一周作业

用户头像
Meow
关注
发布于: 2020 年 12 月 06 日

请用你熟悉的编程语言写一个用户密码验证函数,Boolean checkPW(String 用户 ID,String 密码明文,String 密码密文),返回密码是否正确 boolean 值,密码加密算法使用你认为合适的加密算法。





package week11;
import java.nio.charset.StandardCharsets;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
* @program: GeekTest
* @description:
* @author: Meow_Young
* @created: 2020/12/06 20:54
*/
public class UserService {
public boolean checkPwd(String userId, String original, String encrypted) {
String md5 = encrypt(original, getSalt(userId));
return encrypted.equals(md5);
}
private String getSalt(String userId) {
// 根据userid 获取 salt
return userId;
}
private String encrypt(String original, String salt) {
String passwordMd5 = null;
try {
MessageDigest md5 = MessageDigest.getInstance("MD5");
byte[] bytes = md5.digest((original + salt).getBytes(StandardCharsets.UTF_8));
passwordMd5 = new String(bytes);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return passwordMd5;
}
}



用户头像

Meow

关注

还未添加个人签名 2018.05.09 加入

还未添加个人简介

评论

发布
暂无评论
第十一周作业