La siguiente función permite la creación automática de contraseñas con PHP. Permite elegir la longitud deseada y la fortaleza de la misma. La función elimina de las contraseñas caracteres que pueden ser confundidos por otros, por ejemplo la vocal "o" con el número "0", la "i" con el "1", etc.
<?php
function generar_password($longitud=9, $fortaleza=0) {
$vocales = 'aeuy';
$consonantes = 'bdghjmnpqrstvz';
if ($fortaleza >= 1) {
$consonantes .= 'BDGHJLMNPQRSTVWXZ';
}
if ($fortaleza >= 2) {
$vocales .= "AEUY";
}
if ($fortaleza >= 4) {
$consonantes .= '23456789';
}
if ($fortaleza >= 8 ) {
$vocales .= '@#$%';
}
$password = '';
$alt = time() % 2;
for ($i = 0; $i < $longitud; $i++) {
if ($alt == 1) {
$password .= $consonantes[(rand() % strlen($consonantes))];
$alt = 0;
} else {
$password .= $vocales[(rand() % strlen($vocales))];
$alt = 1;
}
}
return $password;
}
//Ejemplo de uso
echo generar_password(5,8);
?>







