Signature签名计算
Signature = URLEncode(base64(hmac-sha1(AccessKeySecret, urlParam)))
python签名计算转java语言:
public static String generateSignature(String accessKeySecret, String urlParam) throws Exception {
// HMAC-SHA1 hashing
Mac mac = Mac.getInstance("HmacSHA1");
SecretKeySpec secretKeySpec = new SecretKeySpec(accessKeySecret.getBytes(StandardCharsets.UTF_8), "HmacSHA1");
mac.init(secretKeySpec);
byte[] hmacSha1Result = mac.doFinal(urlParam.getBytes(StandardCharsets.UTF_8));
// Base64 encoding
String base64Encoded = Base64.getEncoder().encodeToString(hmacSha1Result);
// URL encoding
String urlEncoded = URLEncoder.encode(base64Encoded, StandardCharsets.UTF_8.toString());
return urlEncoded;
}