カテゴリ: 情報セキュリティマネジメント試験 更新日: 2026/01/18

メッセージ認証符号(MAC)を完全解説!初心者でもわかる暗号と認証の基本

メッセージ認証符号
メッセージ認証符号

先生と生徒の会話形式で理解しよう

生徒

「インターネットで送ったデータが、途中で書き換えられていないかって、どうやって確認するんですか?」

先生

「その確認に使われる仕組みの一つが、メッセージ認証符号です。データが正しいかどうかをチェックできます。」

生徒

「暗号とは違うんですか?名前がちょっと難しくて…」

先生

「暗号と関係はありますが、目的は少し違います。順番に、できるだけ簡単に説明しますね。」

1. メッセージ認証符号とは?

1. メッセージ認証符号とは?
1. メッセージ認証符号とは?

メッセージ認証符号は、読み方はメッセージ認証符号(メッセージニンショウフゴウ)といいます。 英語では Message Authentication Code と書き、略して MAC(マック)と呼ばれることもあります。

メッセージ認証符号とは、送信されたデータが途中で改ざんされていないか、そして正しい相手から送られてきたかを確認するための仕組みです。 インターネット通信やシステム間のデータ送信など、情報セキュリティの基本としてよく使われています。

たとえば、ネットショッピングで注文内容を送信したとき、その内容が途中で書き換えられてしまうと大変です。 メッセージ認証符号を使うことで、「内容が変わっていない」ことを受信側で確認できます。

2. メッセージ認証符号で何がわかるのか

2. メッセージ認証符号で何がわかるのか
2. メッセージ認証符号で何がわかるのか

メッセージ認証符号を使うと、主に次の二つがわかります。

  • データが改ざんされていないかどうか
  • 正しい相手が送ったデータかどうか

これを専門用語では、改ざん検出や送信元確認といいますが、難しく考える必要はありません。 「途中で誰かが中身を書き換えていないか」「知らない人が勝手に送っていないか」を確認する仕組みだと覚えると理解しやすいです。

3. 共通鍵(キョウツウカギ)との関係

3. 共通鍵(キョウツウカギ)との関係
3. 共通鍵(キョウツウカギ)との関係

メッセージ認証符号では、共通鍵という秘密の情報を使います。 共通鍵は、読み方は共通鍵(キョウツウカギ)といい、送信する人と受信する人だけが知っている合言葉のようなものです。

送信側は、送るデータと共通鍵を使ってメッセージ認証符号を作成します。 受信側も、同じ共通鍵と受け取ったデータを使って、同じ計算を行います。

もし計算結果が一致すれば、「データは正しく、途中で変更されていない」と判断できます。 一致しなければ、データが壊れている、または改ざんされている可能性があります。

4. 暗号との違いをやさしく説明

4. 暗号との違いをやさしく説明
4. 暗号との違いをやさしく説明

暗号は、データの内容を他人に読めないようにするための仕組みです。 一方、メッセージ認証符号は、データの内容を隠すことが目的ではありません。

メッセージ認証符号の目的は、「正しさの確認」です。 たとえデータの中身が見えていても、正しい相手が送ったか、途中で変えられていないかを確認できます。

そのため、暗号とメッセージ認証符号は、役割が違いますが、一緒に使われることも多いです。 情報セキュリティでは、このように役割ごとに仕組みが分かれています。

5. ハッシュ関数との関係

5. ハッシュ関数との関係
5. ハッシュ関数との関係

メッセージ認証符号は、ハッシュ関数という仕組みと組み合わせて作られることが多いです。 ハッシュ関数は、読み方はハッシュ関数(カンスウ)といい、データを短い決まった長さの値に変換します。

データが少しでも変わると、結果が大きく変わるのが特徴です。 この性質を利用して、データが変更されていないかをチェックします。

共通鍵とハッシュ関数を組み合わせることで、第三者にはまねできないメッセージ認証符号が作られます。

6. 身近な例で考えてみよう

6. 身近な例で考えてみよう
6. 身近な例で考えてみよう

メッセージ認証符号は、宅配便の封印シールのようなものと考えるとわかりやすいです。 封印が破れていなければ、「途中で開けられていない」と判断できます。

もし封印が破れていたら、中身が変えられた可能性があります。 メッセージ認証符号も同じで、計算結果が合わなければ、データが安全ではないと判断できます。

7. なぜメッセージ認証符号が重要なのか

7. なぜメッセージ認証符号が重要なのか
7. なぜメッセージ認証符号が重要なのか

インターネットでは、多くのデータが毎日やり取りされています。 その中には、個人情報や重要な設定情報など、守るべき情報がたくさんあります。

メッセージ認証符号を使うことで、データの信頼性を確認でき、安全な通信を支えることができます。 目に見えない部分ですが、情報セキュリティを支えるとても大切な仕組みです。

カテゴリの一覧へ
新着記事
New1
情報セキュリティマネジメント試験
メッセージ認証符号(MAC)を完全解説!初心者でもわかる暗号と認証の基本
New2
情報セキュリティマネジメント試験
PINとは何かをやさしく解説!初心者でもわかる暗証番号の基本と役割
New3
情報セキュリティマネジメント試験
ユーザ認証とは何かを完全解説!初心者でもわかる本人確認の基本
New4
情報セキュリティマネジメント試験
ワンタイムパスワードとは何かを完全解説!初心者でもわかる安全な認証の仕組み
人気記事
No.1
Java&Spring記事人気No1
基本情報技術者試験
イーサネット(Ethernet)とは?初心者にもわかるLANの基本技術をやさしく解説
No.2
Java&Spring記事人気No2
基本情報技術者試験
NIC
218
NICとは何か?初心者にもわかるネットワークインターフェースカードの基本
No.3
Java&Spring記事人気No3
基本情報技術者試験
16進数とは?初心者にもわかる意味・読み方・変換方法をやさしく解説!
No.4
Java&Spring記事人気No4
基本情報技術者試験
セグメントとは?ネットワークの基本単位を初心者向けにやさしく解説
No.5
Java&Spring記事人気No5
基本情報技術者試験
FTP
208
FTPとは?初心者でもわかるファイル転送プロトコルの基本と仕組みを徹底解説!
No.6
Java&Spring記事人気No6
基本情報技術者試験
URL
151
URLとは?初心者でもわかるWebリンクの仕組みと役割をやさしく解説!
No.7
Java&Spring記事人気No7
基本情報技術者試験
Telnetとは?初心者にもわかる仕組みと使い方をやさしく解説!
No.8
Java&Spring記事人気No8
基本情報技術者試験
スキーマ(Schema)とは?データベースの基本構造を初心者向けに解説