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

  • PremiumBeat.com - Royalty Free Music

    PremiumBeat.

    16 Kasım 2008
  • spyib

    spyib

    9 Ocak 2007
  • UKF

    UKF

    2 Aralık 2009