Scripts
Hash, maar dan veiliger
Dit script genereert een hash van parameter $str. Het script is niet geschikt om lange strings te hashen, maar eerder bedoelt voor wachtwoorden omdat dit script niet erg snel is als hij lange strings moet hashen. Ieder teken uit $str wordt afzonderlijk ge'md5't, waarna al deze md5's achter elkaar worden geplakt. Deze (enorm lange) string wordt eerst gecodeerd met base64_encode, daarna ge sha1't en dan nog eens ge md5't. In php versies lager dan 5 is de tweede functie ook nodig, deze vervangt de str_split functie uit php 5. Plaats script nummer twee wel boven de eerste! Het tweede script is NIET zelf geschreven maar gekopieerd van php.net Succes:)
hash-maar-dan-veiliger
[code]
<?php
function create_hash( $str )
{
if( is_array( $str ) )
{
$str = array2string( $str );
}
$str = str_split( $str );
$chunkStr = md5( 'een geheim woord met veel rare tekens #)%*Qfvdvdk8439312' );
for( $i = 0; $i < count( $str ); $i++ )
{
$chunkStr .= md5( $str[ $i ] );
}
$str = md5( sha1( base64_encode( $chunkStr ) ) );
return $str;
}
if (phpversion () < "5"){ // define PHP5 functions if server uses PHP4
function str_split($text, $split = 1)
{
if (!is_string($text)) return false;
if (!is_numeric($split) && $split < 1) return false;
$len = strlen($text);
$array = array();
$s = 0;
$e=$split;
while ($s <$len)
{
$e=($e <$len)?$e:$len;
$array[] = substr($text, $s,$e);
$s = $s+$e;
}
return $array;
}
}
?>
[/code]
Reacties
0