HMAC 生成

例
—アルゴリズム
—出力ビット
—鍵バイト
—時間

HMAC 生成ツール

HMAC 生成ツールです。秘密鍵とハッシュを混ぜ、完全性と真正性を示すタグを出します。 HMAC (RFC 2104) mixes a secret key with a hash. Identifiers HMAC, HMAC-SHA256, SHA-1, SHA-384, SHA-512, MD5, SHA-3, JWT, HS256, UTF-8, Hex, Base64 stay untranslated. Show Example: message The quick brown fox jumps over the lazy dog, key key. HMAC-SHA256 hex f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8, Base64 97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=. HMAC-SHA1 de7c9b85b8b78aa6bc8a7a36f70a90701c9db4d9. Chip message / secret-key → 287a3bd8a4fc7731a94c722079055323644d8798bd291bf9878abc9b8fd4b1d0.

使い方

  1. メッセージを貼るかファイルをドロップ(最大 10 MB)。空の鍵は拒否されます。
  2. 鍵は UTF-8 / Hex / Base64。メッセージの文字コードは Base64 ツールと同じです。
  3. 既定は SHA-256。Hex と Base64 を同時に表示します。照合は hex または Base64 です。
  4. SHA-384 / SHA-512 は https または localhost が必要です。

アルゴリズムと長さ

HMAC-SHA256(256 ビット)が API、webhook、JWT HS256 の定番です。HMAC-SHA1 は TOTP に残っています。新しい用途では SHA-256 を使ってください。素のハッシュは HMAC ではありません。

コード(例を表示と同じ)

Node.js: crypto.createHmac('sha256', 'key').update('The quick brown fox jumps over the lazy dog').digest('hex') → f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8.

Python: hmac.new(b'key', b'The quick brown fox jumps over the lazy dog', hashlib.sha256).hexdigest().

PHP: hash_hmac('sha256', 'The quick brown fox jumps over the lazy dog', 'key'). Chip message / secret-key: 287a3bd8a4fc7731a94c722079055323644d8798bd291bf9878abc9b8fd4b1d0.

出力の意味

HMAC は暗号化ではありません。SHA-256 の Hex は 64 桁です。Base64 は同じバイトです。

よくある質問

  • ハッシュとの違いは? ハッシュは改ざん検知、HMAC は鍵を持つ送信者の認証もします。
  • JWT? HS256 は header と payload の HMAC-SHA256 です。
  • ハッシュツールと同じ? あちらは空鍵を許します。こちらは鍵必須でファイルに対応します。

関連ツール

Hash: MD5 & SHA Hash. JWT: JWT Decoder. CRC: CRC32.

鍵なしのダイジェストが必要ですか? Hash Generator →