HmacSHA256签名加Base64编码加URL编码

Posted chenyf

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HmacSHA256签名加Base64编码加URL编码相关的知识,希望对你有一定的参考价值。

/**
*先使用HmacSHA256签名,再使用Base64编码,最后进行URL 编码
*signatureReqStr : 待加密data
* secretKey : 密钥
*/
public static String getSignature(String signatureReqStr,String secretKey){
Mac sha256_HMAC ;
String result = "";
try {
sha256_HMAC = Mac.getInstance("HmacSHA256");
SecretKeySpec secret_key = new SecretKeySpec(secretKey.getBytes(), "HmacSHA256");
sha256_HMAC.init(secret_key);
result = Base64.encodeBase64String(sha256_HMAC.doFinal(signatureReqStr.getBytes()));
result = URLEncoder.encode(result);
} catch (InvalidKeyException e) {
e.printStackTrace();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return result;
}

以上是关于HmacSHA256签名加Base64编码加URL编码的主要内容,如果未能解决你的问题,请参考以下文章

将 AWS KMS ECDSA_SHA_256 签名从 DER 编码的 ANS.1 格式转换为 JWT base64url 编码的 R || NodeJS/Javascript 中的 S 格式

AES128_CBC_NoPading加密、sha256withRSA签名

kucoin API 上的 C++ 签名消息

sha256WithRSA 签名

Microsoft 帐户 JWT 身份验证令牌如何签名?

JWT:验证签名秘密格式。