コンテンツにスキップ
Monu Tools

HMAC生成

SHA-1・SHA-256・SHA-384・SHA-512を使用してメッセージとシークレットキーのHMACをブラウザ内で生成します。

HMAC生成の使い方

  1. 01

    ハッシュアルゴリズムを選択します。

  2. 02

    シークレットキーとメッセージを入力します。

  3. 03

    16進数ダイジェストとして表示されるHMACをコピーします。

キーを使用してメッセージに署名する

SHA-1、SHA-256、SHA-384、または SHA-512 を使用して秘密キーでメッセージに署名し、結果を 16 進ダイジェストとして表示する HMAC ジェネレーター。アルゴリズムを選択し、キーとメッセージを入力して、署名をコピーします。

HMAC が証明するもの

HMAC は、ハッシュベースのメッセージ認証コードの略です。これは鍵付きハッシュです。秘密鍵とメッセージを組み合わせると、メッセージが鍵を保持している誰かによって作成されたことと、送信中に変更されていないことの 2 つのことが同時に証明されます。

単純なハッシュとの違いが重要です。メッセージの SHA-256 は誰でも計算できますが、チェックサムを信頼性の証明に変える正しい HMAC を生成できるのは、共有秘密を持っている人だけです。

HMAC が登場する場所

そのため、Web インフラストラクチャのいたるところにそれが存在します。 Stripe、GitHub、Slack などのサービスからの Webhook は、HMAC を使用して各リクエストに署名するため、サーバーは呼び出しが実際にそれらのサービスからのものであることを確認でき、多くの API も同じ方法でリクエストに署名します。

アルゴリズムの選択

SHA-256 が一般的なデフォルトです。 SHA-384 と SHA-512 はより強力ですが、SHA-1 はレガシーであり、新しいシステムでは避けるのが最善です。

セキュリティメモ

Web Crypto API を使用してローカルで実行されるため、キーとメッセージがアップロードされることはありません。キーは秘密であるため、これは重要です。

よくある質問

HMACとは何ですか?

メッセージがシークレットキーを持つ人物によって作成され、改ざんされていないことを証明するキー付きハッシュです。APIリクエストの署名やWebhookで広く使われています。

シークレットはどこかに送信されますか?

いいえ。HMACはWeb Crypto APIを使ってブラウザ内で計算されるため、キーとメッセージがデバイスの外に出ることはありません。

どのアルゴリズムを使うべきですか?

SHA-256が一般的なデフォルトです。SHA-384とSHA-512はより強力で、SHA-1はレガシーであるため新しいシステムでは避けるのが最善です。

出典

問題を報告する