package com.example.week11;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class TestEncode {
public static void main(String[] args) {
String userID = "4J29XLNfVUYBdmaZr8nwz7hqHTI5gpce";
String password = "4Mxn65RrhD3ILdAF";
String encodePassword = "2a06df1dcc707f610dcdd479b151ec40";
Boolean checkResult = checkPW(userID, password, encodePassword);
System.out.println(String.format("userID : %s, password : %s, encodePassword : %s, checkResult : %s", userID, password, encodePassword, checkResult));
}
public static Boolean checkPW(String userID, String password, String encodePassword) {
String md5 = stringToMD5(userID + password);
return encodePassword.equals(md5);
}
public static String stringToMD5(String plainText) {
byte[] secretBytes = null;
try {
secretBytes = MessageDigest.getInstance("md5").digest(
plainText.getBytes());
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException("没有这个md5算法!");
}
String md5code = new BigInteger(1, secretBytes).toString(16);
for (int i = 0; i < 32 - md5code.length(); i++) {
md5code = "0" + md5code;
}
return md5code;
}
}
评论