Java 对密码MD5
Posted 夜雨梧桐
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 对密码MD5相关的知识,希望对你有一定的参考价值。
MD5,即"Message-Digest Algorithm 5(信息-摘要算法)";
MD5将任意长度的“字节串”变换成一个128bit的大整数,并且它是一个不可逆的字符串变换算法;
1 import java.math.BigInteger; 2 import java.security.MessageDigest; 3 import java.security.NoSuchAlgorithmException; 4 5 public class Utility { 6 static MessageDigest messageDigest; 7 static String pwd; 8 public static String getMD5(String plainText) { 9 try { 10 //生成一个MD5加密计算摘要 11 messageDigest = MessageDigest.getInstance("MD5"); 12 //用明文跟新消息摘要 13 messageDigest.update(plainText.getBytes()); 14 //digest()最后确定返回md5 hash值,返回值为8位字符串。因为md5 hash值是16位的hex值,实际上就是8位的字符 15 //BigInteger函数则将8位的字符串转换成16位hex值,用字符串来表示;得到字符串形式的hash值 ,其中1代表正数,0代表0,-1代表负数 16 pwd = new BigInteger(1, messageDigest.digest()).toString(16); 17 18 } catch (NoSuchAlgorithmException e) { 19 e.printStackTrace(); 20 } 21 return pwd; 22 } 23 }
测试123456 的MD5 为 E10ADC3949BA59ABBE56E057F20F883E
以上是关于Java 对密码MD5的主要内容,如果未能解决你的问题,请参考以下文章
求Java的MD5加密解密实现类。 要实现对用户的密码进行加密! 然后验证用户的密码!