SC情報処理安全確保支援士試験 午前Ⅰ

平成21年度秋期 情報処理安全確保支援士 午前Ⅰ 問2

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

誤り検出方式であるCRCに関する記述として、 適切なものはどれか。

選択肢

  1. ア
    検査用のデータは、 検査対象のデータを生成多項式で処理して得られる1ビピットの値である。
  2. イ
    受信側では、 付加されてきた検査用のデータで検査対象のデータを割り、 余りがなければ送信が正しかったと判断する。
  3. ウ
    送信側では、 生成多項式を用いて検査対象のデータから検査用のデータを作り、 これを検査対象のデータに付けて送信する。
  4. エ
    送信側と受信側では、 異なる生成多項式が用いられる。
解き方のヒントを見る

データのお尻に「割り算の余り」をくっつけて、エラーがないか検算する

エラー検出技術「CRC(巡回冗長検査)」の問題だよ。送信側が元のデータを「生成多項式(特定の方程式)」で割り算して、その『余りのデータ』を後ろにくっつけて送る。受け取った側も同じ式で割り算して、余りが一致するかでエラーの有無を確認するよ。

この問題で問われていること

「送信側が検査値(余り)を作って付加し、受信側も同じルールで検算する」という一連の流れを正しく選ぼう。

CRC の流れ

送信側は元データを生成多項式で処理して余りを求め、それを CRC として付加します。受信側は同じ生成多項式で検算し、余りの整合性から誤りを検出します。

送信側: データ -> 生成多項式で処理 -> CRC付加\n受信側: 同じ多項式で検算

確認ポイント

  • 送受信で異なる生成多項式を使うことはありません。
  • CRC は 1 ビット値とは限らず、所定長の検査値です。
  • 送信側が検査値を作って付加する流れを押さえましょう。
正解と解説を見る

正解

ウ

出典

問題文と解答は IPA 公開の過去問題冊子・解答例を基にしています。

選択肢ア

これは間違いだよ。CRCの検査用データは、普通は1ビットだけではなく複数ビットになるんだ。1ビットの確認札だけで見るのは、どちらかというとパリティチェックのイメージだよ。CRCはもっと長めの確認用コードを付けて、壊れ方を見つけやすくしているんだ。

選択肢イ

これは間違いだよ。受信側で割るときに使うのは、付いてきた検査用データそのものではなく、送信側と同じ生成多項式なんだ。たとえるなら、荷物に付いた札で荷物を調べるのではなく、あらかじめ決めた共通の検査ルールで、荷物と札をまとめてチェックする感じだよ。

選択肢ウ(正解)

これは正解だよ。CRCでは、送る側が「荷物の中身から作った確認用の札」を荷物にくっ付けて送るイメージなんだ。この確認用の札を作るときに使う決まったルールが生成多項式だよ。受け取った側は同じルールで確認して、途中でデータが壊れていないかを調べるんだ。

選択肢エ

これは間違いだよ。送信側と受信側で違う生成多項式を使ったら、確認のルールが食い違ってしまうんだ。合鍵で例えると、送る側がAの鍵穴に合う鍵を作ったのに、受け取る側がBの鍵穴で確認するようなものだよ。CRCでは同じ生成多項式を使う必要があるんだ。

出典:独立行政法人 情報処理推進機構(IPA)平成21年度秋期 情報処理安全確保支援士試験 午前Ⅰ 問2(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針