スポンサーリンク

このサイトについて

MD5というハッシュ関数によりハッシュ化された文字列をデータベースに蓄積し、逆検索を行えるようにしたサイトです。
データベースにMD5ハッシュっぽい文字列があるけど、元が何だったか忘れてしまった。。のようなときに使ってみると逆変換が可能かもしれません。

当サイトで管理するハッシュ化前の文字列の仕様について

0-9a-zの半角36文字を使用する。
日本語および大文字の英字は含まれません。

データベースについて

MySQL5.7を使用しています。
MD5でハッシュ化された文字列は必ず32桁の16進数のため、1,2文字目のパターンを考えると16^2で256通りとなります。
MD5の変換の前後を辞書として管理するにあたって1つのデータベースでは難しいと思ったので先頭2文字のパターンにちなんで256個のデータベースを作成しています。
各データベース内のテーブルも同様にハッシュ化された文字列の3,4文字目を元に256テーブル作成しています。テーブルにはプレフィックスとして「md5_」がついています。

例)MD5ハッシュ化前の文字列が「abcd」の場合
ハッシュ化された文字列は「e2fc714c4727ee9395f324cd2e7f331f」です。
1,2文字目は「e2」、3,4文字目は「fc」なのでmd5datae2というデータベースのmd5_fcというテーブルににテーブル名に格納されています。なお、1~4文字目はテーブル内のレコードで同一となるため除外した28文字「714c4727ee9395f324cd2e7f331f」が格納されています。

1テーブルで管理した場合とどちらが速いかの検証は行っていません。

現在、ハッシュ化前の文字列が4桁以下のものを網羅したデータベースを公開しています。
ダウンロードはこちらからお願いします。

タイトルとURLをコピーしました