kostenloser Webspace werbefrei: lima-city


Einfacher Password generator

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    gheddo

    gheddo hat kostenlosen Webspace.

    Funktion um ein Password zu erstellen eines zufallespassworts mit l?ngenangabe und cryptangabe
    Hier eine kleine function die ich gefunden habe und etwas ge?ndert.

    Hier erst der komplette Code
    function mkpassword($chars, $crypt) {
    if (!isset($chars)) {
    $chars = 8;
    }
    $loops = $chars / 4;
    $conso=array("b","c","d","f","g","h","j","k","l","m","n","p","r","s","t","v","w","x","y","z");
    $vocal=array("a","e","i","o","u");
    $numerics=array(1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
    $specials=array("_", "-");
    $password="";
    srand ((double)microtime()*1000000);
    for($f=1; $f<=$loops; $f++)
    {
    $password.=$conso[rand(0,15)];
    $password.=$vocal[rand(0,4)];
    $password.=$specials[rand(0,1)];
    $password.=$numerics[rand(0,9)];

    }

    $password = substr($password, 0, $chars);
    switch($crypt) {
    case "md5": return md5($password); break;
    default: return $password; break;
    }
    }

    Aufrufbar ist diese Funktion mit
    mkpassword(12, '');

    O.g. Aufruf gibt dann ein Password mit 12 Zeichen ohne Verschl?sselung aus.

    Die minimale anzahl der Zeichen ist 4.

    man kann diverse Verschl?sselungen hinzuf?gen wenn mal folgende stelle ver?ndert:

    switch($crypt) {
    case "md5": return md5($password); break;
    default: return $password; break;
    }
    will man nun die crypt() funktion benutzen f?gt man zwischen "case md5" und default folgendes ein:

    case "crypt": return crypt($password); break;

    wenn man nun die Funktion it
    mkpassword(12, 'crypt');
    gibt es ein 12 Stelliges verschl?sseltes Password zur?ck. "crypt" l?sst sich auch durch md5 ersetzen, dann gibt es einen md5-hash zur?ck.


    ------Zur Codeerkl?rung------

    for($f=1; $f<=$loops; $f++)
    eine einfache for-schleife, sie l?uft so lange bis $f kleiner oder genausogro? ist wie $loops

    $password.=$conso[rand(0,15)];
    $password.=$vocal[rand(0,4)];
    $password.=$specials[rand(0,1)];
    $password.=$numerics[rand(0,9)];
    In der for-schleife werden die verschiedenen Arrays an Zeichen zusammengesetzt nach zufall, dadurch das rand(x,x)
    rand() gibt eine zufallszahl zwischen den angegebenen ziffern aus.
    rand(0,1) gibt also mal 0 oder mal 1 aus.


    Weitere Fragen k?nnen dann gern per Kommentar gestellt werde.

    Nachtrag:

    Folgende Zeile habe ich oben noch hinzugef?gt, um ein genaues Ergebnis an Chars zu erziehlen
    $password = substr($password, 0, $chars);

    substr cuttet einen string, in diesen Fall von 0 (Anfang) bis einschlie?lich $chars.

    Erkl?rung von php.net:

    $rest = substr("abcdef", 1); // gibt "bcdef" zur?ck
    $rest = substr("abcdef", 1, 3); // gibt "bcd" zur?ck
    $rest = substr("abcdef", 0, 4); // gibt "abcd" zur?ck
    $rest = substr("abcdef", 0, 8); // gibt "abcdef" zur?ck

  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. k*********2

    Dieses Thema wurde mit folgender Begr?ndung von kenny197902 geschlossen:

    Hier gibts eigentlich auch keinen Diskussionsgrund. Ich w?rde mal deine Tutorials unter Tutorials ver?ffentlichen, da winkt mehr Bonus als hier im Thread!

    (Dies ist eine automatische Antwort durch das System).
  4. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!