JDK中JCA的简单使用(四)---Mac加密

版权声明:本博客为学习、笔记之用,以笔记形式记录学习的知识与感悟。学习过程中可能参考各种资料,如觉文中表述过分引用,请务必告知,以便迅速处理。如有错漏,不吝赐教。 https://blog.csdn.net/Cappadocia_/article/details/83153386

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();
}

猜你喜欢

转载自blog.csdn.net/Cappadocia_/article/details/83153386
JCA