チェックサム
ちぇっくさむ概念
データの誤りを検出するための小さな検査値。通信や保存でデータが壊れていないかを確かめるのに使う。
年表
1981RFC 791でIPヘッダチェックサムの計算方法が定義される
概要
データが通信や保存の途中で壊れていないかを確かめるための、小さな検査用の値。送信側がデータから一定の計算でチェックサムを作り、受信側が同じ計算をやり直して値が一致するかを確認する。一致しなければ、どこかでデータが化けたと分かる。
実例
インターネットの基礎となるIP(Internet Protocol)は、RFC 791(1981年)でヘッダ部分のチェックサムを定義している。計算方法は「ヘッダを16ビット単位の word の列とみなし、その1の補数和を取り、さらにその1の補数を取る」というもので、チェックサムのフィールド自体は計算時に0として扱う。ヘッダ内の情報(生存時間TTLなど)は通信経路上で変化するため、経由するたびに再計算・再検証される。検証に失敗したパケットは、それを検出した機器によって即座に破棄される。RFC自身も「単純に計算できるチェックサムであり実験的には十分機能するが、暫定的なものでCRC方式に置き換わる可能性がある」と述べており、あくまで簡便さを優先した設計だったことが分かる。
現在
IPやTCP、UDPなど、インターネットの根幹をなすプロトコルは今も同種のチェックサムを使い続けている。ファイルのダウンロード確認やストレージの破損検出など、通信以外の場面でも「壊れていないか確かめる」用途で広く使われている。