架构师 0 期 11 周作业
发布于: 2020 年 08 月 26 日
请用你熟悉的编程语言写一个用户密码验证函数,Boolean checkPW(String 用户 ID,String 密码明文,String 密码密文)返回密码是否正确 boolean 值,密码加密算法使用你认为合适的加密算法。
public class MD5Utils { public static String digest(final String str, final String salt) throws NoSuchAlgorithmException { MessageDigest md5 = MessageDigest.getInstance("MD5"); final String input = str + "23dtyb" + salt; final byte[] output = md5.digest(input.getBytes()); //todo 需要做一些处理 return new String(output); }}
public class Login { public static void main(String[] args) throws Exception { String userId = "100001"; String userPW = "fhgrgjidjfdljfkdjfdlj"; String digestedPW = "��\u001C���̂�C\n" + "�\u0010�"; Boolean loginSucceed = checkPW(userId, userPW, digestedPW); if (loginSucceed) { return; } throw new Exception("password error"); } static Boolean checkPW(String userId, String userPW, String userDigestedPW) throws Exception { try { String digestedPW = MD5Utils.digest(userPW, userId); if (digestedPW.equals(userDigestedPW)) { return true; } return false; } catch (final NoSuchAlgorithmException e) { //todo 抛出业务异常 throw new Exception(""); } }}
划线
评论
复制
发布于: 2020 年 08 月 26 日阅读数: 46
喵呜的小哥哥
关注
还未添加个人签名 2018.10.29 加入
还未添加个人简介
评论 (1 条评论)