BruceCompanys
25.02.2007, 15:07:13
Hi,
ich will mal eure Meinung über meine Passwort hören, sie hat 4 Sicherheitsstufen und soll max 32 machen.
<?php
###########################
#Author: Simon Brass
#
#Title: Password-Maker 0.1
#
#OpenSource!
#Mach was du willst damit!
###########################
$length = 8; //maximale Länge 32!
$save = 3; //Es gibt 4 Sicherheitsstufen
function make_password($length, $save=3){
if($length > 32){
$length = 32;
}
srand((double)microtime() * 500000000);
$letters = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z');
$other_signs = array("%", "$", "§", "&", "?", "-", "_");
$signs = array();
switch($save){
case 0: #Erste Stufe
for($i=0; $i < $length; $i++){
$key = rand(0, 25);
$signs[] = $letters[$key];
}
break;
case 1: #Zweite Stufe
for($i=0; $i < $length; $i++){
$upper = rand(0, 2);
$upper = (bool)$upper;
$key = rand(0, 25);
if(!$upper){
$signs[]= strtoupper($letters[$key]);
} else {
$signs[] = $letters[$key];
}
}
break;
case 2: #Dritte Stufe
for($i=0; $i < $length; $i++){
$kind = rand(0, 3); //Zahlen werden immer im Verhältnis 1 zu 3 benutzt!
$kind = (bool)$kind;
if(!$kind){
$signs[] = rand(0, 9);
} else {
$upper = rand(0, 2);
$upper = (bool)$upper;
$key = rand(0, 25);
if(!$upper){
$signs[]= strtoupper($letters[$key]);
} else {
$signs[] = $letters[$key];
}
}
}
break;
case 3: //Vierte Stufe
for($i=0; $i < $length; $i++){
$kind = rand(0, 2); //Zahlen und Sonderzeichen werden immer im Verhältnis 1 zu 2 benutzt!
$kind = (bool)$kind;
if(!$kind){
$other = rand(0, 3);
$other = (bool)$other;
if(!$other){
$key = rand(0, 6);
$signs[] = $other_signs[$key];
} else {
$signs[] = rand(0, 9);
}
} else {
$upper = rand(0, 2);
$upper = (bool)$upper;
$key = rand(0, 25);
if(!$upper){
$signs[]= strtoupper($letters[$key]);
} else {
$signs[] = $letters[$key];
}
}
}
break;
}
return implode('', $signs);
}
echo make_password($length, $save);
Ich hoffe euch gefällst!
mfg
ich will mal eure Meinung über meine Passwort hören, sie hat 4 Sicherheitsstufen und soll max 32 machen.
<?php
###########################
#Author: Simon Brass
#
#Title: Password-Maker 0.1
#
#OpenSource!
#Mach was du willst damit!
###########################
$length = 8; //maximale Länge 32!
$save = 3; //Es gibt 4 Sicherheitsstufen
function make_password($length, $save=3){
if($length > 32){
$length = 32;
}
srand((double)microtime() * 500000000);
$letters = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z');
$other_signs = array("%", "$", "§", "&", "?", "-", "_");
$signs = array();
switch($save){
case 0: #Erste Stufe
for($i=0; $i < $length; $i++){
$key = rand(0, 25);
$signs[] = $letters[$key];
}
break;
case 1: #Zweite Stufe
for($i=0; $i < $length; $i++){
$upper = rand(0, 2);
$upper = (bool)$upper;
$key = rand(0, 25);
if(!$upper){
$signs[]= strtoupper($letters[$key]);
} else {
$signs[] = $letters[$key];
}
}
break;
case 2: #Dritte Stufe
for($i=0; $i < $length; $i++){
$kind = rand(0, 3); //Zahlen werden immer im Verhältnis 1 zu 3 benutzt!
$kind = (bool)$kind;
if(!$kind){
$signs[] = rand(0, 9);
} else {
$upper = rand(0, 2);
$upper = (bool)$upper;
$key = rand(0, 25);
if(!$upper){
$signs[]= strtoupper($letters[$key]);
} else {
$signs[] = $letters[$key];
}
}
}
break;
case 3: //Vierte Stufe
for($i=0; $i < $length; $i++){
$kind = rand(0, 2); //Zahlen und Sonderzeichen werden immer im Verhältnis 1 zu 2 benutzt!
$kind = (bool)$kind;
if(!$kind){
$other = rand(0, 3);
$other = (bool)$other;
if(!$other){
$key = rand(0, 6);
$signs[] = $other_signs[$key];
} else {
$signs[] = rand(0, 9);
}
} else {
$upper = rand(0, 2);
$upper = (bool)$upper;
$key = rand(0, 25);
if(!$upper){
$signs[]= strtoupper($letters[$key]);
} else {
$signs[] = $letters[$key];
}
}
}
break;
}
return implode('', $signs);
}
echo make_password($length, $save);
Ich hoffe euch gefällst!
mfg