HMAC生成

テキストやファイルのHMACをブラウザで計算。UTF-8・16進数の鍵とSHA-256・SHA-512・SHA-1に対応し、API署名が一致しない原因も解説します。

計算
0 文字
結果

ここに結果が表示されます。

HMACの計算方法

  1. 連携先が指定するアルゴリズムを選び、メッセージを入力するかファイルを選択します。
  2. 鍵をUTF-8の文字列で入力します。バイト列を16進数で指定する場合は、16進数の鍵を有効にします。
  3. 計算して16進数の結果をコピーします。下の例では0bを20回繰り返した16進数の鍵を使います。

HMAC生成のポイント

メッセージと共通鍵から認証コードを計算します。双方で同じバイト列とアルゴリズムを使う必要があります。鍵は秘密にし、16進数が表すバイトと、その表記自体の文字列を区別してください。

HMAC-SHA-256の例:RFC 4231のテストベクトル

入力
入力 Hi There アルゴリズム HMAC-SHA-256 秘密鍵 (鍵を16進数で指定) 0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b
結果
b0344c61d8db38535ca8afceaf0bf12b881dc200c9833da726e9376c2e32cff7

HMAC生成についてよくある質問

HMACはSHA-256や暗号化と同じですか?

異なります。HMACは共通鍵を使ってメッセージを認証します。通常のSHA-256には鍵がなく、どちらもメッセージを暗号化しません。出力は小文字の16進数で、SHA-1は40桁、SHA-256は64桁、SHA-512は128桁です。

16進数の鍵はどんなときに使いますか?

鍵が16進数のバイト列として渡される場合です。このモードの6162はabの2バイトであり、6162という4文字ではありません。空白や0xを付けず、2桁ずつ入力してください。Base64の鍵は先にデコードする必要があります。

APIやWebhookの署名と一致しないのはなぜですか?

メッセージのバイト列、鍵、アルゴリズムを完全に合わせる必要があります。空白、JSONの整形、改行、UTF-8 BOMでも結果が変わります。サービス固有の署名対象文字列の組み立てや、出力のBase64変換は行いません。

ファイルのHMACも計算できますか?

はい。ファイルを選択するとテキストより優先され、元のバイト列で計算します。上限はテキスト8 MiB、ファイル1件32 MiBです。RFC 4231の例はメッセージがHi There、16進数の鍵が0bの20回繰り返しです。

ファイルやトークン、テキストはアップロードされますか?

いいえ。入力はブラウザー内で処理されます。ウェブサイトからページとプログラムを読み込みますが、入力内容を変換サーバーに送ったり、アカウントに保存したりすることはありません。

開発者向けツール一覧

エンコードとファイル変換

元のデータを保ちながら、テキスト、バイト列、URL、埋め込み画像を変換します。

データとテキストの確認

構造化データやトークンの内容を読み取り、変更箇所を確認できます。

ハッシュ・ID・スケジュール

ファイルの整合性確認、識別子の生成、日時や定期実行の確認に。

入力内容とファイルはお使いの端末で処理されます。共有クリップボードに機密情報を残さないでください。秘密鍵やトークンには信頼できる端末をご利用ください。