java HMACSHA1与php hash_hmac 函数
来源:互联网 发布:绵阳cnc编程招聘 编辑:程序博客网 时间:2024/05/16 10:27
package com.neusoft.QDrive.utils;
import javax.crypto.Mac;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
public class HMACSHA1 {
private static final String MAC_NAME = "HmacSHA1";
private static final String ENCODING = "UTF-8";
/*
* 展示了一个生成指定算法密钥的过程 初始化HMAC密钥
* @return
* @throws Exception
*
public static String initMacKey() throws Exception {
//得到一个 指定算法密钥的密钥生成器
KeyGenerator KeyGenerator keyGenerator =KeyGenerator.getInstance(MAC_NAME);
//生成一个密钥
SecretKey secretKey =keyGenerator.generateKey();
return null;
}
*/
/**
* 使用 HMAC-SHA1 签名方法对对encryptText进行签名
* @param encryptText 被签名的字符串
* @param encryptKey 密钥
* @return
* @throws Exception
*/
public static byte[] HmacSHA1Encrypt(String encryptText, String encryptKey) throws Exception
{
byte[] data=encryptKey.getBytes(ENCODING);
//根据给定的字节数组构造一个密钥,第二参数指定一个密钥算法的名称
SecretKey secretKey = new SecretKeySpec(data, MAC_NAME);
//生成一个指定 Mac 算法 的 Mac 对象
Mac mac = Mac.getInstance(MAC_NAME);
//用给定密钥初始化 Mac 对象
mac.init(secretKey);
byte[] text = encryptText.getBytes(ENCODING);
//完成 Mac 操作
return mac.doFinal(text);
}
}
import javax.crypto.Mac;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
public class HMACSHA1 {
private static final String MAC_NAME = "HmacSHA1";
private static final String ENCODING = "UTF-8";
/*
* 展示了一个生成指定算法密钥的过程 初始化HMAC密钥
* @return
* @throws Exception
*
public static String initMacKey() throws Exception {
//得到一个 指定算法密钥的密钥生成器
KeyGenerator KeyGenerator keyGenerator =KeyGenerator.getInstance(MAC_NAME);
//生成一个密钥
SecretKey secretKey =keyGenerator.generateKey();
return null;
}
*/
/**
* 使用 HMAC-SHA1 签名方法对对encryptText进行签名
* @param encryptText 被签名的字符串
* @param encryptKey 密钥
* @return
* @throws Exception
*/
public static byte[] HmacSHA1Encrypt(String encryptText, String encryptKey) throws Exception
{
byte[] data=encryptKey.getBytes(ENCODING);
//根据给定的字节数组构造一个密钥,第二参数指定一个密钥算法的名称
SecretKey secretKey = new SecretKeySpec(data, MAC_NAME);
//生成一个指定 Mac 算法 的 Mac 对象
Mac mac = Mac.getInstance(MAC_NAME);
//用给定密钥初始化 Mac 对象
mac.init(secretKey);
byte[] text = encryptText.getBytes(ENCODING);
//完成 Mac 操作
return mac.doFinal(text);
}
}
阅读全文
0 0
- java HMACSHA1与php hash_hmac 函数
- 使用JAVA实现PHP中hash_hmac 函数
- C#实现php的hash_hmac函数
- PHP hash_hmac与python hmac sha1匹配
- java hash_hmac
- PHP hash_hmac 加密算法的使用
- Objective-C 与JAVA的SHA1/HmacSHA1加密算法实现
- php中使用hash_hmac函数实现HMAC-SHA1签名算法的来龙去脉
- php中使用hash_hmac函数实现HMAC-SHA1签名算法的来龙去脉
- java的HMACSHA1加密算法
- java的HMACSHA1加密算法
- HMACSHA1
- java的HMACSHA1加密算法使用方法
- java.security.NoSuchAlgorithmException: Algorithm HmacSHA1 not available
- Java加密技术(三)—— HMACSHA1 加密算法
- Java加密技术(三)—— HMACSHA1 加密算法
- HMACSHA1加密之java跟js算法实现
- Java加密技术(一)—— HMACSHA1 加密算法
- C++笔记——拷贝构造函数2
- 疯狂讲义随笔——使用二次曲线quadraticCurveTo()画花朵
- Spring
- 《利用python进行数据分析》ch02续
- 模拟的操作系统nachos解读
- java HMACSHA1与php hash_hmac 函数
- 安装HBase出现的问题
- C++设计模式 -> 行为型 -> 观察者模式(Observer Pattern)
- 51nod-1179-最大的最大公约数
- Windows上安装Redis
- java夯实基础-多线程
- restful web service [helloworld] [intellij idea] [JavaEE5] [Maven] [Tomcat]
- 伪类before和after
- 五个简单的工具类