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

  • Google Developers

    Google Devel

    23 AĞUSTOS 2007
  • HowtoDrawAndPaint

    HowtoDrawAnd

    24 EKİM 2010
  • Philip DeFranco

    Philip DeFra

    16 EYLÜL 2006