- 追加された行はこの色です。
- 削除された行はこの色です。
- チェックサム へ行く。
[[ネットワーク用語]] > チェックサム
* チェックサム [#j0e57d0e]
チェックサム = 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ビット単位で加算
+ 総計がゼロなら正常(チェックサムフィールドにはチェックサムフィールドがゼロの場合のチェックサムの補数がセットされているので、総計=チェックサムフィールド以外のチェックサム+チェックサムフィールド以外のチェックサムの補数=ゼロになれば正しい