DevToys Web Pro iconDevToys Web Proブログ
評価:
ブラウザ拡張機能を試す:

HMACジェネレーター

入力

設定

  • アルゴリズム

    HMACハッシュアルゴリズムを選択

  • キー形式

    秘密鍵のエンコード形式

  • 出力形式

    生成されたHMACの表示形式

HMAC出力

  • 技術的な詳細

    HMAC 生成ツールの仕組み

    このツールでできること

    この HMAC 生成ツールは、共有シークレットキーを使用してメッセージの鍵付きハッシュ(HMAC 署名)を作成します。HMAC SHA-1、HMAC SHA-256、HMAC SHA-384、HMAC SHA-512 に対応しており、API 認証、Webhook 検証、メッセージ整合性チェックで一般的に使用されます。キーのエンコード方法(テキスト、hex、Base64)を選択でき、HMAC の出力は hex または Base64 にできます。すべての計算は Web Crypto API を使用してブラウザ内でローカルに実行されるため、シークレットがデバイス外に出ることはありません。

    開発者によくある利用シーン

    開発者はオンライン HMAC 計算機を、Stripe、GitHub、Slack などのサービスからの Webhook 署名の検証、API リクエスト署名の生成、JWT の HMAC 署名ワークフローのデバッグに使用します。HMAC 認証が必要なサードパーティ API を統合する際、このツールは期待される署名を確認し、サーバー出力と比較するのに役立ちます。また、テスト中の HMAC ハッシュの検証、再現可能な例の作成、クライアントとサーバー間のエンコーディング不一致の切り分けにも役立ちます。

    データ形式、型、またはバリエーション

    この HMAC ツールは SHA-1、SHA-256、SHA-384、SHA-512 アルゴリズムに対応し、出力は hex または Base64 です。シークレットキーはプレーンテキスト(UTF-8)、16 進、または Base64 エンコードされたバイト列として指定できます。多くの連携では HMAC 署名を hex で公開しますが、Base64 を期待する API もあります。このジェネレーターはそれらの形式に合わせるのに役立ちます。署名の不一致を避けるため、正しいキーエンコーディングを選択してください。

    よくある落とし穴とエッジケース

    HMAC 署名は入力の細部に非常に敏感です。メッセージのエンコーディング、空白、改行コードが少しでも異なると結果が変わります。必ず正確なペイロードと正しいキー形式(テキスト/hex/Base64)を使用してください。SHA-1 は弱いと見なされており、必要な場合に限りレガシー連携でのみ使用すべきです。プラットフォームが Base64 ではなく Base64URL を使用している場合、比較のために出力を変換する必要があることがあります。

    コードではなくこのツールを使うべき場面

    この HMAC 生成ツールは、素早い確認、Webhook 検証のデバッグ、開発中の例示署名の検証に使用してください。本番システムでは、プラットフォームの暗号ライブラリを使ってコードで HMAC 署名を生成し、一貫したエンコーディング、安全なキー取り扱い、タイミング攻撃に配慮した比較を確実に行ってください。このツールは開発に最適ですが、本番ではアプリケーションがプログラムで HMAC を計算するべきです。