ホームページ >バックエンド開発 >PHPチュートリアル >PHP がランダムなパスワード プログラム コードを生成する_PHP チュートリアル

PHP がランダムなパスワード プログラム コードを生成する_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 16:59:57906ブラウズ

ランダムなパスワードを生成するには多くの方法があります。最も簡単なのは、php mt_rand() 関数を使用して数値の文字列を直接生成することです。次に、ランダムなパスワードを生成する php プログラムを紹介します。最も簡単な方法は mt_rand 関数です。

mt_rand() は、メルセンヌ ツイスター アルゴリズムを使用してランダムな整数を返します。

この場合、いくつかの乱数を返します:

コードは次のとおりですコードをコピー
echo(mt_rand());
echo(mt_rand());
echo(mt_rand(10,100));
?>

出力は次のようになります:

3150906288

513289678
35

上記の安全性指標はすべて数値であるため、比較的低いです。別の指標もあります

1. a – z、A – Z、0 – 9、およびいくつかの特殊文字を含む文字列 $chars をプリセットします

2. $chars 文字列からランダムな文字を選択します

コードは次のとおりですコードをコピー 2. 最初のステップで取得したタイムスタンプを md5() で暗号化します 3. 2 番目のステップの暗号化結果を使用し、n 桁を傍受して目的のパスワードを取得します
関数generate_password( $length = 8 ) {

// パスワード文字セット。必要な文字を追加できます
$chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_ []{}<>~`+=,.;:/?|';
$パスワード = ''; for ( $i = 0; $i {
// ここでキャラクターを入手するには 2 つの方法があります
// 1 つ目は、substr を使用して $chars 内の文字をインターセプトすることです。 // 2 つ目は、文字配列 $chars の任意の要素を取得することです
// $password .= substr($chars, mt_rand(0, strlen($chars) - 1), 1); $password .= $chars[ mt_rand(0, strlen($chars) - 1) ]; }
$パスワードを返す
}




友人が提供した md5() 関数の戻り値のため、生成されるパスワードには文字と数字のみが含まれますが、それでも良い方法です。アルゴリズム的思考: 1. time() は現在の Unix タイムスタンプを取得します



コードは次のとおりです

コードをコピー { $str = substr(md5(time()), 0, 6); $str;
関数 get_password( $length = 8 )
を返します }





http://www.bkjia.com/PHPjc/631273.htmlwww.bkjia.com

tru​​ehttp://www.bkjia.com/PHPjc/631273.html技術記事ランダムなパスワードを生成する方法はたくさんありますが、最も簡単な方法は、php mt_rand() 関数を使用して数値の文字列を直接生成することです。次に、php でランダムなパスワード プログラムを生成する最も簡単な方法を紹介します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。