分類: 開發工具

HMAC 產生器

站方自行規劃沒找到想要的工具?

以共用金鑰為訊息簽章

輸入訊息與金鑰,一次取得 SHA-1、SHA-256、SHA-384、SHA-512 的 HMAC,可選十六進位或 Base64 輸出。金鑰不會離開你的瀏覽器。

HMAC-SHA1
結果會顯示在這裡。
HMAC-SHA256
結果會顯示在這裡。
HMAC-SHA384
結果會顯示在這裡。
HMAC-SHA512
結果會顯示在這裡。

金鑰與訊息都留在本頁。不上傳、不儲存、不記錄。

本頁的所有處理都在瀏覽器中完成,不會上傳任何內容。

這個工具能做什麼

HMAC 用來證明訊息來自持有共用金鑰的一方,而且中途沒有被改動:Webhook 服務商用它為回呼內容簽章,API 閘道每次請求都要求附上,簽章網址通常也是對路徑與到期時間做的 HMAC。出錯的幾乎不是演算法,而是金鑰:以十六進位印出的金鑰是一串位元組,而不是 a 到 f 這些字元,當成文字讀就會簽出完全不同的結果。這裡可以先指定金鑰的型態,四種摘要都由瀏覽器的 Web Crypto API 計算,結果以十六進位或 Base64 呈現,直接貼進服務商文件指定的欄位即可。

使用方式

  1. 選擇金鑰是純文字、十六進位還是 Base64。
  2. 填入金鑰與需要簽章的原始訊息內容。
  3. 複製服務商要求之摘要的簽章。

隱私說明

本工具完全在你的瀏覽器中執行。輸入的內容不會被上傳、儲存或分享,關閉分頁就隨之消失。

常見問題

我的金鑰會被送出去嗎?
不會。金鑰只由本頁面內瀏覽器內建的 Web Crypto 實作使用,不上傳、不儲存、不記錄,關閉分頁就消失。
為什麼我算出的簽章和服務商的不同?
幾乎都是訊息或金鑰差了一個位元組。請以送出時的原始請求內容逐位元組簽章(含空白),並確認金鑰是十六進位位元組而不是文字。
現在還能用 HMAC-SHA1 嗎?
只在需要相容硬性要求它的舊服務時。HMAC-SHA1 並未像純 SHA-1 那樣被攻破,但新專案採用 SHA-256 較為妥當。