Scripts
Random Hash
Een handige toolbox functie (voor namespacing: Toolbox::createHash()). Gebruikt een compleet random systeem om zo random mogelijk te maken en daaracher de time te plakken en vervolgens te hashen. Handig voor licenties/activatie codes/andere unieke dingen.
random-hash
<?php
class Toolbox
{
/**
* generate a fully random hash code
* randomly chooses md5 or sha1
*
* @return string
*/
static public function createHash()
{
$string = '';
$alphaL = range('a', 'z');
$alphaU = range('A', 'Z');
$num = range('0', '9');
$special = str_split('!@#$%^&*()_+-=[]{}:;a\'"?/.>,<\\`~ |¤½¼½¾¥’‘');
for($i = 0; $i < rand(16, 32); $i++) {
$choose = rand(0, 3);
switch($choose) {
case 0:
$string .= $alphaL[array_rand($alphaL)];
break;
case 1:
$string .= $alphaU[array_rand($alphaU)];
break;
case 2:
$string .= $num[array_rand($num)];
break;
case 3:
$string .= $special[array_rand($special)];
break;
}
}
switch(rand(0, 1)) {
case 0: return md5($string . time()); break;
case 1: return sha1($string . time()); break;
}
}
}
?>
Reacties
0