/**
* HMAC算法加密
* @param message 待加密信息
* @param key 密钥
* @return
*/
public static String HmacSHA256(byte[] message, byte[] key){
long begin = System.currentTimeMillis();
try {
Mac hmacSha256Mac = Mac.getInstance("HMACSha256");
SecretKeySpec secretKey = new SecretKeySpec(key, "HMACSha256");
hmacSha256Mac.init(secretKey);
byte[] result = hmacSha256Mac.doFinal(message);
long end = System.currentTimeMillis();
return Base64.encodeBase64String(result);
} catch (Exception e) {
e.printStackTrace();
return "";
}
}

HMAC算法加密的更多相关文章

  1. 消息摘要算法-HMAC算法

    一.简述 mac(Message Authentication Code.消息认证码算法)是含有密钥散列函数算法.兼容了MD和SHA算法的特性,并在此基础上加上了密钥.因此MAC算法也常常被称作HMA ...

  2. 浅析nodeJS中的Crypto模块,包括hash算法,HMAC算法,加密算法知识,SSL协议

    node.js的crypto在0.8版本,这个模块的主要功能是加密解密. node利用 OpenSSL库(https://www.openssl.org/source/)来实现它的加密技术, 这是因为 ...

  3. 小程序 之使用HMACSHA1算法加密报文

    首先说说我们前端常用的加密技术, 我们常用的加密技术有:如MD5加密,base64加密 今天要说的是HMACSHA1加密技术 先介绍下什么是SHA1算法, 安全哈希算法(Secure Hash Alg ...

  4. HMAC算法原理

    HMAC算法是一种基于密钥的报文完整性的验证方法 ,其安全性是建立在Hash加密算法基础上的.它要求通信双方共享密钥.约定算法.对报文进行Hash运算,形成固定长度的认证码.通信双方通过认证码的校验来 ...

  5. HMAC算法及其应用

    HMAC算法及其应用 MAC HMAC HMAC的应用 HMAC实现举例 MAC 在现代的网络中,身份认证是一个经常会用到的功能,在身份认证过程中,有很多种方式可以保证用户信息的安全,而MAC(mes ...

  6. MD5加密、时间戳转换、base64算法加密、解密

    #region MD5加密 /// <summary> /// MD5加密 /// </summary> /// <param name="str"& ...

  7. 使用BCrypt算法加密存储登录密码用法及好处

    //导入import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; /** *使用BCrypt算法加密存储登录密码 ...

  8. 基于DES算法加密的防撞库密码系统项目总结

    项目内容:基于DES算法加密的防撞库密码系统 小组名:zqhzkzkj 目标:1.对用户输入的8位字符进行DES加密,要求用户输入8位密钥 2.对于不同的网站,不同的用户名生成不同的密码 小组成员:周 ...

  9. C#与Java互通AES算法加密解密

    /// <summary>AES加密</summary> /// <param name="text">明文</param> /// ...

随机推荐

  1. js 中的apply

    之一------(函数的劫持与对象的复制)关于对象的继承,一般的做法是用复制法: Object.extend 见protpotype.js 的实现方法: Object.extend = functio ...

  2. [poj2653]Pick-up sticks

    题目大意:给定一系列线段,以及放在平面上的顺序,给出没有被其他覆盖的线段. 解题关键:线段相交的判断. 满足两个条件即可:快速排斥实验.跨立实验. #include<cstdio> #in ...

  3. Ros学习——创建ROS消息和ROS服务

    1.rosed rosed 是 rosbash 的一部分.利用它可以直接通过package名来获取到待编辑的文件而无需指定该文件的存储路径了. rosed默认的编辑器是vim.修改其他的,打开~/.b ...

  4. cocos2dx帧动画

    //帧动画的创建 //方式一,通过多张图片来创建 auto sprite1 = Sprite::create("grossini_dance_05.png"); sprite1-& ...

  5. 基于IFC的施工过程模拟程序(4D BIM)

  6. Netty的Channel

    Channel是一个网络端口连接,或者是可以进行读,写,链接,绑定端口的组件的连接.  Channel就是一个链接,它提供了如下的功能. 1:获取当前链接的状态 2:配置当前链接参数 3:进行read ...

  7. DingTalk代码库机器人尝试

    今日室友询问相关机器人的事情,本来对于机器人还是有一些了解的,至少是明白一些简单的原理,包括微信公众号,qq群的只能机器人,以及钉钉的机器人. 首先是说那个关于微信公众号的那个自动回复便可以使用一些机 ...

  8. CentOS使用NTFS-3G加载NTFS硬盘

    CentOS使用NTFS-3G加载NTFS硬盘 CentOS 挂载NTFS格式硬盘时会报错unknown filesystem type 'ntfs',这时就需要用到第三方的插NTFS-3G来加载NT ...

  9. easyui rowspan

    第一种写法 columns: [ [ { field: 'depName', title: '部门', rowspan: 2, width: '100px', align: 'center' }, { ...

  10. BCP导入导出