class="java" name="code">package com.supan.md5;
import java.security.*;
import java.util.logging.Level;
import java.util.logging.Logger;
public class Md5
{
public String md5(String str)
{
String s = str;
if (s == null) //如果传过来的字符串为空,那么返回空字符串作为密码
{
return "";
}
else
{
String value = null;
MessageDigest md5 = null; //MessageDigest
// 类为应用程序提供信息摘要算法的功能,如 MD5 或SHA 算法。信息摘要是安全的单向哈希函数,它接收任意大小的数据,并输出固定长度的哈希值。
try
{
md5 = MessageDigest.getInstance("MD5"); //也可以是SHA
} catch (NoSuchAlgorithmException ex)
{
Logger.getLogger(Md5.class.getName()).log(Level.SEVERE, null,
ex);
}
sun.misc.BASE64Encoder baseEncoder = new sun.misc.BASE64Encoder();
try
{
value = baseEncoder.encode(md5.digest(s.getBytes("utf-8")));
} catch (Exception ex)
{
}
return value;
}
}
public static void main(String[] args)
{
String mingwen = "chenchaoyang";
System.out.println("明文chenchaoyang的密文是:" + new Md5().md5("chenchaoyang123"));
}
}