web-dev-qa-db-ja.com

ハッシュ衝突の検出

たとえば、sha-1はウィークハッシュ関数として知られています。攻撃者がハッシュ関数で衝突を見つけた場合、与えられたメッセージmに対して有効なMACを生成できますか?つまり、弱いハッシュ関数を使用するだけで、任意のメッセージに対して有効なMACを生成することが可能です。可能であれば、有効なMacを生成するには何が必要ですか?

2
HyunJae Nam

MD5およびSHA-1で見つかったプレフィックスハッシュ衝突の脆弱性は、HMACのセキュリティを損なうものではありません。

簡単に言うと:HMACのセキュリティは秘密鍵に依存しており、衝突の生成はショートカットではありません。攻撃者は、この秘密鍵K-や、同じ出力につながる他のメッセージ入力(衝突など)を知らない限り、意図した有効なHMACを生成することはできません。

さらに、MD5とSHA-1に見られる脆弱性はプレフィックス攻撃であり、次の図に示すように、攻撃者はXOR操作のため、HMACで使用されるハッシュのプレフィックスを制御できません。 :

enter image description here

1
rook

いいえ、キーはバイアスとして機能し、弱点を打ち負かすのに十分なエントロピーを追加するためです。同様に、md5に基づくHMACも引き続き使用できます。明らかに、そうすべきではありません。

1
Yorick de Wid