美文网首页
使用java进行MD5加密

使用java进行MD5加密

作者: 缘木与鱼 | 来源:发表于2019-12-10 21:26 被阅读0次

MD5加密

目前md5加密解密的工具网上太多了,可以使用加密以后截取部分的方式使用。

package com.asiainfo.util;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
 * @author: LIJY
 * @Description: 使用java创建 MD5 加密
 * @Date: 2019/12/10 21:14
 */
public class CreateMD5 {

    public static void main(String[] args) {
        // 32为加密
        System.out.println(getMd5("123456", true));     // e10adc3949ba59abbe56e057f20f883e
        // 16位加密
        System.out.println(getMd5("123456", false));    // 49ba59abbe56e057
    }

    /**
     * MD5 进行加密
     * @param plainText 加密前的密码
     * @param isLong true 32位加密
     *               false 16位加密,加密方式: 截取32中的16位
     * @return
     */
    public static String getMd5(String plainText, boolean isLong) {
        try {
            MessageDigest md = MessageDigest.getInstance("MD5");
            md.update(plainText.getBytes());
            byte b[] = md.digest();

            int i;

            StringBuffer buf = new StringBuffer("");
            for (int offset = 0; offset < b.length; offset++) {
                i = b[offset];
                if (i < 0)
                    i += 256;
                if (i < 16)
                    buf.append("0");
                buf.append(Integer.toHexString(i));
            }
            String retStr = "";
            if (isLong) {   // 32位加密
                retStr = buf.toString();
            } else {    // 16位的加密
                retStr = buf.toString().substring(8, 24);
            }
            return retStr;
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
            return null;
        }
    }
}

相关文章

网友评论

      本文标题:使用java进行MD5加密

      本文链接:https://www.haomeiwen.com/subject/tkkngctx.html