【ちぇっくさむ】

チェックサム とは?

💡 データの「検算値」、送受信中の誤りを検出する仕組み
📌 このページのポイント
チェックサムによるデータ整合性の検証 送信側 データ: ABCDEF... ハッシュ計算 チェックサム: a3f7... データ + チェックサムを送信 転送 受信側 受信データから再計算 チェックサム: a3f7... 両方のチェックサムを比較 ✓ 一致 → データ正常 ✗ 不一致 → 破損あり
チェックサム:送信側と受信側でハッシュ値を比較して整合性を確認
ひよこ ひよこ

チェックサムってどういう仕組みなの?

ペンギン先生 ペンギン先生

例えば「12 34 56」というデータを送るとき、送信側で「12+34+56=102」を計算してデータと一緒に送る。受信側も同じ計算をして「102」になれば「データは正常」と確認できる。値が違えば途中でエラーが起きた。

ひよこ ひよこ

TCPでも使ってるの?

ペンギン先生 ペンギン先生

TCP・IP・UDPのすべてのヘッダにチェックサムフィールドがある。パケットが転送中に壊れた場合に検出して再送できる仕組みになっている。

ひよこ ひよこ

ハッシュ値とは違うの?

ペンギン先生 ペンギン先生

同じ目的(整合性確認)で使われることがあるけど、チェックサムは単純な計算で高速、ハッシュ値は暗号学的に強力だけど計算コストが高い。ネットワークの誤り検出には単純なチェックサム、セキュリティ目的にはSHA-256などのハッシュ値を使う。

ひよこ ひよこ

ダウンロードしたファイルのチェックサムって自分で確認できるの?

ペンギン先生 ペンギン先生

できるよ。Windowsなら「certutil -hashfile ファイル名 SHA256」、Macなら「shasum -a 256 ファイル名」で計算できる。ソフトウェアの公式サイトにはSHA256ハッシュが掲載されていることが多いから、照合すれば改ざんされていないか確認できるんだ。実はLinuxパッケージマネージャー(aptやdnf)は内部で自動的にGPG署名とチェックサムを検証しているから、ユーザーが意識しなくても安全にインストールできる仕組みになっているんだよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
チェックサムって出てきたら「データの誤りや改ざんを検出するための検証値」と思えばOK!
📖 おまけ:英語の意味
「Checksum」 = チェック(確認)のための合計値
💬 元々はデータのバイトを足し算(sum)してチェックする方式からの命名。現在はハッシュベースのより強力な方式も「チェックサム」と呼ぶことがある
← 用語集にもどる