|
- import 'dart:convert';
-
- import 'package:crypto/crypto.dart';
-
- class XunFeiUtils {
- // 使用SHA-256算法计算HMAC
- static String hmacSha256(String apiSecret, String signatureOrigin) {
- // 将 apiSecret 和 signatureOrigin 转换为 UTF-8 编码的字节
- var key = utf8.encode(apiSecret);
- var message = utf8.encode(signatureOrigin);
- // 使用 HMAC-SHA256 算法生成签名
- var hmac = Hmac(sha256, key); // 初始化 HMAC(使用 SHA256)
- var signatureSha = hmac.convert(message); // 计算签名
-
- // 将生成的签名进行 Base64 编码
- String base64Signature = base64.encode(signatureSha.bytes);
- return base64Signature; // 返回 Base64 编码后的签名
- }
- }
|