Blog信息 |
blog名称:网络爬虫 日志总数:39 评论数量:202 留言数量:2 访问次数:246313 建立时间:2005年3月22日 |

| |
[JSP应用]一个实现MD5的java类 软件技术, 电脑与网络
网络爬虫 发表于 2005/6/15 15:46:25 |
package test; import java.security.MessageDigest; /** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2003</p> * <p>Company: </p> * @author unascribed * @version 1.0 */
public class StringUtil {
private final static String[] hexDigits = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"};
/** * 转换字节数组为16进制字串 * @param b 字节数组 * @return 16进制字串 */
public static String byteArrayToHexString(byte[] b) { StringBuffer resultSb = new StringBuffer(); for (int i = 0; i < b.length; i++) { resultSb.append(byteToHexString(b[i])); } return resultSb.toString(); }
private static String byteToHexString(byte b) { int n = b; if (n < 0) n = 256 + n; int d1 = n / 16; int d2 = n % 16; return hexDigits[d1] + hexDigits[d2]; }
public static String MD5Encode(String origin) { String resultString = null;
try { resultString=new String(origin); MessageDigest md = MessageDigest.getInstance("MD5"); resultString=byteArrayToHexString(md.digest(resultString.getBytes())); } catch (Exception ex) {
} return resultString; }
public static void main(String[] args){ System.err.println(MD5Encode("a")); } }
在RFC 1321中,给出了Test suite用来检验你的实现是否正确:
MD5 ("") = d41d8cd98f00b204e9800998ecf8427eMD5 ("a") = 0cc175b9c0f1b6a831c399e269772661MD5 ("abc") = 900150983cd24fb0d6963f7d28e17f72MD5 ("message digest") = f96b697d7cb7938d525a2f31aaf161d0MD5 ("abcdefghijklmnopqrstuvwxyz") = c3fcd3d76192e4007dfb496cca67e13b |
|
|