亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PHP 和 Go 中的 hmac 哈希不匹配

PHP 和 Go 中的 hmac 哈希不匹配

Go
交互式愛情 2023-06-05 19:46:37
我正在嘗試連接到一個 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 函數創建相同的內容,它就可以正常工作。我對去哪里看有點迷茫。
查看完整描述

1 回答

?
慕尼黑8549860

TA貢獻1818條經驗 獲得超11個贊

您的輸入數據一定有問題。


使用以下 PHP:


echo hash_hmac('sha256', 'data', 'key');

和下面的Go:


h := hmac.New(sha256.New, []byte("key"))

h.Write([]byte("data"))

signature := hex.EncodeToString(h.Sum(nil))

fmt.Println(signature)

我得到相同的結果5031fe3d989c6d1537a013fa6e739da23463fdaec3b70137d828e36ace221bd0


查看完整回答
反對 回復 2023-06-05
  • 1 回答
  • 0 關注
  • 245 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號