首页 > 代码库 > MD5算法原理

MD5算法原理

//消息摘要:将任意长度的字符数组处理成定长的字符数组,用于确保原字符串不被修改,//也可以用做密码确认,如果密码一致,则MD5产生后的值必然一致,否则不相同public class DataUtil {    public static void main(String[] args) throws Exception {        char[] ch={‘0‘,‘1‘,‘2‘,‘3‘,‘4‘,‘5‘,‘6‘,‘7‘,‘8‘,‘9‘,‘A‘,‘B‘,‘C‘,‘D‘,‘E‘,‘F‘,};        String src= "唐";        StringBuffer sb=new StringBuffer();        byte[] b1=src.getBytes();        System.out.println("-----------"+b1.length);        for(byte b:b1){            System.out.print(b+"  ");        }        System.out.println();        MessageDigest md= MessageDigest.getInstance("MD5");        byte[] b2=md.digest(b1);        System.out.println("-------"+b2.length);        for(byte b:b2){            System.out.print(b+" ");            //高四位            sb.append(ch[b>>4 & 0x0F]);            //低四位            sb.append(ch[b & 0x0F]);        }        System.out.println();        System.out.println(sb.length()+":"+sb.toString());                    }}

 

MD5算法原理