Avatar billede stagedk Nybegynder
10. februar 2009 - 22:54 Der er 4 kommentarer og
1 løsning

generer random password?

Skal bruge et script til at generer et password som brugeren automatisk bliver tildelt :). håber nogle kan hjælpe.
Avatar billede psychopixi Nybegynder
10. februar 2009 - 23:02 #1
Du kan gøre sådan her:
<?php
$allowed_chars = "1qaz2wsx3dc4rfv5tgb!QAZWSX#EDCFVGByhnYHN7ujm8ik,9ol.0p-+/UJM(IKL;)OL:=P_?";
$number_of_chars = 10;
for($x=1; $x <= $number_of_chars; $x++){
    $password .= htmlentities($allowed_chars[rand(0,strlen($allowed_chars)-1)]);
}
echo "Your new password: " . $password . "<br/>";
?>

Du vælger selv hvilke tegn det skal være muligt at have i passwordet ved at ændre tegnene i $allowed_chars. Du ændrer længden af passwordet ved at ændre $number_of_chars.
Avatar billede arne_v Ekspert
10. februar 2009 - 23:04 #2
En simpel loesning er:

<?php
function genpw($len, $valid) {
    $res = '';
    for($i = 0; $i < $len; $i++) {
        $res .= $valid[rand(0, strlen($valid) - 1)];
    }
    return $res;
}

echo genpw(7,  'ABCDEFGHIJKLMNOPQRSTUWVXYZ0123456789');
?>
Avatar billede stagedk Nybegynder
10. februar 2009 - 23:06 #3
psychopixi.
jeg takker :).
Avatar billede arne_v Ekspert
10. februar 2009 - 23:06 #4
Hvis den skal bruges til noget der er vigtigt nok til at kunne blive angrebet mere systematisk, saa skal der indsaettes et kald til srand i funktionen med et argument som er svaert at gaette selvom man kender baade algoritme og tid for generering.
Avatar billede erikjacobsen Ekspert
11. februar 2009 - 08:10 #5
Og for at hjælpe slutbrugeren kan man undlade O og 0, samt I og 1, der kan være svære skelne. Det giver så lidt færre mulige passwords, men kan evt. gøre længden lidt større.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester