基本情報技術者試験 平成31年度 春期 午前 問38
メッセージ認証符号、MAC、メッセージダイジェストについての問題。
--------------------------
平成31年度 春期 午前 問38
メッセージ認証符号の利用目的に該当するものはどれか。
ア メッセージが改ざんされていないことを確認する。
イ メッセージの暗号化方式を確認する。
ウ メッセージの概要を確認する。
エ メッセージの秘匿性を確保する。
--------------------------
解説
メッセージ認証符号(Messsage Authentication Code:MAC)
ネットワークでよく出てくる MAC アドレスと同じ略語。
ちなみにアドレスの場合は Media Access Control の略。無理やりにでも別のものにしてほしい。
メッセージ認証符号は送信するデータ(メッセージ)から特定のルールで生成される短い情報のこと。
データが同じであれば、メッセージ認証符号は常に同じになる。
データが少しでも変われば、メッセージ認証符号が同じになることは(ほぼ)無い。
データとそのメッセージ認証符号をセットで相手に送信する。
受信した側は、送信されたデータから自分でもメッセージ認証符号を生成した後に、送信されたメッセージ認証符号と比較する。自分で作ったメッセージ認証符号と、送られてきたメッセージ認証符号が同じであれば、送信されたデータが改ざんされていないと判断できる。
これにより改ざんの検知ができるので、正解は選択肢ア。
データが改ざんされたりノイズで変化したりせず、もとのデータを保つことを完全性という。
似たような仕組みにデジタル署名があるが、細かなところで異なる。(メッセージ認証符号は共通鍵方式でやるが、デジタル署名は公開鍵方式でやる、とか)。
細かなところでことなるが、どちらも改ざんやデータの変化がないことを確認する、完全性を保つ仕組みとして覚えとけばよい。
選択肢イは、何かの仕組みかもしれないけども、問題の答えではない。
せっかく暗号化したのに、どうやって暗号化しているかのヒントをわざわざくっつけて通信するのか。
選択肢ウは言葉のひっかけだろうか。
データから作成したメッセージ認証符号はメッセージダイジェストとも呼ぶ。
本などの要約をダイジェスト(digest)とも言うので、メッセージダイジェスト=メッセージの概要?と間違えさせたいと思われる。
メッセージ認証符号(メッセージダイジェスト)として使われるデータそのものはランダムな文字列となるので、何も意味をもたない。
選択肢エは、メッセージ認証符号をつくるときに元のデータは特に暗号化等されないので正解ではない。
通信の際は別の仕組みで暗号化されている(秘匿性を確保している)が、メッセージ認証符号の仕組みで暗号化している訳ではない。
前後の問題はこちら。