MD5(Message Digest Algorithm)消息摘要算法第五版;
为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
*
* MD5消息摘要算法
*
* @author XIONG JIAJIA
*
* */
public class DigestPass {
private MessageDigest messageDigest;
private String resultStr = "";
private byte[] byteArgs = null;
public String getDigestString(String originalText){
try {
//生成MessageDigest对象,传入所用算法的参数(MD5)
messageDigest = MessageDigest.getInstance("MD5");
//使用 getBytes( )方法生成字符串数组
messageDigest.update(originalText.getBytes("GBK"));
/**
*
* 执行MessageDigest对象的digest()方法完成计算;
*
* 计算的结果通过字节类型的数组返回
*
* */
byteArgs = messageDigest.digest();
} catch (NoSuchAlgorithmException e){
e.printStackTrace();
} catch (UnsupportedEncodingException ee){
ee.printStackTrace();
} finally {
messageDigest.reset();
}
//将结果转换成字符串 ; result清空,否则它会自动累加!
resultStr = "";
for(int i = 0; i < byteArgs.length; i++){
resultStr += Integer.
toHexString((0x000000ff & byteArgs[i]) | 0xffffff00)
.substring(6);
}
return resultStr;
}
}
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
DigestPass dp=new DigestPass();
String md5psw=dp.getDigestString("123456");
System.out.println(md5psw);
}
}
e10adc3949ba59abbe56e057f20f883e