读书人

java MD5 工具种

发布时间: 2012-08-24 10:00:21 作者: rapoo

java MD5 工具类

笔记 :java MD5 工具类

import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;public class MD5Crypter {    private final static String[] hexDigits = {            "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"};    private MessageDigest mdInstance = null;    public  MD5Crypter() {        try {            mdInstance = MessageDigest.getInstance("MD5");        } catch (NoSuchAlgorithmException e) {            //        }    }    private 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 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 String encode(final String origin) {        return byteArrayToHexString(mdInstance.digest(origin.getBytes()));    }    public String byte2hex(byte[] b) {        String hs = "";        String stmp = "";        for (int n = 0; n < b.length; n++) {            stmp = (java.lang.Integer.toHexString(b[n] & 0XFF));            if (stmp.length() == 1) {                hs = hs + "0" + stmp;            } else {                hs = hs + stmp;            }            if (n < b.length - 1) {                hs = hs + ":";            }        }        return hs.toUpperCase();    }}
?

读书人网 >编程

热点推荐