HMAC ジェネレーター

SHA-256・SHA-384・SHA-512でHMAC署名を生成。Hex/Base64出力対応。ブラウザ完結、データ送信なし。

100% クライアントサイド データはブラウザ外に出ません 無料 · 登録不要
Algorithm
Output

使い方

  1. 認証したいメッセージを入力します。
  2. 秘密鍵を入力します。
  3. アルゴリズム(SHA-256・SHA-384・SHA-512)を選択します。
  4. 出力形式(HexまたはBase64)を選択します。
  5. Generate HMACをクリックして結果をコピーします。

主な用途

  • Webhook検証:Webhookペイロードが信頼できる送信元から署名されていることを確認。
  • APIリクエスト署名:秘密鍵自体を送信せずにAPIリクエストの真正性を証明。
  • データ完整性:メッセージにHMACを添付し、受信者が改ざんされていないことを確認できるようにする。
  • セッショントークン:改ざん防止のセッション識別子を生成。

FAQ

HMACとは何ですか?

HMAC(ハッシュベースメッセージ認証コード)は、暗号ハッシュ関数と秘密鍵を組み合わせたメッセージ認証コードです。データの完整性とメッセージの真正性を同時に検証するために使用されます。

データはサーバーに送信されますか?

いいえ。このツールはすべての暗号処理にブラウザ内蔵のWeb Crypto API(SubtleCrypto)を使用します。メッセージや秘密鍵はブラウザの外に出ません。

どのアルゴリズムを選べばよいですか?

SHA-256は最も広く使われており、ほとんどの用途に適しています。SHA-384とSHA-512はより大きなセキュリティマージンを提供しますが、出力が長くなります。3つともHMACでの使用には安全とされています。

HexとBase64出力の違いは何ですか?

どちらも同じHMACバイナリ値を異なるテキスト形式でエンコードしたものです。Hexは16進数文字(0-9, a-f)を使用し長め。Base64はより短くHTTPヘッダー(AuthorizationなどJ)やJSONでよく使われます。

Webhookの署名検証に使えますか?

はい。多くのサービス(GitHub、Stripe、Slackなど)はHMAC-SHA256でWebhookペイロードに署名します。生のペイロードをメッセージ、サービスのWebhookシークレットをキーとして入力し、結果を署名ヘッダーと比較してください。