MD5加密JAVA版

import java.security.MessageDigest;  
import java.security.NoSuchAlgorithmException;  
class MD5Security {  
    private final static char[] hexDigits = { '0', '1', '2', '3', '4', '5',  
            '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };  
    private static String bytesToHex(byte[] bytes) {  
        StringBuffer sb = new StringBuffer();  
        int t;  
        for (int i = 0; i < 16; i++) {  
            t = bytes[i];  
            if (t < 0)  
                t += 256;  
            sb.append(hexDigits[(t >>> 4)]);  
            sb.append(hexDigits[(t % 16)]);  
        }  
        return sb.toString();  
    }  
    public static String md5(String input) throws Exception {  
        return code(input, 32);  
    }  
    public static String code(String input, int bit) throws Exception {  
        try {  
            MessageDigest md = MessageDigest.getInstance(System.getProperty(  
                    "MD5.algorithm", "MD5"));  
            if (bit == 16)  
                return bytesToHex(md.digest(input.getBytes("utf-8")))  
                        .substring(8, 24);  
            return bytesToHex(md.digest(input.getBytes("utf-8")));  
        } catch (NoSuchAlgorithmException e) {  
            e.printStackTrace();  
            throw new Exception("Could not found MD5 algorithm.", e);  
        }  
    }  
    public static String md5_3(String b) throws Exception{  
        MessageDigest md = MessageDigest.getInstance(System.getProperty(  
                "MD5.algorithm", "MD5"));  
        byte[] a = md.digest(b.getBytes());  
        a = md.digest(a);  
        a = md.digest(a);  
          
        return bytesToHex(a);  
    }  
}  

http://blog.csdn.net/siemenliu/article/details/5786923

你可能感兴趣的:(MD5加密JAVA版)