public class Sha1Util { private static final String MAC_NAME = "HmacSHA1"; private static final String ENCODING = "UTF-8"; public static byte[] HmacSHA1Encrypt(String encryptText, String encryptKey) throws Exception { byte[] data = encryptKey.getBytes(ENCODING); // 根據給定的字節數組構造一個密鑰,第二參數指定一個密鑰算法的名稱 SecretKey secretKey = new SecretKeySpec(data, MAC_NAME); // 生成一個指定 Mac 算法 的 Mac 對象 Mac mac = Mac.getInstance(MAC_NAME); // 用給定密鑰初始化 Mac 對象 mac.init(secretKey); byte[] text = encryptText.getBytes(ENCODING); // 完成 Mac 操做 return mac.doFinal(text); } }
親測加密結果準確算法