Hoje vou mostrar uma função em PHP para gerar senhas aleatórias complexas. Você pode escolher o tamanho da senha e sua força. A senha pode ser composta por números, letras ou símbolos. Para isso é só mudar o valor do parâmetro da função. A função gera uma senha de acordo com dois parâmetros: tamanho e força .
function gerarSenha($tamanho=9, $forca=0) { $vogais = 'aeuy'; $consoantes = 'bdghjmnpqrstvz'; if ($forca >= 1) { $consoantes .= 'BDGHJLMNPQRSTVWXZ'; } if ($forca >= 2) { $vogais .= "AEUY"; } if ($forca >= 4) { $consoantes .= '23456789'; } if ($forca >= 8 ) { $vogais .= '@#$%'; } $senha = ''; $alt = time() % 2; for ($i = 0; $i < $tamanho; $i++) { if ($alt == 1) { $senha .= $consoantes[(rand() % strlen($consoantes))]; $alt = 0; } else { $senha .= $vogais[(rand() % strlen($vogais))]; $alt = 1; } } return $senha; } [/source] Agora basta chamar a função, conforme mostrado abaixo. A função aceita dois parâmetros, $tamanho, que nada mais é que o tamanho desejado da senha, e $forca, a força desejada da senha. [source language='PHP'] echo 'Sua senha é <strong>'.gerarSenha(10,8).'</strong>';
Link original do artigo: Generate a password in php.
Me siga no Twitter: @kadunew ou assine nosso Feed e fique por dentro de todas atualizações aqui do blog.