MD5 ハッシュによるデータの暗号化と復号化
パスワードや機密データの暗号化は、データ プライバシーを維持するために重要です。一般的な方法の 1 つは、入力の一意の固定長フィンガープリントを生成する MD5 ハッシュ関数を使用することです。ただし、ハッシュされたデータを復号化する機能を考慮すると、懸念が生じます。
MD5 ハッシュについて
MD5 は 128 ビット (16 バイト) のハッシュを生成します。元の入力に復号化することは不可能です。ハッシュ値は一方向関数であるため、ソース データの取得は計算上不可能です。試行される復号化方法には、大規模なブルート フォース ハッキングが含まれることが多く、これは実用的でも倫理的でもありません。
代替暗号化アプローチ
実用的な代替案として、次のような安全な暗号化方法を使用することを検討してください。暗号化キーとアルゴリズム。提供されているコード例は、ランダムに生成されたキーを使用した AES-256 暗号化を組み込んだカスタム暗号化および復号化ソリューションを示しています。このアプローチは、より強力で可逆的な暗号化メカニズムを提供します。
$input = "SmackFactory"; $encrypted = encryptIt( $input ); $decrypted = decryptIt( $encrypted ); echo $encrypted . '<br />' . $decrypted; function encryptIt( $q ) { $cryptKey = 'qJB0rGtIn5UB1xG03efyCp'; $qEncoded = base64_encode( mcrypt_encrypt( MCRYPT_RIJNDAEL_256, md5( $cryptKey ), $q, MCRYPT_MODE_CBC, md5( md5( $cryptKey ) ) ) ); return( $qEncoded ); } function decryptIt( $q ) { $cryptKey = 'qJB0rGtIn5UB1xG03efyCp'; $qDecoded = rtrim( mcrypt_decrypt( MCRYPT_RIJNDAEL_256, md5( $cryptKey ), base64_decode( $q ), MCRYPT_MODE_CBC, md5( md5( $cryptKey ) ) ), ""); return( $qDecoded ); }
暗号化技術を組み込むことで、データの機密性を維持しながら MD5 復号化の落とし穴を回避できます。
以上がハッシュされた MD5 データは復号化できますか、それとも元に戻すことはできませんか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。