HMAC生成ツール(HMAC-SHA256をブラウザで計算)
HMAC SHA256 生成 をこの場で実行できるHMAC 計算 ツールです。キーや入力内容は送信・保存しません。
テキスト/Hex/Base64の入力、Hex/Base64の出力に対応。ブラウザ標準の暗号APIで安全に計算します。
入力と出力
このページは送信せず、ブラウザ内だけで計算します。
※API仕様どおりの“バイト列”が重要です。キーがバイナリの場合はHex/Base64で入力してください。
オプション
OSやコピペで改行コードが変わると結果も変わります。
API署名は“完全一致”が前提のため、基本はそのままがおすすめ。
使い方
署名 HMAC 作り方 の基本は次の3ステップです。
- 1 キーを入力(API仕様がバイナリなら Hex / Base64 を選択)
- 2 メッセージを入力(署名対象の文字列・payload)
- 3 出力形式(Hex / Base64)を選んでコピー
HMACは“文字列”ではなく“バイト列”で計算されます。同じ見た目でも、文字コード・改行コード・余分な空白が違うと結果も変わります(UTF-8前提)。
例(検算用テストベクター)
「例を読み込む」で入力欄に反映できます。
よくある落とし穴
改行の扱いが変わると結果も変わります。
署名は完全一致が前提のため、空白を削除すると一致しないことがあります。
Base64URLは +→-、/→_、=省略が一般的です。仕様を確認してください。
例: deadbeef を“文字列”として入れる vs “バイト列 0xDE 0xAD…”として入れる。
補足
秘密鍵とメッセージから署名を作る仕組みです。第三者は同じ鍵がないと同じ結果を作れません。
SHA-256は「ハッシュ」、HMACは「秘密鍵つきハッシュ(署名)」です。
API署名、Webhook検証、リクエスト改ざん検知などで使われます。
FAQ
キーは保存される?
保存しません。このツールはブラウザ内で計算し、キーやメッセージをサーバーへ送信しません。(※念のため、共有PCでは入力後にリセットしてください)
Base64/Hexどっち?
どちらも使われます。出力形式を選択できます(Hex / Base64 / Base64URL)。APIの仕様に合わせて選んでください。
文字コードは?
文字コード UTF-8 前提です。テキスト入力はUTF-8としてバイト列化して計算します。バイナリを扱う場合は Hex / Base64 入力を使ってください。
HMACとSHA-256ハッシュの違いは?
SHA-256は「ハッシュ」、HMACは「秘密鍵つきハッシュ(署名)」です。キーが一致しない限り同じ結果を作れません。
出力が合いません
多くは (1)キーの扱い(テキスト vs バイナリ)(2)改行 (3)空白 (4)Base64URL が原因です。上の落とし穴を順に確認してください。