コリジョンとは【用語集詳細】

コリジョン(Collision)あるいは衝突とは、ハッシュ関数に対し2つの異なる入力を行った結果、同一のハッシュ値が生成される現象です。
ハッシュアルゴリズムは、入力値に対し固有のハッシュ値を生成するように設計されています。
しかし、入力できる値が無限であるのに対し、生成されるハッシュ値はハッシュアルゴリズムの定めるビット長に制限されています。
つまり、非常に可能性は低いものの、異なる入力値から、同一のハッシュ値が生成される可能性が常に存在します。これは「鳩の巣原理」(Pigeonhole principle)と呼ばれます。
ハッシュ値の衝突が発生した場合、ハッシュが担保する完全性が失われます。
高度な計算能力によってコリジョンハッシュを特定する攻撃をコリジョン攻撃(衝突攻撃)といいます。
広く普及していたハッシュ関数SHA-1は、高度な計算能力を持ったコンピュータによるコリジョン攻撃に対して脆弱であることがわかり、NISTは利用停止を推奨しています。