Función PHP para generar contraseñas

0 - , - 11/02/2010 11:36:05

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);
?>

Visto en » »

Deja tu comentario

  • El comentario debe estar relacionado con el contenido de la entrada.
  • Comentarios ofensivos, con spam o con lenguaje inapropiado serán eliminados.

captcha