- 得到字節
- 每個字節與11111111與操作得到int值
- 轉換成16進制
- 如果長度小於2 後面加0
- 組合起來返回
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class MD5Utils {
public static String md5Password(String password){
try {
MessageDigest digest = MessageDigest.getInstance("md5");
byte[] result = digest.digest(password.getBytes());
StringBuffer buffer = new StringBuffer();
for (byte b : result) {
int num = b & 0xff;
String str = Integer.toHexString(num);
if(str.length()==1){
buffer.append("0");
}
buffer.append(str);
}
return buffer.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
return "";
}
}
}