PHP password generator

Χρειάστηκα σήμερα έναν password generator, γιατί ήθελα να δώσω passwords σε μια λίστα από emails που έφτιαχνα, και δεν μου πέρασε καν απο το μυαλό ότι το συγκεκριμένο το έχουν χρειαστεί χιλιάδες πριν από μένα. Οπότε ξεκίνησα να γράφω κώδικα και ιδού:

<?php
header('Content-type: text/plain');

function generatePassword($len)
{
    $passwordChars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*()-_=+[]{}\\|,<.>/?`~;:';
    $passwordCharsLen = strlen($passwordChars);
    $tmp = '';
    for ($i=0; $i < $len; $i++)
    {
        $x = rand(1, $passwordCharsLen);
        $tmp .= $passwordChars[$x-1];
    }
    return $tmp;
}

    if (isset($_GET['len'])) $len = (int)$_GET['len'];
    if (($len < 4) || ($len > 128)) $len = 8;
    echo generatePassword($len);
?>

Ισως βέβαια το να έψαχνα και να δοκίμαζα τι δουλεύει και τι όχι να μου έπαιρνε περισσότερο χρόνο απ΄ όσο μου πήρε να κάτσω να το γράψω μόνος μου, αλλά δεν πρόκειται να το μάθω ποτέ…

One thought on “PHP password generator

  1. dvassil Συντάκτης

    Και μια διαφορετική εκδοχή με την απαίτηση να μην επαναλαμβάνει τα σύμβολα που έχουν χρησιμοποιηθεί… (όπως έχει δημοσιευτεί στο σχετικό θέμα του freestuff.gr)

    function generatePassword ($length = 8 )
    {
        $possible = '12346789abcdefghjkmnpqrtvwxyz@#$%&*';
        $maxlength = strlen($possible);
        if ($length > $maxlength) $length = $maxlength;
        $password = substr(str_shuffle($possible), 0, $length);
        return $password;
    }

Σχολιάστε

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

Λογότυπο WordPress.com

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Αποσύνδεση / Αλλαγή )

Φωτογραφία Twitter

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Αποσύνδεση / Αλλαγή )

Φωτογραφία Facebook

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Αποσύνδεση / Αλλαγή )

Φωτογραφία Google+

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Αποσύνδεση / Αλλαγή )

Σύνδεση με %s