^_^
(クリックしてコピー)
SHA1(Secure Hash Algorithm 1)は、米国国家安全保障局によって開発され、1995年に国立標準技術研究所によって発行された暗号化ハッシュ機能です。SHA1は、任意の長さの入力を受け入れ、メッセージダイジェストとして知られる160ビット(20バイト)ハッシュ値を生成します。このダイジェストは、多くの場合、40桁の16進数として表されます。
SHA1はもともと、より大きなSHAファミリーのアルゴリズムファミリーの一部として開発され、以前のバージョンであるSHA-0の改善と見なされていました。 SHA1は、情報技術とサイバーセキュリティのさまざまな分野で広く使用されていることがすぐにわかりました。ファイル、デジタル署名、TLS/SSLやSSHなどのセキュリティプロトコル、およびGITなどのバージョン制御システムの整合性を確認するために使用されました。
しかし、時間が経つにつれて、SHA1の脆弱性が発見されました。重要な問題は、衝突に対する感受性でした。 2つの異なる入力メッセージが同じハッシュダイジェストを生成すると、衝突が発生します。衝突は理論的にはハッシュ機能で常に可能ですが、それらに対する抵抗はセキュリティにとって重要です。 SHA1の衝突を生成する実用的な方法を見つけることは、深刻な問題になりました。
2017年、研究者のグループは、Shatedとして知られるSHA1に対する実現可能な衝突攻撃を実証しました。これは、攻撃者が同じSHA1ハッシュを生成する2つの異なるファイルを作成することができ、疑いを抱かずにデジタル署名を作成したり、データを操作できるようにすることができることを意味しました。
これらの脆弱性のため、SHA1は廃止されており、高度なセキュリティを必要とするほとんどのアプリケーションで使用することは推奨されていません。 SHA-2ファミリーの一部であるSHA-256、SHA-384、またはSHA-512などのより強力なハッシュ関数に移行することをお勧めします。多くの組織やソフトウェアベンダーがSHA1のサポートを停止しており、最新のブラウザとオペレーティングシステムは、SHA1を使用するサイトまたはアプリケーションの不安をユーザーに警告しています。