パリティチェックで誤りを検出できなかった場合、
誤ったデータが「正しい」として処理されるため、
以下のような深刻な問題が発生する可能性があります。
✅ 結論:誤りが気づかれないまま伝送・処理される
✅ パリティチェックの仕組み(簡単に)
| 種類 | 説明 |
|---|
| 偶数パリティ | データ中の1の数が偶数になるようにパリティビットを設定 |
| 奇数パリティ | 1の数が奇数になるように設定 |
✅ 例:偶数パリティ
オリジナルデータ(7bit):
データ: 1011001 → 1の数は 4(偶数)パリティビット: 0 をつけて → 10110010(偶数パリティ成立)
誤りのケース1:1ビット誤り(検出できる)
受信: 10110000 → 1の数は 3(奇数) → パリティチェックNG → 誤り検出
誤りのケース2:2ビット誤り(検出できない!)
受信: 10111000 → 1の数は 4(偶数) → パリティチェックOK → 誤りを見逃す!
✅ パリティチェックが誤りを検出できなかったときの影響
| 状況 | 影響例 |
|---|
| テキストの伝送 | 文字が化ける(例:「Hello」→「Hemlo」) |
| プログラムコード | 実行時エラーや予期しない動作になる |
| ファイル保存 | ファイルが破損するが気づかれない |
| 通信制御 | プロトコルの状態が狂い、通信断や再送が発生 |
| 暗号・認証系 | ハッシュや署名が一致せず、エラーになる(が原因不明とされる可能性も) |
✅ 対策:誤り検出率を高める方法
| 方法 | 特徴 |
|---|
| CRC(巡回冗長検査) | 高精度な検出(バースト誤りにも強い) |
| ハミング符号 | 誤り訂正(1bit)も可能 |
| 2次元パリティ | 複数のパリティを使い、誤り箇所を絞り込み |
| ECC(エラー訂正符号) | メモリや通信で使用。自動で誤り訂正できる |
✅ まとめ
| 項目 | 内容 |
|---|
| パリティチェックの目的 | 誤り検出(1bitの検出に有効) |
| 検出できない誤り | 偶数個のビットが誤った場合(例:2bit) |
| 起こる問題 | 気づかれずに誤ったデータが処理される |
| 対策 | CRCやハミング符号など、より高度な誤り検出・訂正方式を使うこと |
この記事へのコメント