class="java" name="code">package com.dc; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; /* ****************** 类说明 ********************* * class : DcMD5Util * @author : ncc * create time : 2017-12-19 上午10:24:09 * @version : 1.0 * description : MD5 即Message-Digest Algorithm 5(信息-摘要算法 5),用于确保信息传输完整一致。 * 是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。 * 将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理,MD5的前身有MD2、MD3和MD4。 * MD5的作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式 * (就是把一个任意长度的字节串变换成一定长的十六进制数字串)。 * 除了MD5以外,其中比较有名的还有sha-1、RIPEMD以及Haval等 * @see : * ************************************************/ public class DcMD5Util { /* ******************************************** * method name : eccrypt * description : 对字符串加密 * @return : byte[] * @param : @param info * @param : @return * @param : @throws NoSuchAlgorithmException * @param : @throws UnsupportedEncodingException * modified : ncc , 2017-12-19 * @see : * ********************************************/ public byte[] eccrypt(String info) throws NoSuchAlgorithmException, UnsupportedEncodingException{ //根据MD5算法生成MessageDigest对象 MessageDigest md5 = MessageDigest.getInstance("MD5"); //使用srcBytes更新摘要 md5.update(info.getBytes()); //完成哈希计算,得到result byte[] resultBytes = md5.digest(); return resultBytes; } public static void main(String args[]) throws NoSuchAlgorithmException, UnsupportedEncodingException{ String msg = "欢迎光临得草之家"; DcMD5Util md5 = new DcMD5Util(); byte[] resultBytes = md5.eccrypt(msg); System.out.println("密文是:" + new String(resultBytes)); System.out.println("明文是:" + msg); } }
?
?