我正在尝试连接到一个 API,该 API 对 API 使用过时的 hmac 哈希身份验证机制。
举个例子:
$signature = hash_hmac('sha256', $string_to_sign, $api_sec);
与 Go 中生成的相比:
h := hmac.New(sha256.New, []byte(authSecret))
h.Write([]byte(stringToSign))
signature := hex.EncodeToString(h.Sum(nil))
当我使用相同stringToSign($string_to_sign)且相同的authSecret($api_sec)签名时,Go 结果生成的签名作为 API 的无效签名。但是,如果我使用 PHP 函数创建相同的内容,它就可以正常工作。我对去哪里看有点迷茫。
慕尼黑8549860
相关分类