import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Salt {
public static String getSaltDigest(String str){
str+="加盐";
String result = "";
try {
MessageDigest md5 = MessageDigest.getInstance("md5");
byte[] bytes = md5.digest(str.getBytes());
int temp;
for(byte b : bytes){
temp = b;
if(temp<0){
temp+=256;
}
if(temp<16){
result+="0";
}
result+=Integer.toHexString(temp);
}
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return result;
}
}
class Main{
public static void main(String[] args) {
String str = Salt.getSaltDigest("xxx");
System.out.println(str);
}
}
md5.digest()生成了16个正负128以内的哈希值,分别将这16个值转成一个个长度为2的16进制数的,最后组成一个长度为32的加密的码。