Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 536

HMAC

監修Cybersecurity entrepreneur & security researcher

HMAC とは何ですか?

HMACRFC 2104 と FIPS 198-1 で定義された、暗号学的ハッシュ関数を土台とする鍵付きメッセージ認証コード(MAC)構造。


HMAC(Hash-based Message Authentication Code)は、RFC 2104 と FIPS 198-1 で定義された対称 MAC 構造で、秘密鍵 K とハッシュ関数 H を組み合わせてタグを生成します:HMAC(K,m) = H((K' XOR opad) || H((K' XOR ipad) || m))。この入れ子構造により、SHA-256 のような Merkle-Damgård ハッシュと組み合わせても長さ拡張攻撃に耐えられ、安全性は弱衝突耐性と圧縮関数の擬似乱数性に帰着されます。HMAC-SHA-256 や HMAC-SHA-512 が広く利用され、TLS のレコード保護、JWT 署名、OAuth、IPsec、また PBKDF2 や HKDF の内部 PRF として使われています。HMAC は対称メッセージ認証における堅牢なデフォルトとして現在も推奨されます。

  1. 01

    HS256 アルゴリズムの JWT は HMAC-SHA-256 で署名される。

  2. 02

    AWS Signature Version 4 は HMAC-SHA-256 で API リクエストを署名する。

よくある質問

HMAC とは何ですか?

RFC 2104 と FIPS 198-1 で定義された、暗号学的ハッシュ関数を土台とする鍵付きメッセージ認証コード(MAC)構造。 サイバーセキュリティの 暗号 カテゴリに属します。

HMAC とはどういう意味ですか?

RFC 2104 と FIPS 198-1 で定義された、暗号学的ハッシュ関数を土台とする鍵付きメッセージ認証コード(MAC)構造。

HMAC からどのように防御しますか?

HMAC に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。

HMAC の別名は何ですか?

一般的な別名: 鍵付きハッシュ MAC, RFC 2104 HMAC。

関連用語

関連項目