SHA-256とMD5の違い|改ざん確認に使うのはどちらか
MD5は32桁、SHA-256は64桁のハッシュ値です。偶然の破損を見つけるだけならMD5でも足りますが、誰かが差し替えたかを確かめるなら、同じ値の別データを作れてしまうMD5は使えません。用途別の使い分けと、同じ文字なのに値が合わない原因を、実際の値で確かめます。
公開読了目安 約6分

この記事の要点
- MD5は16進数で32桁、SHA-256は64桁の値になる
- MD5は、同じ値を持つ別々のデータを意図して作れる(衝突)
- 偶然の破損の確認ならMD5でも足りるが、差し替えの確認にはSHA-256を使う
- パスワードの保存には、MD5もSHA-256もそのままでは向かない
- 改行1つ・空白1つで値は変わるので、合わないときは入力の違いを先に疑う
目次
MD5 と SHA-256 は、どちらもデータから決まった長さの「指紋」を作る計算です。 大きな違いは、MD5 では同じ指紋を持つ別々のデータを意図して作れることです。
ソフトのダウンロードページに並ぶ長い英数字や、社内で「MD5 で照合して」と頼まれる値が、この指紋です。 偶然の破損を見つけるだけなら MD5 でも足りますが、誰かが差し替えていないかを確かめるなら SHA-256 を使います。
長さの違いを実際の値で見る
ハッシュ値は、入力の長さに関係なく、計算方法ごとに決まった長さになります。 MD5 は 128 ビットで 16 進数 32 桁、SHA-256 は 256 ビットで 64 桁です。
abc の 3 文字を計算すると、次の値になります。
MD5 900150983cd24fb0d6963f7d28e17f72
SHA-256 ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
値の長さを見れば、どちらで計算した値かの見当がつきます。 32 桁なら MD5、40 桁なら SHA-1、64 桁なら SHA-256 の可能性が高いと考えてよいでしょう。
MD5 が「破られた」とはどういうことか
ハッシュ値は、違うデータなら違う値になることを期待して使います。 違うデータなのに同じ値になる組を「衝突」と呼びます。
IETF の RFC 6151 によると、MD5 の衝突の組が初めて示されたのは 2004 年です。 その後の研究では、当時のノートパソコンで約 1 分、別の報告では 10 秒以下で衝突を作れたとされています。
衝突を作れると、「中身の違う 2 つのファイルなのに、MD5 は同じ」という組を用意できます。 片方を見せて値を確かめさせ、あとでもう片方に差し替えても、MD5 では見分けられません。
SHA-1 も同じ道をたどった
40 桁の SHA-1 は、2017 年に Google と CWI Amsterdam が初めて実用的な衝突を公表しました。 使った SHA-1 の計算は 9,223,372,036,854,775,808 回と発表されています。
NIST(米国立標準技術研究所)は 2022 年、SHA-1 を 2030 年末までに段階的に使わなくする方針を出しました。 移行先として挙げているのは、SHA-256 を含む SHA-2 と、SHA-3 の仲間です。
確かめたいことで選ぶ
同じ「ハッシュで確かめる」でも、相手が偶然か人かで選ぶ方式が変わります。
| 確かめたいこと | MD5 | SHA-256 |
|---|---|---|
| 偶然の破損 | 使える | 使える |
| 誰かの差し替え | 不向き | 使う |
| 電子署名・証明書 | 使わない | 使う |
| パスワードの保存 | 使わない | 使わない |
- 偶然の破損: ダウンロード途中の欠けやコピーの失敗は、狙って同じ値にしたものではありません。偶然 MD5 が一致してしまう見込みはきわめて小さく、照合の目的は果たせます
- 誰かの差し替え: 差し替える側が元のファイルづくりに関われるなら、同じ MD5 の別のファイルを前もって用意できます。誰が作ったかで安全さが変わる方式は頼れないので、悪意を想定するなら SHA-256 で照合します
- 電子署名・証明書: RFC 6151 は、衝突への強さが要る電子署名のような用途で MD5 はもう受け入れられないとしています
- パスワードの保存: OWASP は、Argon2id や bcrypt のような、わざと計算に時間がかかるよう作られた方式を挙げています
パスワードに MD5 や SHA-256 をそのまま使わないのは、計算が速すぎるからです。 ハッシュは元に戻す計算こそありませんが、4 桁の暗証番号なら 10,000 通りを全部計算すれば当たります。
照合で防げる差し替えは、値の受け取り先で決まる
ダウンロードしたファイルの SHA-256 が配布元の値と一致すれば、届いたファイルは配布元のものと同じだと考えられます。 ただしこれが言えるのは、比べる値そのものを信用できるときだけです。
配布元のサイトそのものが乗っ取られると、ファイルとページの値が一緒に書き換えられ、照合は一致してしまいます。 配布元のサイトの値と比べて見つけられるのは、転送中の破損や、ミラーなど別の置き場所から落としたファイルの差し替えまでです。
配布元ごとの差し替えまで疑うなら、配布元の電子署名で確かめられる値や、別に信頼できる経路で受け取った値と比べます。 署名の確かめ方は配布元ごとに違うので、配布元の案内に従ってください。
同じはずなのに値が合わないとき
ハッシュは、1 文字でも違えばまったく別の値になります。 値が合わないときは、改ざんより先に、入力がわずかに違っていないかを疑います。
abc の前後を変えたときの SHA-256 の先頭 8 文字です。
| 入力 | SHA-256(先頭8文字) |
|---|---|
| abc | ba7816bf |
| abc+改行(LF) | edeaaff3 |
| abc+改行(CRLF) | 552bab68 |
| abc+空白 | 5488613c |
| ABC | b5d4045c |
見た目は同じ abc でも、末尾の改行や空白で値は変わります。
Windows の改行(CRLF)と、Mac や Linux の改行(LF)でも別の値です。
- echo の改行: コマンドの
echo abcは、末尾に改行を足して出力します。abcだけの値と比べるなら、改行を足さないprintf 'abc'を使います - ファイルの改行: ファイルの値は、ファイルに保存された改行のまま計算されます。中身を開いて貼り直すと、改行の形が変わって値が合わないことがあります
- 表記の違い: 16 進数の大文字と小文字は、同じ値の書き方の違いです。Base64 で書いた値は見た目がまったく違いますが、中身が同じこともあります
文字で計算できる値なら、ハッシュ値計算ツールに入れて、MD5 と SHA-256 を同時に見比べられます。 大文字・小文字・Base64 の出力も切り替えられるので、表記の違いかどうかをその場で確かめられます。
ファイルの値は OS の機能で計算する
ハッシュ値計算ツールが受け付けるのは文字だけで、ファイルの値は計算しません。 ファイルの値は、パソコンに入っている機能で計算します。
Windows(PowerShell) Get-FileHash ファイル名
Windows(コマンド) certutil -hashfile ファイル名 SHA256
Mac shasum -a 256 ファイル名
Linux sha256sum ファイル名
Microsoft の説明では、Get-FileHash は何も指定しなければ SHA-256 で計算します。
出てきた値を、配布元が示した値と 1 文字ずつ見比べてください。
配布元ごとの差し替えを疑うときは、前の節の署名や別の経路の値を使います。
関連記事
- SHA-256やMD5のハッシュ値を計算する使い方:ツールの操作手順と出力形式
- パスワードの使い回しで被害が広がる流れと家庭でできる予防策:漏れたパスワードが広がる道筋
- Base64で日本語が文字化けする理由とUTF-8:ハッシュ値の出力にも使う Base64 という書き方の仕組み
まとめ
MD5 と SHA-256 は、どちらもデータの指紋を作る計算です。 MD5 は同じ指紋の組を作れるので、誰かの差し替えを疑う場面では SHA-256 を使います。
偶然の破損の確認なら MD5 でも用は足ります。 値が合わないときは、改行・空白・大文字小文字のような入力の違いを先に確かめてください。
参考・出典
- RFC 6151: Updated Security Considerations for the MD5 Message-Digest and the HMAC-MD5 Algorithms — IETF (2026-10-09 閲覧)
- Announcing the first SHA1 collision — Google Online Security Blog (2026-10-09 閲覧)
- NIST Retires SHA-1 Cryptographic Algorithm — NIST (2026-10-09 閲覧)
- Password Storage Cheat Sheet — OWASP (2026-10-09 閲覧)
- Get-FileHash(PowerShell) — Microsoft Learn (2026-10-09 閲覧)
本記事は上記の公的機関・公式情報源を参考にしています。最新の情報は各リンク先をご確認ください。
あわせて読みたい
同じテーマ・関連ツールの記事です。