メッセージ認証符号(MAC)とは?めっせーじにんしょうふごう
メッセージ認証符号(MAC)とは、送信者と受信者があらかじめ共有した共通鍵とメッセージから計算する短い符号で、Message Authentication Codeの略。受信側が同じ鍵で計算し直して値が一致すれば、途中で改ざんされておらず、鍵を知る相手が送ったものだと確認できる。ハッシュ関数と共通鍵を組み合わせるHMACが代表的で、デジタル署名より軽い処理で完全性を検証できる。
最終更新:2026-10-09
この語が出る過去問を解く →背景
暗号化は中身を読まれないようにするが、読めない状態のまま書き換えられることは防げない。受信側は復号して初めておかしいと気づくか、気づかないまま処理してしまう。秘匿とは別に「届いたものが送られたものと同一か」を確かめる手段が要る。公開鍵暗号によるデジタル署名でも確認できるが、計算が重く通信のたびに使うには向かない。そこで、共通鍵を持つ者どうしの間に限って軽く検証する仕組みとして考案されたのがMACである。
具体例
HMAC-SHA256(ハッシュ関数SHA-256を使うHMAC)は、TLSの通信や、ログイン状態などを表す札のJWT(JSON Web Token)の署名、AmazonのクラウドサービスAWSへ送る要求(Amazon S3などのAPI呼び出し)の署名(Signature Version 4)で使われている。通信の途中で本文が1文字でも書き換えられると、受信側で再計算した値が送られてきた値と一致しなくなるため、改ざんをその場で検出できる。
試験での引っ掛け
鍵を送信者と受信者の双方が持つため、受信者も同じ値を作れてしまい、第三者に対して「送ったのは相手だ」と証明する否認防止はできない。ここがデジタル署名との決定的な差である。また検出できるのは改ざん(完全性)であって、内容を隠す機密性は別に暗号化で確保する必要がある。
関連用語
出た過去問
出典:平成28年度 秋期 基本情報技術者試験 午前 問38(IPA)
メッセージ認証符号におけるメッセージダイジェストの利用目的はどれか。
正解:メッセージが改ざんされていないことを確認する。
要点:メッセージダイジェストはハッシュ値の照合で改ざんを検出する
メッセージダイジェストは、メッセージ全体をハッシュ関数にかけて得られる固定長の値である。内容が1ビットでも変わればダイジェストも変わるので、送受信の両側で計算した値を突き合わせれば改ざんの有無を検出できる。メッセージ認証符号はこの性質を鍵と組み合わせて利用する。
出典:平成29年度 秋期 基本情報技術者試験 午前 問32(IPA)
ネットワーク機器の一つであるスイッチングハブ(レイヤ2スイッチ)の特徴として、適切なものはどれか。
正解:受信したパケットを、宛先MACアドレスが存在するLANポートだけに転送する。
要点:L2スイッチはMACアドレスを学習し宛先ポートにだけ転送する
レイヤ2スイッチは受信フレームの送信元MACアドレスとポートの対応をMACアドレステーブルに学習し、宛先MACアドレスが登録済みならそのポートにだけフレームを送り出す。これにより無関係なポートへ余計なトラフィックが流れず、衝突も減って効率が上がる。全ポートへ中継するのは旧来のリピータハブの動作である。
出典:平成30年度 春期 基本情報技術者試験 午前 問33(IPA)
LANに接続されているプリンタのMACアドレスを、同一LAN上のPCから調べるときに使用するコマンドはどれか。ここで、PCはこのプリンタを直前に使用しており、プ…
正解:arp
要点:arpはIPアドレスとMACアドレスの対応を表示する
arpコマンドは、IPアドレスとMACアドレスの対応を保持するARPキャッシュの内容を表示する。直前に通信した相手であればキャッシュに残っているため、IPアドレスからそのプリンタのMACアドレスを調べられる。
出典:平成31年度 春期 基本情報技術者試験 午前 問38(IPA)
メッセージ認証符号の利用目的に該当するものはどれか。
正解:メッセージが改ざんされていないことを確認する。
要点:メッセージ認証符号は改ざんの有無を検出する
メッセージ認証符号(MAC)は、送信者と受信者が共有する鍵とメッセージから計算した固定長の値を付けて送る仕組みである。受信側が同じ計算をして値が一致すれば、内容が途中で書き換えられておらず、鍵を知る相手から送られたと確認できる。あくまで完全性と正当性の確認が目的で、内容を隠す働きはない。
出典:令和4年度 公開問題 基本情報技術者試験 科目A 問32(IPA)
メッセージ認証符号の利用目的に該当するものはどれか。
正解:メッセージが改ざんされていないことを確認する。
要点:MACは共有鍵を使って改ざんの有無を検証する符号
メッセージ認証符号(MAC)は、送受信者が共有する秘密鍵とメッセージからハッシュ計算によって作る短い符号である。受信側が同じ鍵で計算し直して一致を確認すれば、内容が改ざんされておらず、鍵を知る相手から送られたことが分かる。ただしメッセージ自体は暗号化されないので、秘匿性の確保は別に暗号化で行う必要がある。
出典・参考
公式シラバスの3 技術要素 > 1. 情報セキュリティ > (8) 情報セキュリティに関する技術に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。