HMAC生成ツール(HMAC-SHA256をブラウザで計算)

HMAC SHA256 生成をその場で実行できる、通信なしの HMAC 計算 ツールです。

キーや入力内容は送信・保存せず、ブラウザ内のローカル計算のみで結果を表示します。

ローカル計算 保存しない Hex・Base64対応
ネットワーク送信なし

使い方(署名 HMAC 作り方)

  1. キーを入力します。API仕様がバイナリ鍵なら Hex / Base64 を選択します。
  2. 署名対象のメッセージ(payload)を入力します。
  3. 出力形式(Hex / Base64 / Base64URL)を選び、結果をコピーします。
HMACは見た目の文字列ではなくバイト列で計算されます。UTF-8、改行、空白が異なると結果も変わります。

例(検算用テストベクター)

例1(短い確認用)

入力: キー = secret(UTF-8)、メッセージ = message(UTF-8)

HMAC-SHA256(Hex):
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b

HMAC-SHA256(Base64):
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=

例2(よく使われる英文)

入力: キー = key、メッセージ = The quick brown fox jumps over the lazy dog

Hex:
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8

Base64:
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

よくある落とし穴

  • 改行コード(LF/CRLF)の違いで署名結果が変わります。
  • 前後空白をトリムすると、API署名が一致しないことがあります。
  • Base64URLは + を -、/ を _、= 省略の仕様が一般的です。API仕様を確認してください。
  • Hex/Base64で配布された鍵をテキストとして扱うと不一致になります。

FAQ

キーは保存されますか?

保存しません。このツールはブラウザ内で計算し、キーやメッセージをサーバーへ送信しません。

Base64/Hex はどちらを使えばいいですか?

どちらも使われます。Hex / Base64 / Base64URL の出力を選べるので、API仕様に合わせてください。

文字コード UTF-8 ですか?

はい。テキスト入力は UTF-8 でバイト列化して計算します。バイナリ値は Hex / Base64 入力を使ってください。

HMAC と SHA-256 ハッシュの違いは?

SHA-256は単体ハッシュ、HMACは秘密鍵つきハッシュです。用途が異なります。

出力が一致しません。何を確認すべきですか?

キー解釈(テキスト/バイト列)、改行、空白、Base64URL仕様を順に確認してください。

補足

HMACとは

秘密鍵とハッシュ関数を組み合わせたメッセージ認証コードです。

SHA-256との違い

SHA-256単体は鍵なし、HMAC-SHA256は鍵ありで署名検証に使います。

主な利用シーン

API署名、Webhook検証、トークン整合性チェックなど。