PHPウェブサイト開発で使用する暗号化技術はMD5ですが、MD5暗号化を使用するアルゴリズムは解読できますか、それともMD5暗号化は元に戻すことができますか?まず、一般的に使用されている 2 つの PHP データ暗号化テクノロジを見てみましょう。
PHPデータ暗号化テクノロジー
Md5()およびSha1()暗号化アルゴリズムは一方向であり、元の平文データを取得する逆関数はありません
アルゴリズム呼び出し:
string md5 ( string $str [, bool $raw_output = false ] )
string Sha1 ( string $str [, bool $raw_output = false ] )
パラメータ
str
元の文字列。
raw_output
オプションの raw_output が TRUE に設定されている場合、MD5 メッセージ ダイジェストは長さ 16 バイトの生のバイナリ形式で返されます。
戻り値
MD5() は、ハッシュ値を 32 文字の 16 進数として返します。
Sha1() は、ハッシュ値を 40 文字の 16 進数として返します。
$p = "123456";
エコーmd5($ p);
?>
その出力は次のとおりです:
e10adc3949ba59abbe56e057f20 f 883e
ただし、md5() を使用しますこのような関数は非常に安全ではないため、Baidu で md5 復号化を検索すると、復号化 Web サイトが見つかります:
上記のように md5() 関数を直接使用するのは安全でないことがわかります。 md5 アルゴリズムは不可逆的です が、同じ文字 文字列に対して計算される結果は一意であるため、一部の人々は md5 暗号化システムを解読するために「辞書攻撃」を使用する可能性があります。これは総当りの復号化ですが、ほとんどのシステムのユーザー パスワードはそれほど長くないため、MD5 によってエンコードされた最終データは一部の Web サイトを通じて解読できるため、非常に効果的です。 明らかに、これはクラックされています。md5() アルゴリズムを直接使用できるほど複雑ではありません。その場合、コードは次のように変更されます。
= " 123456"
;
エコー
md5(
md5) ($p ).md5
($ p));?> 13671ebd7cd2a6dクラックするにはウェブサイトにアクセスしてください: 明らかに、彼の結果は間違っています。パスワードは 123456 であり、ゼロではありません。
md5() 関数に基づいた多層 md5() アルゴリズムを通じて暗号化できます。これは一方向であるためです。実際、Web サイトがなぜクラックされるのか疑問に思われるかもしれません。それらは常にさまざまなコードとパスワードを保存し、それらを照合して最終的にパスワードを取得します。 具体的な
php md5復号化コード共有(インターフェース付き、個人テストに利用可能)
関連記事:php md5は復号化できますか?
php md5暗号化および復号化アルゴリズムとツール(コード付き)
以上がphp md5暗号化は解読できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。