シャの転写。 MD5 ハッシュを復号化する方法: 最も簡単な方法。 なぜハッシュ復号化が必要なのでしょうか?

09.12.2020

MD5 は特殊なもので、かなり昔、1991 年に登場しました。 これはメッセージ ダイジェスト アルゴリズムの略で、R. L. リベスト教授によって作成されました。彼の研究の本質は、その助けを借りてあらゆることを可能にすることです。 情報は暗号化されています特定のデータのチェックサムである 128 ビット ハッシュ形式に従っています。 同時に、これほどの金額を偽造するのは非常に複雑なプロセスです。 通常、このメカニズムは、すでに暗号化されているデータの信頼性を検証するために使用されます。 ここで紹介するツールを使用すると、多くの知識がなくても、迅速に あらゆるテキストを完全に暗号化する。 このツールの動作も同様です。テキストをフィールドに貼り付けてボタンを押すだけで、テキストのハッシュ和が得られます。 当社のサービスを使用すると、テキスト表現を含むあらゆる情報を暗号化できます。 これは、あらゆるテキスト、通信、パスワードなどにすることができます。 疑いのない利点は、 このアルゴリズム開発者がそのような機能を提供していないため、復号化できません。 したがって、この方法は本当にあなたの情報を非常によく保護できると自信を持って言えます。

MD5 アルゴリズムは他にどこで使用できますか?

このアルゴリズムを使用すると、情報に対してかなり安全な識別子を作成できるという意見があります。 この機能はさまざまな分野で広く使用されています。 たとえば、ファイルの MD5 合計を比較することにより、コンピュータ上の重複ファイルを見つけることが可能になります。 この場合、ファイルの内容自体は使用されず、単に量がチェックされるだけです。 このアルゴリズムのそのような使用の顕著な例は、Windows と Linux の両方で非常に普及していた dupliFinder プログラムと考えることができます。 さらに、MD5 アルゴリズムは、インターネットからダウンロードされたファイルの整合性をチェックするためによく使用されます。 とても簡単に動作します。 インターネット上に自分のファイルをダウンロードするためのリンクを投稿する人は、説明にこのファイルの MD5 量を含めます。 そして、それをダウンロードした人は、申告した金額がダウンロード後に受け取った金額と一致するかどうかを確認します。

以前は、多くの Linux ベースのオペレーティング システムがこのアルゴリズムを使用して、ユーザー パスワードを暗号化された形式で保存していました。 したがって、パスワードを知っているのはユーザー本人だけであることが判明し、システムは MD5 量を使用してパスワードをチェックしました。 現在では多くの新しい暗号化方式が利用可能になっていますが、この暗号化方式は依然として多くのシステムで使用されています。 私たちのテキストツールも同じ方法を使用しています。 ほとんどのセキュリティ専門家は、MD5 アルゴリズムを使用して暗号化されたパスワードはいかなる方法でも復号化できないことに同意しています。 そして、それをハッキングする方法は 1 つだけです。単純に単語を検索することです。

ここ数十年で、機密保持と情報セキュリティの問題がますます重要になってきています。 そのため、最新のアルゴリズムを使用する試みが常に行われています。 そのような方法の 1 つは、MD5 と呼ばれるハッシュ アルゴリズムを使用することです。 MD5 ハッシュを復号化する方法について説明します。 確かに、特にパスワードやその他のクラッキングに関する知識を得ることを望んでいます。 機密情報このようなプロセスは困難であり、違法であるため、当てにする価値はありません。

MD5ハッシュとは何ですか?

一般に、ハッシュとは、特別なアルゴリズムを使用して、受信データを 128 ビット ベースで表される特定の長さの文字列に変換することを意味します。

つまり、このような処理は暗号化とは言えません。 同様に、ここでは情報を提示する他の方法が使用されているため、MD5 ハッシュの復号化について話すことはできません。 さらに、 この場合特別な計算システムが使用され、復号化の試みはすべて無効になります。

MD5 ハッシュを復号化する方法: 一般原則

せいぜい、次の 3 つの主な方法を使用して目的のコンテンツを選択することについてのみ説明できます。

  • 辞書を使う。
  • 「レインボーテーブル」の適用。
  • ブルータスメソッド。

初期の MDA5 ハッシュ テクノロジは、Ronald L. Rivest 教授の指導の下で開発されました。 それ以来、オンライン鍵作成のための暗号化手法の 1 つとして広く使用されています。 電子署名、ファイルシステムの整合性のチェック、Web識別子の作成など。 また、直接アルゴリズム手法を使用して MD5 ハッシュを復号化することは (可能ではありますが) 非常に難しいと考えられています。16 進数表現の文字の 1 つを変更するだけでも、他のすべての文字が自動的に変更されるためです。 これで残るのは一般にブルート(力ずくによる介入)と呼ばれる方法のみとなる。 それにもかかわらず、最も単純な組み合わせは元の形に戻すことができます。

オンラインリソースの使用

復号化の必要性が高まった場合は、まず、サービスを提供している多くのインターネット リソースのサービスを使用できます。 一般的に、動作原理は、ユーザーが Web サイト上の特別な行に復号化する組み合わせを入力し、その後選択プロセスをアクティブにすることです。

初期情報が何らかの手段を使用してエンコードされた場合 PHP言語、場合によっては、オンライン サービスでは、base_64 encode/base_64 decode コマンドを組み合わせて使用​​することがあります。 いずれの場合も、この技術では、コード化された結果の例を保存したデータベースと比較して、希望の組み合わせで記号、数字、または文字を選択するだけです。

あなた自身はどうでしょうか?

一部のユーザーは、自分でハッシュ コードを復号化しようとします。 しかし、結局のところ、これを行うことには非常に問題があります。 この手順を簡素化するには、焦点を絞ったユーティリティを使用することをお勧めします。その中で、次のプログラムは明らかに際立っています。

  • パスワードプロ。
  • ジョン・ザ・リッパー。
  • カインとアベル。
  • 「スターリッツ」など。

最初の 2 つのプログラムは、1212121 のような基本的な組み合わせを置き換えることによって最も単純な組み合わせを計算するように設計されています。

3 つ目は MD5 ハッシュを復号化できるようですが、処理が遅すぎます。 ただし、初心者には理解できない可能性が高いですが、テーブル ジェネレーターが付属しているという利点があります。

「Stirlitz」は非常に興味深いアプリケーションですが、使用する計算アルゴリズムの数が非常に限られており、その中で最も重要なものは BtoA、uuencode、base64、xxencode、binhex です。

どうしてもという場合は、BarsWF ブルート ユーティリティを使用する必要があります。これは既知のユーティリティの中で最も高速で、ほとんどの場合、MD5 ハッシュを復号化できます (パスワードがあれば、必要な形式にすることもできます)。 1 秒あたり数十億回のハッシュ計算を実行します。 ただし、これらすべてを使用しても、 ソフトウェアメインのアルゴリズムに加えて、MD4 または IM を使用して MDA5 エンコードを同時に実行できるという事実も考慮する必要があります。

しかし、これだけのことを行っても、ハッシュにはまだ多くの穴が見つかります。 多くの専門家は、たとえ 128 ビットベースであってもコードの長さは短すぎるため、ソフトウェアツールの開発と最新のプロセッサシステムのコンピューティング能力の向上により、復号プロセスはますます少なくなっていると考えています。労働集約的であるため、そのようなツールのさらなる開発と使用はすでに完全に不適切であるように見えます。

結論

MD5 ハッシュは、上記のツールを使用するだけでなく復号化できることも付け加えておきます。 インターネットを徹底的に調べてみると、そのようなプログラムがたくさん見つかります。 問題は、そのようなことをする必要があるのか​​ということです。 私は思う 平均的なユーザーにとってどれでも コンピュータシステムそのような知識は役に立ちそうにありません。

たまたま、玄関のドアの暗証番号を忘れて、そこに立って、自分より記憶力の高い人を待っていることがあります。 科学者は最高の記憶力を持っていますが。 彼らは、新しい知識を得るためにかかとをアイロンで焼かれたときのことを今でも覚えています。 そうでなければ、MD5 復号化のような恐ろしいことを思いつくはずはありません。 そしてその前に、彼らはそれを暗号化することにも成功しました。

MD5とは何ですか?

MD5 は 128 ビット ハッシュ アルゴリズムの 1 つです。 ハッシュ化とは、入力データを特定のアルゴリズムを使用して一定の長さのビット列に変換することを意味します。 この場合、計算中に得られた結果は 16 進数で表示されます。 これは、ハッシュ、ハッシュサム、またはハッシュコードと呼ばれます。

ハッシュ プロセスは、プログラミングや Web 業界で広く使用されています。 主に独自の価値を創造するために 連想配列、識別子。

ハッシュコードの範囲:

  • 電子署名の作成。
  • パスワードをセキュリティ システム データベースに保存する。
  • オンラインで一意のキーを作成する最新の暗号化の一環として。
  • PC ファイル システム要素の信頼性と整合性を検証します。

ハッシュ標準としての MD5 は、指定された値から一意のハッシュ コードを作成し、その信頼性を検証するために 1991 年に開発されました。

md5sum ユーティリティは、MD5 アルゴリズムを使用して特定のファイルのデータをハッシュするように設計されており、文字列を返します。 16 進数の 32 個の数字で構成されます (016f8e458c8f89ef75fa7a78265a0025)。

つまり、このアルゴリズムに基づいて動作する関数から取得されたハッシュは、16 バイト (128) ビットの文字列を生成します。 そして、この文字列には 16 個の 16 進数が含まれています。 この場合、少なくとも 1 つの文字を変更すると、文字列の他のすべてのビットの値が取り消し不能に変更されます。

MD5 の信頼性の問題

MD5 のこのような特性により、無敵性とデータ保存が 100% 保証されるはずです。 しかし、これでも十分ではないことが判明しました。 研究の過程で、科学者たちは、当時すでに広く普及していたこのアルゴリズムに多くの穴と脆弱性があることを特定しました。 MD5 のセキュリティが弱い主な理由は、暗号化中の衝突の検出が比較的簡単であることです。

衝突は、異なる入力値に対してハッシュ関数の計算で同じ結果が得られる可能性として理解されます。

簡単に言えば、衝突が見つかる確率が高くなるほど、使用されるアルゴリズムの信頼性は低くなります。 より信頼性の高いハッシュ関数を使用して暗号化すると、衝突が見つかる確率は実質的に 0 に減少します。

つまり、MD5 パスワードを解読できる可能性が高いことが、このアルゴリズムの使用を拒否する主な理由です。 多くの暗号学者 ( データ暗号化のスペシャリスト) MD5 の信頼性が低いのは、結果として得られるハッシュ コードの長さが短いことが原因であると考えられます。

ハッシュアルゴリズムの適用範囲:

  • インターネット経由で受信したファイルの整合性のチェック - 多くのソフトウェア インストール パッケージにはハッシュ コードが装備されています。 アプリケーションがアクティブ化されると、その値が開発者のデータベースにある値と比較されます。
  • ファイル システム内の重複ファイルの検索 - 各ファイルには独自のハッシュ コードがあります。 特別なアプリケーションスキャン ファイルシステムコンピューターですべての要素のハッシュを比較します。 一致が検出された場合、ユーティリティはユーザーに通知するか、重複を削除します。 そのようなプログラムの 1 つが Duplifinder です。
  • パスワードハッシュの場合 – オペレーティングファミリー内 UNIXシステムシステムの各ユーザーは独自の一意のパスワードを持ち、MD5 ベースのハッシュを使用して保護されています。 一部の Linux ベースのシステムでも、このパスワード暗号化方式が使用されます。

MD5 ハッシュ コードをデコードするためのツールの概要

コンピューターや破損したデータベースを操作する場合、MD5 で暗号化されたハッシュ値をデコードする必要がある場合があります。

これをオンラインで行う機会を提供する専門リソースを使用するのが最も便利です。

  • md5.web-max.ca – このサービスシンプルで直感的なインターフェイスを備えています。 デコードされた値を取得するには、ハッシュを入力し、検証キャプチャ フィールドに記入する必要があります。
  • md5decrypter.com – 同様のサービス。
  • msurf.ru – このリソースにはシンプルなロシア語のインターフェイスがあります。 この機能により、ハッシュ コード値を復号化するだけでなく、ハッシュ コード値を作成することもできます。

上に示した図に表示されているデコード値を見ると、デコード プロセスではほとんど結果が得られないことがわかります。 これらのリソースは、最も単純な単語のトランスクリプトを含む 1 つ以上の相互接続されたデータベースです。

同時に、パスワードの「admin」などの共通部分の MD5 ハッシュ デコード データも 1 つのデータベースでのみ見つかりました。 したがって、より複雑で長い文字の組み合わせで構成されるパスワード ハッシュを復号化することはほとんど不可能です。

MD5 ハッシュの生成は一方向のプロセスです。 したがって、元の意味を逆に解読することを意味するものではありません。

MD5 を使用する場合のセキュリティの基本

このコーディング標準は、アプリケーション プログラミングだけでなく、Web プログラミングでも最も一般的なデータ保護方法の 1 つです。 したがって、md5 ハッシュを意図的なハッキングから保護することは不必要ではありません。

パスワード ハッシュのセキュリティを確保する主な方法は、「ソルト」を使用することです。 これは、パスワードにいくつかのランダムな文字を追加し、その結果をハッシュすることに基づいています。

多くのプログラミング言語は、このために特別なクラスと関数を使用します。 サーバーサイドプログラミング言語も例外ではありません。

いくつかの関数を使用して、php で MD5 ハッシュ コードを作成できます。

  • md5() – 値「salt」をパラメータの 1 つとして受け取ります。
  • crypt() - 前の関数とは異なり、この関数はソルト値の生成を含むプロセス全体を完全に自動化します。

その構文は次のとおりです。

文字列暗号化 (文字列 $str [, 文字列 $salt ])

使用例:

$hash = crypt("パスワード")

PHP で md5() 関数を使用する場合、ソルト値を設定するために生成メソッドが使用されます。 乱数。 たとえば、 rand() :

ソルトの使用に加えて、MD5 ハッシュを保護するために他のいくつかの方法が開発されています。

現代のコンピュータ ユーザーは、古いシステムを最初に使用したユーザーよりもはるかに高度ですが、誰もがハッシュ復号化とは何か、またその用途を (オンラインでも) 知っているわけではありません。 結局のところ、すべては一見したよりもはるかに単純です。

ハッシュ暗号化とは何ですか?

公式の定義に基づくと、ハッシュは、暗号化された形式の一部のデータ (機密を含む) に対応する固定長の文字列です。

この技術は主に、MD5、NTLM、SHA-160 アルゴリズムおよびそれらに基づく派生アルゴリズムを使用したログインとパスワードに適用されます。 最も一般的なのは MD5 アルゴリズムです。 これで暗号化されたデータ、特に文字と数字だけでなく、 特殊文字、標準的な総当たり方式を使用して復号化することは絶望的な問題です (ただし、一部のプログラムやオンライン サービスは短いパスワードを復号化できます)。

なぜハッシュ復号化が必要なのでしょうか?

多くのユーザーは、これがどれほど必要なのかと当然疑問に思うかもしれません。 ただし、このアプローチの間違いは、一部のサービス、サービス、またはプログラムに必要なパスワードを暗号化後に忘れることができるため、部外者がいわば純粋な形でそれを認識できない可能性があることを理解していないことです。

場合によっては、パスワードやログインを回復できない場合があります。 暗号化の基本を見ると、ここでハッシュ復号化が必要になります。 基本的に、この手順は、変更されたデータから元の組み合わせを再構築することです。

このプロセスは非常に手間がかかります。 たとえば、「person」という単語の場合、MD5 アルゴリズムを使用して暗号化された組み合わせは次のようになります。 そして、これらは元の単語ではわずか 7 文字です。 数字や特殊文字を含む長いパスワード、さらには大文字と小文字を区別して入力することについてはどうすればよいでしょうか。 ただし、ほとんどの組み合わせの巨大なデータベースを含む一部のアプリケーションやオンライン サービスは復号化を実行できます。 ただし、常に成功するわけではありません (すべては最初の組み合わせに依存します)。ただし、強引な手法を使用しても、ほとんどの場合、その有効性は否定できません。

パスワードハッシュ復号化プログラム

最も重要なものの 1 つ 強力なプログラム英国のプログラマーによるオンライン アプリケーション Hash Killer (「Hash Killer」) は正当に考慮されています。 そのデータベースには、約 4,370 万の既知のペアの組み合わせが含まれています。

唯一の欠点は、キリル文字を含むパスワードがデフォルトのエンコードでは正しく表示されないことです。 しかし、ラテン語でのハッシュの解読は瞬時に行われると考えられています。 統計によると、5 つの単純なパスワードのうち 3 つを解読するのにかかるおおよその時間は 0.5 秒です。

さらに、開発者の公式ウェブサイトでは、あらゆる種類のコンテストが常に開催されており、全員が参加します。 そして、結局のところ、それらは時にはかなり型破りな解決策を生み出すことができるのです。

同様に興味深いのは、John The Ripper ユーティリティを使用したハッシュ復号です。 非常に高速に動作しますが、主な欠点は、プログラムのすべての機能が以下からのみ使用できることです。 コマンドライン、多くのユーザーを怖がらせるだけです。

オンライン復号化サービス

基本的にはインストールしないでください ソフトウェア、オンライン サービスを使用して、パスワードの NT ハッシュやその他の種類のデータを復号化することもできます。

このようなオンライン リソースは必ずしも無料ではありません。 さらに、それらの多くには、私たちが望むほど大規模なデータベースが含まれていません。 しかし、ほとんどの場合、MD5 や MySQL を使用した暗号化などのアルゴリズムを簡単な方法で再作成できます。 特に、これは数字で構成される最も単純な組み合わせに当てはまります。

ただし、このようなサービスは必ずしも復号化方法を自動的に決定するとは限らないため、誤解しないでください。 つまり、base64 エンコード アルゴリズムを使用して暗号化が実行された場合、ユーザーは適切なデコード パラメータを自分で設定する必要があります。 さらに、オンラインでハッシュを復号化することがまったく不可能な場合、不明なエンコードが使用される場合があることを忘れないでください。

あとがきの代わりに

一番多いものは何ですか 最良の解決策、言うのは難しいです。 一部のユーザーは、binhex、base64、BtoA、xxencode、uuencode などのアルゴリズムに基づいてキリル文字で構成されるパスワードを復号化するために主に設計された Stirlitz アプリケーションをインストールすることを推奨しています。ただし、この場合でも、成功を完全に保証することはできません。 。

最後に、デコードを開始する前に、まず組み合わせ自体に注意を払う必要があります。 読めない文字のように見える場合は、復号化は必要ない可能性があります (エンコードを変更するだけで済みます)。 それ以外の場合、そのようなアクションが本当に必要な場合は、助けに頼った方がよいでしょう 特別なユーティリティ上で説明したように、オンライン ハッシュ復号化を提供するインターネット リソースは使用しません。

多くの場合、手持ちのハッシュだけを使ってパスワードを見つける必要があります。 コンピュータを使用してオプションを並べ替えることもできますが、既存のデータベースを使用した方がはるかに高速です。 公共データベースにも何千万ものハッシュとパスワードのペアが含まれており、クラウド サービス経由でそれらを検索するには数秒かかります。

世界中には数ゼタバイトのデジタル データがありますが、この情報のすべてが固有であるわけではありません。繰り返しは数十億のメディアとサーバーに分散しています。 データの種類に関係なく、データを扱うには同じ基本的な問題を解決する必要があります。 これは、繰り返しの部分的な削除 (重複排除)、整合性チェック、増分作成による冗長性の削減です。 バックアップコピーそしてユーザー認証。 もちろん、最後の側面が最も興味深いですが、これらの技術はすべて、ハッシュを使用した一般的なデータ処理方法に基づいています。 がある クラウドサービスこれにより、よく知られた目的でこの手順をより高速に使用できるようになります。

一見すると奇妙に思えますが、 さまざまなタスク一般的な手順は、チェックサムまたはハッシュ (固定長のビット シーケンス) を計算および比較するために使用されます。 ただし、この方法は本当に普遍的です。 チェックサム暗号化ではメッセージと呼ばれる、ファイル、キー、パスワード、その他のデータの一種のデジタル指紋として機能します。 ハッシュ (またはダイジェスト) を使用すると、それらを相互に比較し、変更を迅速に検出し、安全なアクセス チェックを行うことができます。 たとえば、ハッシュを使用すると、入力したパスワードをクリア テキストで送信せずに、その一貫性をチェックできます。

数学的には、このプロセスはハッシュ アルゴリズムの 1 つ、つまり元のメッセージが分割されたデータ ブロックの反復変換によって実行されます。 入力は短いパスワードから巨大なデータベースまで何でも可能です。 すべてのブロックは、固定サイズのダイジェストが取得されるまで、周期的にゼロが埋め込まれるか、指定された長さに切り詰められます。

ハッシュは通常 16 進数で書かれます。 これにより、視覚的に比較するのがはるかに便利になり、記録はバイナリのものより 4 倍短くなります。 最短のハッシュは、Adler-32、CRC32、およびダイジェスト長 32 ビットのその他のアルゴリズムを使用して取得されます。 最も長いものは SHA-512 用です。 これらに加えて、他にも十数の人気のあるハッシュ関数があり、それらのほとんどは、160、224、256、および 384 ビットといっ​​た中間の長さのダイジェストを計算できます。 ダイジェストが長ければ長いほど、ハッシュ関数が生成できるさまざまなバリアントが増えるため、より長いハッシュ長の関数を作成する試みが続けられます。

ハッシュ関数が処理できるソース データの最大量は、アルゴリズムでの表現形式によって決まります。 通常、これらは 64 ビット整数として書き込まれるため、通常の制限は 264 ビットから 1、つまり 2 エクサバイトを引いた値になります。 このような制限は、非常に大規模なデータセンターであっても、まだ実際的な意味を持ちません。

独自性が信頼性の鍵となる

ハッシュの一意性はその重要な特性の 1 つであり、暗号化システムの暗号強度を決定します。 実際のところ、考えられるパスワードのオプションの数は理論的には無限ですが、ハッシュの数は、たとえ非常に大きいとしても常に有限です。 ハッシュ関数のダイジェストは、ある程度までしか固有ではありません。 正確に言えば、2 の累乗です。 たとえば、CRC32 アルゴリズムは 232 個のオプションのみのセットを生成するため、繰り返しを避けるのは困難です。 他のほとんどの関数は 128 ビットまたは 160 ビットのダイジェストを使用するため、一意のハッシュの数がそれぞれ 2'28 と 2,160 に大幅に増加します。

異なるソース データ (パスワードを含む) からのハッシュの一致は、衝突と呼ばれます。 これはランダム (大量のデータで見つかる) である場合もあれば、攻撃目的で使用される疑似ランダムである場合もあります。 衝突効果は、さまざまな暗号化システム、特に認証プロトコルをハッキングするための基礎となります。 これらはすべて、まず入力されたパスワードまたはキーのハッシュを計算し、比較のためにこのダイジェストを送信し、多くの場合、ある段階で疑似ランダム データの一部と混合したり、追加の暗号化アルゴリズムを使用してセキュリティを強化します。 パスワード自体はどこにも保存されず、ダイジェストのみが送信され、比較されます。 ここで重要なことは、すべてのパスワードを同じ関数でハッシュした後、出力は常に同じ、以前に知られていたサイズのダイジェストになるということです。

擬似リバース

ハッシュは一方向関数であるため、ソルトをクリアしたとしても逆変換を実行してハッシュから直接パスワードを取得することは原理的に不可能です。 結果として得られるダイジェストを見ても、元のデータの量もその種類もわかりません。 ただし、同じハッシュを使用してパスワードを生成することで、同様の問題を解決することができます。 衝突効果により、タスクは簡素化されます。実際のパスワードは決して見つからないかもしれませんが、同じアルゴリズムを使用してハッシュ化した後、必要なダイジェストを与える完全に異なるパスワードが見つかります。

計算を最適化する手法は文字通り毎年登場します。 これらは、HashClash、Distributed Rainbow Table Generator、およびその他の国際的な暗号コンピューティング プロジェクトのチームによって実行されます。 その結果、一般的なパスワードのリストに含まれる印刷可能な文字またはバリアントの短い組み合わせごとに、ハッシュがすでに計算されています。 完全に一致するものが見つかるまで、インターセプトされたものとすぐに比較できます。

以前は、これには数週間から数か月の CPU 時間が必要でしたが、マルチコア プロセッサと CUDA と OpenCL をサポートするプログラムのブルート フォースのおかげで、近年では数時間に短縮されました。 管理者はダウンタイム中にサーバーに表計算をロードし、誰かが Amazon EC2 の仮想クラスターをレンタルします。

Googleハッシュ検索

すべてのサービスがハッシュを使用したパスワード検索サービスを無料で提供できるわけではありません。 どこかで登録が必要で、大量の広告が掲載されており、多くのサイトでは有料のハッキング サービスの広告も見つけることができます。 実際に強力なクラスターを使用してロードし、送信されたハッシュをジョブ キューに入れる人もいますが、普通の悪党もいます。 彼らはパフォーマンスします 無料検索潜在的な顧客の無知を利用して、お金のために。

正直なサービスをここで宣伝する代わりに、別のアプローチを使用することをお勧めします。人気のあるハッシュとパスワードのペアを見つけることです。 検索エンジン。 彼らのスパイダー ロボットは毎日ウェブをくまなく調べて、次のような新しいデータを収集します。 最新の投稿レインボーテーブルから。


まず、ハッシュを書き込むだけです 検索バーグーグル。 辞書のパスワードがそれに対応する場合、そのパスワードは (原則として) すでに最初のページにある検索結果の中に表示されます。 単一のハッシュは手動で Google 検索できますが、大きなリストは BozoCrack スクリプトを使用した方が便利です。

検索 XOR 計算

一般的なハッシュ アルゴリズムは非常に高速に動作するため、ほぼ全員のハッシュとパスワードのペアを作成できるようになりました。 可能なオプション短いダイジェストで機能します。 同時に、ハッシュ長が 128 ビット以上の関数にはアルゴリズム自体またはその特定の実装に欠陥があり、ハッキングが大幅に簡素化されます。

90 年代に、Ronald Rivest によって作成された MD5 アルゴリズムが非常に人気になりました。 Web サイトでユーザーを認証するときや、クライアント アプリケーション サーバーに接続するときに広く使用されています。 しかし、さらなる研究により、このアルゴリズムの信頼性が十分ではないことが判明しました。 特に、擬似ランダム衝突攻撃に対して脆弱です。 言い換えれば、既知のハッシュと正確に一致する別のデータ シーケンスを意図的に作成することが可能です。

メッセージ ダイジェストは暗号化で広く使用されているため、今日実際に MD5 アルゴリズムを使用すると深刻な問題が発生します。 たとえば、このような攻撃を使用すると、偽装することができます。 デジタル証明書 x.509。 SSL 証明書を偽造して、攻撃者が偽の証明書を信頼できるルート証明書 (CA) として偽装することも可能です。 さらに、信頼できる証明書のほとんどのセットでは、署名にまだ MD5 アルゴリズムを使用している証明書を簡単に見つけることができます。 したがって、インフラ全体が脆弱になる 公開鍵(PKI) などの攻撃に対応します。

過酷なブルート フォース攻撃は、非常に複雑なパスワード (ランダムな文字の大規模なセットで構成される) と、まだ発見されていない長いダイジェスト (160 ビットから) を含むハッシュ関数の場合にのみ実行する必要があります。重大な欠陥がある。 現在、オンライン サービスを使用すると、膨大な量の短いパスワードや辞書パスワードを数秒で開くことができます。

オンラインでのハッシュ復号化

これまでのところ、オンライン サービスとレインボー テーブルを使用してすべてのハッシュとパスワードのペアを見つけることができるわけではありません。 ただし、短いダイジェスト機能はすでに無効になっており、短いパスワードや辞書パスワードは SHA-160 ハッシュを使用しても簡単に検出できます。 特に印象的なのは、Google を使用したダイジェストを使用したパスワードの即時検索です。 これは最もシンプル、最速、そして完全に無料のオプションです。