Lius
7 天以前 0a19d4923b0a048aee0cda91c37f25bc6e140d54
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package org.jeecg.common.util;
 
import java.security.MessageDigest;
 
/**
 * SHA256
 * 密码加密工具
 */
public class SHA256Util {
    /**
   * 利用java原生的摘要实现SHA256加密
   * @param str 加密后的报文
   * @return
   */
    public static String getSHA256Str(String str) {
        MessageDigest messageDigest;
        String encodeStr;
        try {
            messageDigest = MessageDigest.getInstance("SHA-256");
            messageDigest.update(str.getBytes("UTF-8"));
            encodeStr = byte2Hex(messageDigest.digest());
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
        return encodeStr;
    }
    /**
   * 将byte转为16进制
   * @param bytes
   * @return
   */
    private static String byte2Hex(byte[] bytes) {
        StringBuffer buffer = new StringBuffer();
        String temp = null;
        for(int i = 0; i < bytes.length; i++) {
            temp = Integer.toHexString(bytes[i] & 0xFF);
            if(temp.length() == 1) {
                //1得到一位的进行补0操作
                buffer.append("0");
            }
            buffer.append(temp);
        }
        return buffer.toString();
    }
 
}