Java 加密解密之消息摘要算法(MD5 SHA MAC) http://aub.iteye.com/blog/1131494

现有的消息摘要算法

消息摘要算法包含MD、SHA和MAC三大系列,常用于验证数据的完整性,是数据签名算法的核心算法。
MAC与MD和SHA不同,MAC是含有密钥的散列函数算法,我们也常把MAC称为HMAC

JDK对消息摘要算法的支持

JDK6支持MD2/MD5/SHA/SHA256/SHA384/SHA512/HmacMD5/HmacSHA1/ HmacSHA256/HmacSHA384/HmacSHA512
使用到 十六进制工具类Hex.java  见:   java byte数组与十六进制字符串互转

 

MD和SHA系列的java实现:

DigestUtils.java

 

参考 org.apache.commons.codec.digest.DigestUtils
下载地址: http://commons.apache.org/codec/download_codec.cgi

 

 

MAC系列的java实现

Hmac.java