欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

后台MD5加密

程序员文章站 2022-03-14 19:50:20
...

MD5加密

后台MD5加密

/**
 * MD5加密
 */
public class MD5Util {
    public static String EncoderByMd5(String str) {
        MessageDigest md5 = null;
        try {
            //创建MD5核心对象
            md5 = MessageDigest.getInstance("MD5");
            // 将字符编码改为UTF-8
            md5.update(str.getBytes("UTF-8"));
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        byte b[] = md5.digest();
        int i;
        StringBuffer buf = new StringBuffer();
        for (int offset = 0; offset < b.length; offset++) {
            //每次循环的时候需要从digest数组中随机取出2个不同的字符
            i = b[offset];
            if (i < 0)
                i += 256;
            if (i < 16)
                buf.append("0");
            buf.append(Integer.toHexString(i));
        }
        return buf.toString();
    }

    /**
     * 为了防止别人做密码本找出对应的密码
     * 只要不把我们这个方法告诉给别人
     * 他就永远算不出我们的密码
     * @param str
     * @return
     */
    public static String finishMD5(String str){
        String string = EncoderByMd5(EncoderByMd5(EncoderByMd5("Hello"))+"Hello");
        return string;
    }
    public static void main(String[] args) {
        //输出密文
        System.out.println(MD5Util.finishMD5("Simon"));
    }
}
相关标签: MD5加密