ハッシュ関数のハッシュ(2004-2006):どうだったのか、今何をすべきか?

その週に質問をした2人の友人は、本質的にはほぼ同じでした(おおむね、 「MD5 / SHA-1が既にハッキングされていると聞きました。なぜそれらをまだ使用しているのですか?」 )、このメモを書くように促されました、ただし、以下で説明する主なイベントはすでに3年以上前に発生しています。



一般情報(専門家向け-間違いなくスキップ)



ご存知のように、暗号化ハッシュの合計は、ハッシュ関数に必要な基本的なプロパティに加えて、 通常のハッシュの合計とは異なります。 暗号化ハッシュアルゴリズムには追加の要件が課せられます 上記の暗号化ハッシュ関数の3つの要件により、実際には、テキスト、ファイル、および一般的に任意の情報ブロックの固定長識別子になります。 さらに、これらの識別子:

  1. 広大な現代情報社会全体でユニーク。
  2. 元に戻すことはできません。つまり、元の文書の内容については何も明らかにしません。
これにより、タスクでハッシュ関数を使用できます。

これまで、ハッシュ関数の圧倒的多数はMD5、SHA-1、SHA-256アルゴリズムによって「引き継がれ」、また、我が国ではGOST R 34.11-94も事実上FAPSI / FSBによる暗号認証製品の独占者です。 もちろん、狭いコミュニティでのみ一般的である他の多くのあまり知られていないアルゴリズムがあります(たとえば、RIPEMD、TIGER、PANAMAなど)



どうしたの?



かなり長い間(1990年代半ば以降)、暗号化機能の発信世代は非常に強力であると考えられていました。 MD5とSHA-1はどちらも1990年代初期にハッキングされたMD4アルゴリズムで具体化されたアイデアに基づいていましたが、設計段階で改善が行われました(つまり、ハッシュ値の計算でパス(ラウンド)の数を増やし、より徹底的に適用された数学的操作の開発)は、2004年まで家族はあらゆる種類の攻撃に対して耐性があると考えられていたという事実につながりました。



2004年8月16日、晴天からの雷が鳴りました。中国の研究者グループ(X. Wangが率いる)が科学出版物eprint.iacr.orgのオープンサーバーで公開し、MD4、MD5、RIPEMD、HAVALについての単一の発言について説明していませんでしたこれらの入力テキストの選択には1時間5分かかりました 。 それは爆発でした。 最強の暗号作成者は再びMD5 / SHA-1ファミリーに注目し、そしてもちろん、画期的な記事で与えられた例に注目しました。 特定の規則性が明確になり、すぐに同様の暗号への衝突を構築するための方法論的な装置が構築されました。これは、2004年から2006年の間に改善され、通常のパーソナルコンピューター上で1秒未満の速度に達し、衝突を引き起こすいくつかのテキストを生成しました。 今日、それらは明らかにハッキングされています(ただし、「衝突」クラスの攻撃のためだけです!) MD4、MD5、RIPEMD、HAVAL、SHA-0。



SHA-1では、状況は多少異なります。 MD5やRIPEMD-160よりもやや複雑な数学的変換の構造は、攻撃実装のオープンサークル(これまでに同じ中国人によって提案された)でこれまでに知られている2 ^ 63演算の最高の計算の複雑さを制限します。 これは客観的にたくさんあります。 コンピューター技術の生産性の指数関数的な成長を考慮しても、今後20年間で1台のコンピューターが少なくとも1つの衝突を選択できるとは考えられません。 ただし、分散プロジェクトがあることを忘れないでください。 健全な野望(SHA-1の最初の人為的な衝突を取得しますが、これは公式には米国の暗号ハッシュ標準です)は、グラーツ大学(オーストリア)の研究者にサーバーboinc.iaik.tugraz.atでの分散検索を開始するよう促しました。次の5年



そして最後に、この手法を議論する際に常に提起される問題は、 GOST R 34.11-94この攻撃に対して脆弱かどうかです。 答えはノーです。 国内の暗号規格では、ハッシュ中にソーステキストのブロックを「混練」する別のスキームを使用しているため、これまでのところ、GOSTについて説明した方法は適用されていません。 最も有名な攻撃(2008年にメディアでいくつかのうわさを引き起こした)は、同じグラーツの研究者によって提案され、衝突を選択するプロセスを2 ^ 23倍改善します。 それは異なる原理に基づいており、 2 ^ 105演算の計算の複雑さを持っています 。これは、分散プロジェクトやスーパーコンピューターにとっても現実からはほど遠いです。



結果



「乾燥残留物」には何がありますか?


暗号化アルゴリズムMD4、MD5、SHA-1、RIPEMD、HAVALは、 衝突生成攻撃に関して独自に侵害されています。 しかし、(!)幸いなことに、ハッシュ関数の逆転に対する物理的に実行可能な単一の攻撃(MD4であっても)はこれまでに公開されていません



これは何を脅かすのですか?


攻撃者は、同じハッシュ値を持つ2つの異なるドキュメントを作成できます(一方、どの値になるかを正確に「制御」する機能はありません)。 これは、既存の外部ドキュメント/テキスト/ファイルに対して「ダブル」作成できないことを意味します。 彼は、自分で最初の文書と2番目の文書の両方を作成できる場合にのみ、状況を制御します。



攻撃者は...?


今日は何を使用しますか?



  1. 長い間知られているよく知られたハッシュアルゴリズムのうち、今日、 GOST R 34.11-94 (FAPSIの開発者、1995)およびTIGER (開発者-世界的に有名な暗号学者E. BihamおよびR. Anderson、1995)に対する主張はありません。
  2. 米国標準化機構NIST(2001-2002)の新世代のSHAアルゴリズムには、 SHA-224、SHA-256、SHA-384、SHA-512 (出力値のビット深度から)の新しい番号が付けられ、一般的なコード名SHA-2で組み合わされることもあります。 アルゴリズムの暗号化変換の構造は異なります。これまでのところ、アルゴリズムに対する攻撃に関する情報は、第1種または第2種のいずれについても受信されていません。
  3. これに満足せず、NISTは2007年に第3世代のハッシュ標準SHA-3の公開入札を開始しました(2000年に新しいAESブロック暗号化標準が選択された方法を原則で正確に繰り返しています)。 現在、競争の第1段階のみが進行中であり、世界中から51のアルゴリズムが参加できます。
  4. 最後に、原則として、検証のために同時に 2つ以上の脆弱な機能を使用することを禁止しません。 同じMD5量と同じSHA-1量を同時に生成するドキュメントのペアを作成することは現在不可能です。



All Articles