目次

CRC(巡回冗長検査)

正しいデータが受信されたかどうかを確認する方法のうち,最も簡単は方法はデータが破損していれば,データを再送してもらうというもの
ではそのデータが正しいかどうか?その方法の1つとして,チェッサムを生成し,データを照合方法がある. 受信側は送られてきたデータ,チェックサムを計算し,問題なければそのデータを使って処理を行えばいいし,異なっていればデータを再送してもらう.
このチェックサムにて,多項式を用いるものをCRCと言う(この表現はあってるか?)
以前友人とチェックサムについて議論していたとき,「チェックサムがデータ化けしていたら意味ないのでは?」と思った事があったが,仮にチェックサムがデータ化けしていたらCRC計算の照合が失敗する.その段階でデータには正しくないデータが混ざっていることがわかるので,本質的には意味はある.ということに最近ふと考えて気づいた.

CRCのソフトウェア実装

Free Source Code: CRC Implementation in C
CRC Series, Part 3: CRC Implementation Code in C/C++

参考文献

CRC(巡回冗長検査)で適正なデータ通信を実現
CRC