暗号に関してはCBKにも結構専門的なことが記載されています。ここは頑張って勉強しなければなりません。
カウンター(CTR)モードの主な特徴は何ですか?
a. フィードバックに前の暗号文を使用する
b. 同じ平文は同じ暗号文を生成する
c. 同じ平文は同じ暗号文を生成せず、暗号化・復号化が並列処理できる
d. エラーが発生するとそれが連鎖し、後続のブロックに影響を与える
正解:c 暗号化・復号化が並列処理できる
正答が正しい理由
CTRモードはナンス付きカウンターを使用して暗号化を行い、同じ平文が同じ暗号文を生成しない特徴があります。また、暗号化に前のブロックのデータを使用しないため、各ブロックの暗号化・復号化の並列処理が可能です。またエラーが後続のブロックに影響を与えません。
他の選択肢が間違っている理由
a. フィードバックに前の暗号文を使用する:これはCBCやCFBモードの特徴です。
b. 同じ平文は同じ暗号文を生成する:これはECBモードの特徴です。
d. エラーが発生するとそれが連鎖し、後続のブロックに影響を与える:これもCBCやCFBモードの特徴です。
ブロック暗号のモードはブロック長より長いメッセージを暗号化する際の各種方式です。単純にメッセージをブロックに分けて暗号鍵で暗号化する(ECBモード)と、同じ平文が同じ暗号文を生成してしまいそれが脆弱性の元になります。そのために暗号化に前のブロックのデータを利用するCFBやCBC、カウンターを利用するCTRモードなどが作られました。
各モードのアルゴリズムを全く知らずに、平文と暗号文の対応や並列処理、エラーの影響など各種性質をバラバラに覚えるのは非常に辛いです。それぞれのモードの動作アルゴリズムはWikipediaにもわかりやすく図解があるのでそこを一旦理解した上で性質がなぜそうなるか覚えるのが良いと思っています。