ホームページ >バックエンド開発 >PHPチュートリアル >php md5 での 16 ビットおよび 32 ビット実装コード

php md5 での 16 ビットおよび 32 ビット実装コード

PHP中文网
PHP中文网オリジナル
2017-06-10 10:09:281465ブラウズ

PHP の MD5 暗号化の 16 ビットと 32 ビットの実装コードについて、インターネットで検索すると多くの人が混乱していました。後で解決策を見つけたので、コードを記録します。以下の通り:

<?php 
echo substr(md5("admin"),8,16); // 16位MD5加密 
echo "<hr>"; 
echo md5("admin"); // 32位MD5加密 
?>

16 ビット MD5 暗号化は、substr 関数を使用して文字をインターセプトすることによって実装されます....

これ以上掘り下げたくない :) 他の重要な場所に知恵を注がなければなりません ~~

今日mssql データベースへの php リンクを作成し、データベース内のテーブルのフィールドに MD516 暗号化を使用しました。ただし、PHP のデフォルトの MD5 は 32 ビットであるため、ログイン プログラムが md5 暗号化を使用してテーブル内のフィールドを照合することができません。後でオンラインで検索すると、解決策が見つかりました。正しいので、録音しました。
substr 関数を使用してインターセプトします:
substr(md5("admin"),8,16); // 16 ビット MD5 暗号化
md5("admin"); // 32 ビット MD5 暗号化
によってテストされた結果このサイトは次のとおりです:
ASP で複数の md5 ファイルの結果を比較してみましょう。 添付ファイル: MD5 暗号化ファイルに遭遇し、パスワードがわからない場合は、データベース内のこの暗号化されたデータのセットを置き換えてください。
管理者---16ビット暗号化---7a57a5a743894a0e
管理者---32ビット暗号化---21232f297a57a5a743894a0e4a801fc3
管理者---40ビット暗号化---7a57a5a743894a0e4a801fc3438 801fc3
substr(md5("管理者"), 8,16) ; // 16 ビット MD5 暗号化は、8 文字目から始まる 16 文字が上記の 32 文字となります。したがって、一意性の問題を考慮する必要はありません。それ自体は正しいです。インターネット上の誰かが php5 がサポートしていると言っています


コードは次のとおりです:

echo md5("admin",true);//返回16位,不过这是在PHP5里才有。

テスト後の出力結果が文字化けしています。 良いコードがあれば共有してください。

上記は、totalmediatheatre5 php md5 の 16 ビットおよび 32 ビットの実装コードを紹介しており、totalmediatheatre5 の内容も含まれており、PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。