001package gudusoft.gsqlparser.dlineage.util; 002 003import gudusoft.gsqlparser.util.Logger; 004import gudusoft.gsqlparser.util.LoggerFactory; 005 006import java.security.MessageDigest; 007 008public class SHA256 { 009 010 private static final Logger logger = LoggerFactory.getLogger(SHA256.class); 011 012 public static String getSHA256(String str) { 013 MessageDigest messageDigest; 014 String encodestr = ""; 015 try { 016 messageDigest = MessageDigest.getInstance("SHA-256"); 017 messageDigest.update(str.getBytes("UTF-8")); 018 encodestr = byte2Hex(messageDigest.digest()); 019 } catch (Exception e) { 020 logger.error("generate sha256 failed.", e); 021 } 022 return encodestr; 023 } 024 025 public static String getMd5(String str) { 026 MessageDigest messageDigest; 027 String encodestr = ""; 028 try { 029 messageDigest = MessageDigest.getInstance("MD5"); 030 messageDigest.update(str.getBytes("UTF-8")); 031 encodestr = byte2Hex(messageDigest.digest()); 032 } catch (Exception e) { 033 logger.error("generate md5 failed.", e); 034 } 035 return encodestr; 036 } 037 038 039 private static String byte2Hex(byte[] bytes) { 040 StringBuffer stringBuffer = new StringBuffer(); 041 String temp = null; 042 for (int i = 0; i < bytes.length; i++) { 043 temp = Integer.toHexString(bytes[i] & 0xFF); 044 if (temp.length() == 1) { 045 stringBuffer.append("0"); 046 } 047 stringBuffer.append(temp); 048 } 049 return stringBuffer.toString(); 050 } 051}