| package com.matrix.core.tools; | 
|   | 
| import java.io.UnsupportedEncodingException; | 
| import java.security.MessageDigest; | 
| import java.security.NoSuchAlgorithmException; | 
| import java.util.Formatter; | 
|   | 
| /** | 
|  * 加密工具 | 
|  *  | 
|  * @author JIANGYOUYAO | 
|  * @email 935090232@qq.com | 
|  * @date 2017年11月29日 | 
|  */ | 
| public class EncrypUtil { | 
|     /** | 
|      * 字符串MD5加密 | 
|      *  | 
|      * @author JIANGYOUYAO | 
|      * @email 935090232@qq.com | 
|      * @date 2017年12月5日 | 
|      * @param sourceStr | 
|      * @return | 
|      * @throws UnsupportedEncodingException | 
|      * @throws NoSuchAlgorithmException  | 
|      */ | 
|     public static String getMD5(String sourceStr) throws UnsupportedEncodingException, NoSuchAlgorithmException { | 
|   | 
|         String resultStr = ""; | 
|             byte[] temp = sourceStr.getBytes(); | 
|             MessageDigest md5 = MessageDigest.getInstance("MD5"); | 
|             md5.update(temp); | 
|             byte[] b = md5.digest(); | 
|             for (int i = 0; i < b.length; i++) { | 
|                 char[] digit = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' }; | 
|                 char[] ob = new char[2]; | 
|                 ob[0] = digit[(b[i] >>> 4) & 0X0F]; | 
|                 ob[1] = digit[b[i] & 0X0F]; | 
|                 resultStr += new String(ob); | 
|             } | 
|             return resultStr; | 
|     } | 
|   | 
|     /** | 
|      * 返回SHA-1加密后的字符串 | 
|      *  | 
|      * @author JIANGYOUYAO | 
|      * @email 935090232@qq.com | 
|      * @date 2017年12月5日 | 
|      * @param sourceStr | 
|      * @return | 
|      * @throws UnsupportedEncodingException | 
|      * @throws NoSuchAlgorithmException | 
|      */ | 
|     public static String getSha1(String sourceStr) throws UnsupportedEncodingException, NoSuchAlgorithmException { | 
|         MessageDigest crypt = MessageDigest.getInstance("SHA-1"); | 
|         crypt.reset(); | 
|         crypt.update(sourceStr.getBytes("UTF-8")); | 
|         sourceStr = byteToHex(crypt.digest()); | 
|         return sourceStr; | 
|     } | 
|   | 
|     private static String byteToHex(final byte[] hash) { | 
|         Formatter formatter = new Formatter(); | 
|         for (byte b : hash) { | 
|             formatter.format("%02x", b); | 
|         } | 
|         String result = formatter.toString(); | 
|         formatter.close(); | 
|         return result; | 
|     } | 
|   | 
|       | 
| } |