メインコンテンツへスキップ
Z

SHA-1 vs SHA-256

SHA-1 vs SHA-256 compared — length, security and migration. SHA-1 is deprecated; SHA-256 is the modern standard.

SHA-1 (160-bit) is deprecated after practical collision attacks; SHA-256 (256-bit, SHA-2 family) is the current secure standard for integrity and signatures.

SHA-1 vs SHA-256 at a glance

SHA-1 SHA-256
Output 160-bit (40 hex) 256-bit (64 hex)
Collisions Broken (2017) Strong
Status Deprecated Recommended
Use for security? No Yes

When to use SHA-1

Use SHA-1 only to interoperate with legacy systems that still require it.

When to use SHA-256

Use SHA-256 for all new work — file integrity, signatures, certificates.

Tools for SHA-1 & SHA-256

SHA-1 vs SHA-256

どのアルゴリズムに対応していますか?

MD4、MD5、SHA-1、SHA-224、SHA-256、SHA-384、SHA-512、SHA3-256、SHA3-384、SHA3-512、Keccak-256(Ethereumで使われる派生版)、CRC-32、NTLMに対応しています。

MD2、MD6、Whirlpoolがないのはなぜですか?

MD2は1996年に非推奨となっており、組み込むのに十分小さく、かつメンテナンスされているJS実装が存在しません。MD6は研究段階の設計にとどまり、実際に実装されたことがありません。Whirlpoolは700行にも及ぶルックアップテーブルが必要ですが、需要があれば追加を検討します。

SHA-256を選んでおけば問題ないですか?

多くの現代的な用途ではそれで十分です — SHA-256は高速で広くサポートされており、安全性も高いとされています。MD系やSHA-1系列とは完全に異なる方式が必要な場合は、SHA3-256やSHA-512を使ってください。パスワードの保存には、単純なハッシュではなくArgon2やbcryptといった専用のKDFを使用してください。

1つのアルゴリズムだけに特化したツールが欲しい場合は?

専用ページもご用意しています。MD5ハッシュジェネレーター、SHA-256ハッシュジェネレーター、SHA-1ハッシュジェネレーター、Keccak-256ハッシュジェネレーターをお試しください。

Keccak-256とSHA3-256の違いは何ですか?

Keccak-256はパディングに変更が加えられていないオリジナル版のKeccakアルゴリズムです。一方SHA3-256はNISTによって標準化されたバージョンで、パディングのバイトが若干異なります。同じ入力でも両者は異なる結果を返します。EthereumはKeccak-256を使用しています(Solidityのkeccak256()関数)。