我試圖與Web API集成。看看他們如何使用SHA256和HMAC來生成他們的簽名。然而,他們也使用被稱爲「隨機數」的東西,我不得不查找。這個api使用我們都知道的祕密,並結合請求的url來生成「簽名」。HMAC和SHA256 - 如何使用隨機數進行驗證
那麼,我是否使用它們用於生成簽名的同一個隨機數來執行驗證?
我正在尋找他們如何在客戶端生成他們的簽名樣本。
var message = "https://my.server.com/new-callback?reqID=test&nonce=8cf95201-4d3c-4397-9117-d7ee6ad89d93";
var secret = "g394g732vhsdfiv34";
var hash = CryptoJS.HmacSHA256(message, secret);
var signature = hash.toString(CryptoJS.enc.Base64);
result of signature...
// ihyCCfTHog7TDQYT4tQM5ISYSjEIaChSeJmIo3UMa + U =
不過,我不使用這個工具
http://www.freeformatter.com/hmac-generator.html
因此,爲了驗證這一在我結束(API中) ,我需要使用相同的輸入來計算簽名,然後簡單比較結果字符串,是否正確?
此「nonce」組件的用途是什麼?從我讀過的內容來看,它或多或少地起到了與GUID相同的作用。
我錯過了什麼?