CoderTools

HMACジェネレーター

複数のハッシュアルゴリズムで安全なHMAC認証コードを生成

HMAC生成に使用する秘密鍵。機密に保管してください!

* SHA-1は安全でないと見なされています。** MD5は暗号学的に破られており、レガシー互換性のためにのみ使用してください。新しいアプリケーションにはSHA-256またはSHA-512を使用してください。

HMACについて

HMAC(ハッシュベースメッセージ認証コード)は、暗号化ハッシュ関数を使用したメッセージ認証のメカニズムです。HMACは、MD5、SHA-1、SHA-256、SHA3、RIPEMD-160などの任意の反復暗号化ハッシュ関数と共有秘密鍵を組み合わせて使用できます。

HMACの暗号強度は、基礎となるハッシュ関数の特性に依存します。HMACは、TLS、IPsec、SSH、および様々なAPI認証スキームを含む多くのセキュリティプロトコルとアプリケーションでデータ整合性と認証に使用されています。

サポートされているHMACアルゴリズム

このツールは10種類のHMACハッシュアルゴリズムをサポートしています:SHA-256(推奨)、SHA-512SHA-384SHA-224SHA3-256SHA3-384SHA3-512は現代のセキュアアプリケーション向け;RIPEMD-160はビットコインと暗号通貨アプリケーション向け;SHA-1(レガシー、セキュリティには非推奨);MD5(レガシーのみ、暗号学的に破られている)。HMACは次の式で計算されます:HMAC(K, m) = H((K' ⊕ opad) || H((K' ⊕ ipad) || m))。

一般的な用途

APIリクエスト認証と署名検証
HS256/HS384/HS512によるJWT(JSON Webトークン)署名
Webhookペイロード検証
パスワードベースの鍵導出(PBKDF2)
セキュア通信におけるメッセージ整合性検証

セキュリティに関する考慮事項

HMACのセキュリティは、鍵の秘密性と基礎となるハッシュ関数の暗号強度に依存します。推奨:新しいアプリケーションにはSHA-256、SHA-512、またはSHA3バリアントを使用してください。避けるべき:MD5(破られている)とSHA-1(弱い)はセキュリティクリティカルなアプリケーションでは避けてください。RIPEMD-160:ビットコインでまだ使用されていますが、新しいプロジェクトでは新しいアルゴリズムを検討してください。鍵は少なくともハッシュ出力サイズと同じ長さで、暗号的に安全な乱数生成器を使用して生成する必要があります。

メッセージ: "Hello, World!"

秘密鍵: "secret-key-2025"

アルゴリズム: HMAC-SHA256

出力:

e4d7f1b4c4e5a8d3e...