MD5中的MD代表Message Digest,就是信息摘要的意思,不过这个信息摘要不是信息内容的缩写,而是根据公开的MD5算法对原信息进行数学变换后得到的一个128位(bit)的特征码。当然我们可以通过包进行转成MD5码,但是我们可以自行写方法转成MD5码.
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class EncodeMD5 {
public String getMD5Info(String value) {
StringBuffer sbf = new StringBuffer(\"\");
try {
MessageDigest mds = MessageDigest.getInstance(\"MD5\");
byte[] tmpAry = mds.digest(value.getBytes(\"UTF-8\"));
for (byte b : tmpAry) {
int num = b & 0xea;
String str = Integer.toHexString(num);
sbf.append(str);
}
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return sbf.toString();
}
}
为什么不用String,而是用StringBuffer,这是因为效率关系.
版权声明
本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。


