Ouwe rakker |
|
Citaat: md5 en sha1 gebruik ik meestal voor wachtwoorden. Waar je het ook voor gebruikt, het is gewoon een hoopje cijfers en letters die samen een uniek iets vormen.
Het voorbeeld wat je hierboven trouwens schetst is een oud voorbeeld omdat je bijvoorbeeld gebruik maakt van mt_srand waarbij duidelijk staat:
Opmerking: Sinds PHP 4.2.0 is het niet meer nodig om de random number generator te 'zaaien' voor gebruik.
Als het random getal is gekozen dan kijkt hij pas of het gegenereerde ASCII teken ook echt wel een getal/cijfer is. Voor de (bv) 32 tekens die je wilt hebben kan het dus goed zijn dat hij 50 keer een random getal heeft moeten kiezen, wat dus zeer inefficient werkt.
Zelf maak ik gebruik van onderstaande functie:
<?php
/**
* Returns a random generated password with a length given by the optional
* first parameter.
*
* @author Gerard Klomp <gerard@theprodukt.com>
* @version 1.0
* @param integer $iLength
* @return string
*/
function generatePassword($iLength = 6) {
$sPassword = '';
for($i=0;$i<$iLength;$i++) {
switch(rand(1,3)) {
case 1: $sPassword .= chr(rand(48,57)); break; // 0-9
case 2: $sPassword .= chr(rand(65,90)); break; // A-Z
case 3: $sPassword .= chr(rand(97,122)); break; // a-z
}
}
return $sPassword;
}
<?php /** * Returns a random generated password with a length given by the optional * first parameter. * * @author Gerard Klomp <gerard@theprodukt.com> * @version 1.0 * @param integer $iLength * @return string */ function generatePassword($iLength = 6) { $sPassword = ''; for($i=0;$i<$iLength;$i++) { case 1: $sPassword .= chr(rand(48,57)); break; // 0-9 case 2: $sPassword .= chr(rand(65,90)); break; // A-Z case 3: $sPassword .= chr(rand(97,122)); break; // a-z } } return $sPassword; }
|