Tengo un "mnemonic" función la generación de contraseñas que es algo como esto:contraseña mnemotécnico algoritmo de generación de teclados QWERTY
function Mnemonic($mnemonic)
{
$result = null;
$charset = array(str_split('aeiou', 1), str_split('bcdfghjklmnpqrstvwxyz', 1));
for ($i = 1; $i <= $mnemonic; $i++)
{
$result .= $charset[$i % 2][array_rand($charset[$i % 2])];
}
return $result;
}
Básicamente esto genera una cadena con $mnemonic
longitud donde cada personaje extraño es una consonante y cada carácter par es una vocal. Si bien entiendo que esto reduce la complejidad de la contraseña, generalmente es mucho más fácil recordar . Ahora quiero mejorarlo generando cadenas que son fáciles de escribir.
Por ejemplo, mientras que un novato * nix siempre prefiero distribuciones basadas en Debian RHEL sobre los, la razón principal es la facilidad de escribir yum
frente a la facilidad de escribir apt[-get]
, a modo de prueba por sí mismo.
¿Cómo debo implementar la lógica para generar cadenas que sean fáciles de escribir en los teclados QWERTY?
Definir "más fácil de escribir." Normalmente encuentro que las palabras que puedo escribir más fácilmente son las que puedo pronunciar, por lo que su método funcionaría perfectamente para eso. –
@Alix Axel, en realidad encuentro 'apt' más fácil de escribir que' yum' específicamente porque puedes alternar las manos mientras escribes. – avakar
@BlueRaja: intente escribir 'yum' e intente escribir' apt'; 'yum' debería ser mucho más fácil de escribir (especialmente con solo una mano). Como ejemplos adicionales fáciles de escribir intente escribir 'serverde' o' begreen'; o 'yii' contra' zend'. –