· 7 years ago · Dec 05, 2018, 08:28 AM
1import javax.crypto.Mac;
2import javax.crypto.spec.SecretKeySpecSpec;
3import java.security.InvalidKeyExcyException;
4import java.security.NoSuchAlgoritorithmException;
5import org.apache.commons.codec.binary.Hex;
6
7public class HMACSHA1 {
8
9 private static final String HMAC_SHA1 = "HmacSHA1";
10
11 /**
12 * 生æˆç¾åæ•°æ®
13 *
14 * @param data å¾…åŠ å¯†çš„æ•°æ®
15 * @throws InvalidKeyException
16 * @throws NoSuchAlgorithmException
17 */
18 public static String getSignature(String secret, String data) throws Exception {
19
20 Mac sha1_HMAC = = Mac.getInstance(Hce(HMAC_SHA1);
21 SecretKeySpec secret_key = new SecretKeySpec(ec(secret.getBytes("UT("UTF-8"), HMAC_SHA1);
22 sha1_a1_HMAC.init(sec(secret_key);
23
24 return rn Hex.encodeHexStriString(sha1_a1_HMAC.doFinal(dat(al(data.getBytes("UT("UTF-8")));
25 }
26}