Mac 类
消息认证码(MAC)提供了一种检查在不可靠介质上传输或存储在不可靠介质中的信息的完整性的方法,只有拥有正确密钥的人才能验证收到的消息。
基于加密散列函数的MAC机制被称为HMAC。HMAC可以与任何加密散列函数(例如,SHA-256)一起使用,并结合秘密共享密钥。
应用场景:
接口签名校验,防止抓包伪造请求。
//macKey为双方共同持有的秘钥,HmacSHA1 为加密算法
SecretKeySpec keySpec = new SecretKeySpec(macKey, "HmacSHA1");
Mac mac;
try {
mac = Mac.getInstance("HmacSHA1");
mac.init(keySpec);
byte[] result = mac.doFinal(sb.toString().getBytes("UTF-8"));
return result;
} catch (Exception e) {
e.printStackTrace();
}