Passwort mit salt versehen gelegenheitsfehler

Godstyle

Erfahrenes Mitglied
Hallo,

Mein Ziel ist es das die Passwörter so sicher wie Möglich sind daher habe ich folgendes script im einsatz:

PHP:
<?php

function random($name_laenge) {
$zeichen = "abcedfghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRTSUVW XYZ0123456789äöü?ß<>|@!§$%&()=#'\"\\";
$name_neu = "";

mt_srand ((double) microtime() * 1000000);
for ($i = 0; $i < $name_laenge; $i++ ) {
$name_neu .= $zeichen{mt_rand (0,strlen($zeichen))};
}
return $name_neu;
}
$name = random("20");
$salt = crypt(md5(sha1(md5($name))));

$userpw = "ADMIN"; // später per Post


$new_userpw = crypt(md5(sha1(md5($userpw.$salt).$salt).$salt).$salt);


// Ausgabe und Daten für die DB


echo $salt.'<br />';
echo $new_userpw;

?>

zwei Dinge habe ich dazu:

1.) Würde man diese Art bereits als sicher erachten oder habe ich etwas wesentliches vergessen?

2.) Ich erhlate gelegentlich folgende Notiz:
Notice: Uninitialized string offset: 89 in C:\xampp\htdocs\testsalt.php on line 10

PHP:
$name_neu .= $zeichen{mt_rand (0,strlen($zeichen))};

kann ich das ignorieren da Notizen standartmässig ausgeblendet werden oder ist es doch ein Fehler den ich lösen sollte?

lg
 
Zurück