¿Cuanto tiempo le cuesta a un atacante loguearse en una determinada web si la contraseña del usuario es "sol" y el sistema es capaz de atender cien intentos por segundo?

Pues dependiendo del sistema empleado para el ataque, el tiempo requerido puede oscilar entre 3 y 80 minutos. Lo mismo viene a resistir cualquier contraseña basada en una palabra de seis caracteres, sea o no una palabra común.

El uso de seis caracteres aleatorios puede tardar un mes en ser reventado, pero si añadimos números podemos irnos a los ocho meses, y si empleamos además signos de puntuación, mayúsculas y minúsculas nos vamos a... ¡más de 200 años!

Sin embargo no todo el mundo puede recordar contraseñas de ese tipo (sobre todo si son varias distintas, como sería de esperar). Por tanto es muy probable que la contraseña acabe siendo anotada, lo que abre nuevas vías de ataque...

Como consecuencia conviene plantearse el uso de contraseñas formadas por varias palabras que uno sea capaz de recordar. Por ejemplo "hace sol" necesita dos meses para ser doblegada, mientras "hace bastante sol" se dispara a más de 2.500 años.

Así que resulta diez veces más seguro utilizar "hace bastante sol" que "jG9*a)".

Pero todas estas disquisiciones en la mayoría de los casos no pasan de ser teóricas, porque cada vez más webs utilizan retardos entre intentos de login y/o penalizaciones para los intentos fallidos.

Así, basta programar cinco segundos de retardo entre dos intentos sucesivos de login para que la seguridad de "hace sol" se dispare hasta casi dos mil años de duración del ataque.