読み方 : メッセージにんしょうコード

メッセージ認証コード【MAC】Message Authentication Code

概要

メッセージ認証コードとは、相手から届いたメッセージが途中で改竄やすり替えに合っていないか検証するための短い符号。送信者と受信者が共有する秘密のデータ(鍵)とメッセージ本体から生成する。
メッセージ認証コードのイメージ画像

送信者はメッセージと共有鍵を利用して一定の計算手順で短い符号(MAC値)を算出し、メッセージに添付して送信する。受信者は届いたメッセージの本文と鍵から同じ手順で符号を算出し、添付された符号と一致するか確かめる。両者が一致すれば、メッセージが確かに鍵の持ち主によって作成され、本文も第三者によって改竄やすり替えが行われていないことが分かる。

メッセージ認証コードは符号の生成と検証に共通の鍵を用いるため、(送信者と受信者の言い分が対立した場合などに)メッセージの作成者が送信者であることを保証することはできない(否認防止性がない)。メッセージ作成者の証明が必要な場合は電子署名を用いる。また、メッセージの送受信の前に鍵を安全な方法で共有しなければならず、実用的には公開鍵暗号によって鍵を交換するなどの方法が用いられる。

メッセージ認証コードの生成や検証の手順にはいくつかの標準的な方式があり、ハッシュ関数を用いる「HMAC」(Hash-based MAC)、共通鍵暗号を用いる「CMAC」(Cipher-based MAC)や「CBC-MAC」(Cipher Block Chaining MAC)などの方式がよく知られている。

(2021.9.2更新)

他の用語辞典による「メッセージ認証コード」の解説 (外部サイト)

資格試験などの「メッセージ認証コード」の出題履歴

▼ 基本情報技術者試験
令4修6 問38】 メッセージが改ざんされていないかどうかを確認するために,そのメッセージから,ブロック暗号を用いて生成することができるものはどれか。
令4修1 問39】 メッセージ認証符号の利用目的に該当するものはどれか。
令2修6 問39】 メッセージ認証符号の利用目的に該当するものはどれか。
平31春 問38】 メッセージ認証符号の利用目的に該当するものはどれか。
平29修12 問39】 メッセージ認証符号におけるメッセージダイジェストの利用目的はどれか。
平28秋 問38】 メッセージ認証符号におけるメッセージダイジェストの利用目的はどれか。
平27修7 問38】 メッセージ認証符号におけるメッセージダイジェストの利用目的はどれか。
平26春 問36】 メッセージ認証符号におけるメッセージダイジェストの利用目的に該当するものはどれか。
平25修1 問40】 メッセージ認証符号におけるメッセージダイジェストの利用目的に該当するものはどれか。
平23秋 問41】 メッセージ認証符号におけるメッセージダイジェストの利用目的はどれか。