生成md5密码

public static void main(String[] args) {
        Random random = new Random();
        String salt = String.valueOf(random.nextInt(4));
        System.out.println("salt-----" + salt);
        String phone = "15808758263";
        System.out.println("phone----" + phone);
        String pwdMd5 = MD5Util.salt(phone, salt);
        System.out.println("pwdMd5-----" + pwdMd5);
    }
package com.sjaco.lccloud.common.utils;

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

public class MD5Util {
    private static final String MD5_ALGORITHM_NAME = "MD5";

    public MD5Util() {
    }

    public static String encrypt(String source) {
        return encodeMd5(source.getBytes());
    }

    private static String encodeMd5(byte[] source) {
        try {
            return encodeHex(MessageDigest.getInstance("MD5").digest(source));
        } catch (NoSuchAlgorithmException var2) {
            throw new IllegalStateException(var2.getMessage(), var2);
        }
    }

    private static String encodeHex(byte[] bytes) {
        StringBuilder buffer = new StringBuilder(bytes.length * 2);
        byte[] var2 = bytes;
        int var3 = bytes.length;

        for(int var4 = 0; var4 < var3; ++var4) {
            byte aByte = var2[var4];
            if ((aByte & 255) < 16) {
                buffer.append("0");
            }

            buffer.append(Long.toString((long)(aByte & 255), 16));
        }

        return buffer.toString();
    }

    public static String salt(String pwd, String salt) {
        MessageDigest digest;
        try {
            digest = MessageDigest.getInstance("MD5");
        } catch (NoSuchAlgorithmException var6) {
            throw new IllegalStateException(var6.getMessage(), var6);
        }

        if (salt != null) {
            digest.reset();
            digest.update(salt.getBytes());
        }

        byte[] hashed = digest.digest(pwd.getBytes());
        int iterations = 1;

        for(int i = 0; i < iterations; ++i) {
            digest.reset();
            hashed = digest.digest(hashed);
        }

        return encodeHex(hashed);
    }

    public static void main(String[] args) {
        System.out.println(salt("123456", "8pgby"));
    }
}
随笔看心情
原文地址:https://www.cnblogs.com/stromgao/p/15588562.html