Passwort generieren

edit | delete

Autor: Ralf v.d.Mark

eingetragen: Montag, 12. Dezember 2005 um 10:57 Uhr (50/2005 Kalenderwoche)

geändert: Mittwoch, 21. Dezember 2011 um 15:05 Uhr (51/2011 Kalenderwoche)

Keywords: Passwort password pw zufall

Kategorien: PHP,

Text:

Ein Passwortgenerator in PHP. - Generiert ein Zufalls-Passwort nach AK-Technik-Kriterien.

Quellcode:  

/** Generiert ein Zufalls-Passwort nach AK-Technik-Kriterien.
 *
 *  @param   integer $length (Standard-Zeichenlaenge)
 *  @return  string  (das fertige Passwort).
 *  @example AblY3t§Ti, 8XJX1z@sQB, 4ah8Ld2s9      */
function generatePW($length = 8)
{
    $grossbstaArr = range('A', 'Z');
    $kleinbstaArr = range('a', 'z');
    $sonderzArray = array('_', '-', '(', ')', '@', '§', '!');
    $weiteresArry = array_merge(range('0', '9'),
                                $kleinbstaArr,
                                $grossbstaArr,
                                $sonderzArray);
    $countWeiteresArry = count($weiteresArry);

    /** Array durcheinander mischen */
    $haelfte = (intval($length / 2) - 2);//Bei Haelfte festen Block einfuegen!
    for ($i = 1; $i <= $length; $i++)
    {
        $swap = mt_rand(0, $countWeiteresArry - 1);
        $tmp .= $weiteresArry[$swap];
        if ($i == $haelfte) {
            $tmp .= $grossbstaArr[mt_rand(0, 26 - 1)];
            $tmp .= mt_rand(0, 9);
            $tmp .= $kleinbstaArr[mt_rand(0, 26 - 1)];
            $tmp .= $sonderzArray[mt_rand(0,  7 - 1)];
        }
    }
    return substr($tmp, 0, $length);
}//ENDE: function generatePW()