ホーム > 情報処理安全確保支援士試験 > 2016年 春期
情報処理安全確保支援士試験 2016年 春期 午前2 問09
暗号に関連するデータのうち,次に示す処理で出力可能なものはどれか。
〔処理〕
(1) カウンタを初期化する。
(2) その時点に得た時刻データを共通鍵で暗号化する。
(3) カウンタの値と(2)の結果のXORをとり,さらに共通鍵で暗号化する。
(4) (3)の結果を出力する。
(5) (3)の結果と(2)の結果のXORをとり,さらに共通鍵で暗号化する。
(6) (5)の結果をカウンタの新しい値とする。
(7) (4)の出力について,必要とする分の数を得るまで(2)~(6)を繰り返す。
ア:擬似乱数(正解)
イ:ディジタル証明書
ウ:ハッシュ値
エ:メッセージ認証コード
解説
暗号に関連するデータのうち,次に示す処理で出力可能なものはどれか。【午前2 解説】
要点まとめ
- 結論:この処理は擬似乱数を生成するアルゴリズムであり、正解はアの「擬似乱数」です。
- 根拠:カウンタと時刻データを共通鍵で暗号化し、XOR演算と再暗号化を繰り返すことで、予測困難な乱数列を生成しています。
- 差がつくポイント:擬似乱数生成の仕組みと、ディジタル証明書やハッシュ値、メッセージ認証コードとの違いを理解することが重要です。
正解の理由
この処理は、初期値(カウンタ)と時刻データを共通鍵で暗号化し、XOR演算と再暗号化を繰り返すことで、外部から予測できない乱数列を生成しています。これは擬似乱数生成器(PRNG)の典型的な構造であり、暗号処理で安全な乱数を作るための方法です。
一方、ディジタル証明書は公開鍵基盤の証明書、ハッシュ値は固定長のデータ要約、メッセージ認証コードはデータの改ざん検知に使われるため、この処理の目的とは異なります。
一方、ディジタル証明書は公開鍵基盤の証明書、ハッシュ値は固定長のデータ要約、メッセージ認証コードはデータの改ざん検知に使われるため、この処理の目的とは異なります。
よくある誤解
- 「暗号化を使っているからメッセージ認証コードやハッシュ値の生成処理だ」と誤解しやすいです。
- 時刻データを使うため、証明書の生成処理と混同することがあります。
解法ステップ
- 処理の流れを読み、何を繰り返しているかを把握する。
- カウンタと時刻データを使い、XORと暗号化を繰り返している点に注目。
- これが乱数列を生成する典型的な方法であることを理解。
- 選択肢の意味を整理し、擬似乱数生成に該当するものを選ぶ。
- 他の選択肢の特徴と処理内容を比較し、誤りを排除する。
選択肢別の誤答解説
- ア: 擬似乱数
正解。カウンタと時刻データを用い、暗号化とXORを繰り返すことで乱数列を生成する典型的な方法です。 - イ: ディジタル証明書
公開鍵と所有者情報を証明するデータであり、今回の処理とは無関係です。 - ウ: ハッシュ値
入力データの固定長要約であり、XORやカウンタの繰り返し処理は含みません。 - エ: メッセージ認証コード
データの改ざん検知用で、通常はハッシュ関数と秘密鍵を組み合わせて生成しますが、今回の処理とは異なります。
補足コラム
擬似乱数生成は暗号技術の基盤であり、暗号鍵の生成や初期化ベクトルの作成に不可欠です。安全な擬似乱数生成器は、外部からの予測を防ぐために時刻やカウンタ、秘密鍵を組み合わせて複雑な処理を行います。今回のようなXORと暗号化の組み合わせは、暗号論的擬似乱数生成器(CSPRNG)の一例です。
FAQ
Q: なぜ時刻データを使うのですか?
A: 時刻データは毎回変化するため、乱数の初期値として予測困難性を高める役割を果たします。
A: 時刻データは毎回変化するため、乱数の初期値として予測困難性を高める役割を果たします。
Q: メッセージ認証コードと擬似乱数の違いは何ですか?
A: メッセージ認証コードはデータの改ざん検知用で、擬似乱数は予測困難な数列生成用です。目的と生成方法が異なります。
A: メッセージ認証コードはデータの改ざん検知用で、擬似乱数は予測困難な数列生成用です。目的と生成方法が異なります。
関連キーワード: 擬似乱数生成, 暗号化, XOR演算, カウンタ, CSPRNG, メッセージ認証コード, ハッシュ値, ディジタル証明書