SORU
23 Mayıs 2011, PAZARTESİ


Üreten php rastgele şifre

Php rasgele bir parola oluşturmak için çalışıyorum.

Tüm 'a ve dönüş türü dizi ve bir dize olmak istiyorum. alıyorum ancak Kod düzeltmek için nasıl bir fikir?

Teşekkürler.

function randomPassword() {
    $alphabet = "abcdefghijklmnopqrstuwxyzABCDEFGHIJKLMNOPQRSTUWXYZ0123456789";
    for ($i = 0; $i < 8; $i  ) {
        $n = rand(0, count($alphabet)-1);
        $pass[$i] = $alphabet[$n];
    }
    return $pass;
}

CEVAP
23 Mayıs 2011, PAZARTESİ


Güvenlik uyarısı: rand() kriptografik olarak güvenli sözde rastgele sayı üreteci değildir. Başka bir yerde PHP şifreleme açısından güvenli rastgele bir dize oluşturmak için bak.

Bu (bir dize üzerinde count 1 çünkü count yerine strlen) deneyin:

function randomPassword() {
    $alphabet = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';
    $pass = array(); //remember to declare $pass as an array
    $alphaLength = strlen($alphabet) - 1; //put the length -1 in cache
    for ($i = 0; $i < 8; $i  ) {
        $n = rand(0, $alphaLength);
        $pass[] = $alphabet[$n];
    }
    return implode($pass); //turn the array into a string
}

Demo: http://codepad.org/UL8k4aYK

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bunnyboxx

    bunnyboxx

    17 NİSAN 2008
  • ExcelIsFun

    ExcelIsFun

    16 ŞUBAT 2008
  • MrOctopi

    MrOctopi

    6 Aralık 2010