チェックサムとハッシュの基礎
チェックサムはファイルの指紋です。その仕組み、信頼できるアルゴリズム、ダウンロードの確認方法を説明します。
よいハッシュの性質
- 同じ入力からは必ず同じハッシュ値が得られる。
- 入力が少しでも変わると、ハッシュ値全体が変わる。
- ハッシュ値から元のファイルを復元することはできない。
- 同じハッシュ値を持つ2つのファイルを見つけることは事実上不可能。
ハッシュ・チェックサム・署名の違い
| 用語 | 証明できること |
|---|---|
| チェックサム(CRC32) | データが偶然壊れていないこと |
| 暗号学的ハッシュ(SHA-256) | ファイルが計算元と同一であること |
| デジタル署名(GPG、コード署名) | 秘密鍵を持つ人が作ったファイルであること |
MD5とSHA-1が使われなくなった理由
現在では同じMD5を持つ別々のファイルを数秒で作れ、2017年にはSHA-1でも同じことが実証されました。攻撃者はMD5やSHA-1の値を保ったままファイルを差し替えられます。SHA-256やSHA-512にはこの弱点はありません。