import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; public class HmacSHA1Test { public static final String signatureMethod="HmacSHA1"; public static String key="This is the secret key"; private static Mac mac; static { try { mac = Mac.getInstance(signatureMethod); mac.init(new SecretKeySpec(key.getBytes(), signatureMethod)); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) throws Exception { String input="Good Evening"; byte[] msgBytes=input.getBytes("UTF-8"); byte[] codes=mac.doFinal(msgBytes); String digest=Base64.encodeBytes(codes); System.out.println("key:"+key+" input:"+input+" digest: "+digest); //output: key:This is the secret key, input:Good Evening, digest: kRfi1C7Q64oHS+6hEX2BnYB/tnc= } }