[[ネットワーク用語]] > チェックサム

* チェックサム [#j0e57d0e]

チェックサム = check sum

[[チェックサムとは【check sum】 - IT用語辞典>http://e-words.jp/w/E38381E382A7E38383E382AFE382B5E383A0.html]]
>チェックサム 【check sum】
 
データを送受信する際の誤り検出方法の一つ。
送信前にデータを分割し、それぞれのブロック内のデータを数値とみなして合計を取ったもの。
求めたチェックサムはデータと一緒に送信する。
受信側では送られてきたデータ列から同様にチェックサムを計算し、送信側から送られてきたチェックサムと一致するかどうかを検査する。
両者が異なれば、通信系路上でデータに誤りが生じていることになるので、再送などの誤り訂正手続きをとる。

[[チェックサム - Wikipedia>http://ja.wikipedia.org/wiki/%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF%E3%82%B5%E3%83%A0]]
>チェックサム (Check Sum)とは誤り検出符号の一種である。
符号値そのものを指すこともある。
他の誤り検出符号と比べて信頼性は低いが、それでも単純計算で99.5%以上(1オクテットのチェックサムの場合255/256、2オクテットなら65535/65536)の検出率がある上にアルゴリズムが簡単であることから、簡易な誤り検出に用いられる。

>''アルゴリズム''
算出方法は非常に簡単で、もっとも単純なものは、ワード列の個々のワードの総計(sum)の下位1ワードをそのまま符号値とするものであり、1ワードを何ビットとするかは実装によって異なる。
 
例えば、8ビットのワード列「00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F」の総和は「78」であるので、そのチェックサムは「78」となる。
 
総計のどのビット群を符号値とするか、符号値をどのように扱うかなどで、派生した種類がある。
 
ネットワークを利用してのデータ送信時、IPパケットにデータを分割した際のIPヘッダの検査での利用例を以下に示す。

+    IPヘッダのチェックサムフィールドにゼロをセット
+    IPヘッダを16ビット単位で加算
+    総計の下位16ビットの補数をIPヘッダのチェックサムフィールドへセット
+    送信
+    受信したらIPヘッダを16ビット単位で加算
+    総計がゼロなら正常(チェックサムフィールドにはチェックサムフィールドがゼロの場合のチェックサムの補数がセットされているので、総計=チェックサムフィールド以外のチェックサム+チェックサムフィールド以外のチェックサムの補数=ゼロになれば正しい

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS