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

  • BSA

    BSA

    9 NİSAN 2012
  • GWTLecturer

    GWTLecturer

    18 EKİM 2012
  • FusioNGamiing

    FusioNGamiin

    10 Temmuz 2007