先看看代碼再說:
代碼如下:
package com.b510.note;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
* MD5加密
*
* @author Hongten
*
*/
public class MD5 {
public static void main(String[] args) {
System.out.println(MD5.getMD5("123456"));
}
/**
* 用md5編碼後的碼值
*
* @param sInput
* 明碼
* @return md5加密後的密碼
*/
public static String getMD5(String sInput) {
String algorithm = "";
if (sInput == null) {
return "null";
}
try {
algorithm = System.getProperty("MD5.algorithm", "MD5");
} catch (SecurityException se) {
}
MessageDigest md = null;
try {
md = MessageDigest.getInstance(algorithm);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
byte buffer[] = sInput.getBytes();
for (int count = 0; count < sInput.length(); count++) {
md.update(buffer, 0, count);
}
byte bDigest[] = md.digest();
BigInteger bi = new BigInteger(bDigest);
return (bi.toString(16));
}
}
運行效果:
代碼如下:
1 186d636867f51c667893c1b1b3d96dc3
我們可以根據自己的需要,來得到自己想要的md5加密後的密文;
代碼如下:
1 //這裡的數字是可以根據需要而進行改變的
2 return (bi.toString(16));