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=
}
}