Buenas SOC
Al pie de la letra tal como te ha dicho el amigo pacofreire . Su función es doble, pero en esencia se traduce con hacer mucho más segura una credencial sin necesidad de aumentar la longitud:
-Ataques de Fuerza Bruta:
El modo tradicional, generalmente 100% efectivo de romper una contraseña es por fuerza bruta. Es 100% efectivo en tanto y cuanto si logras terminarlo, logras la contraseña al 100%. Ya que se basa simplemente de probar todas las posibilidades posibles.
Piensa en una maleta de combinación con la ruleta triple de 0-9 (diez elementos). 3 Ruletas, de 0-9 donde se permiten repetidos: 10 elevado a 3 (10^3). Es decir, que en el peor de los casos si pruebas 1000 veces, abres la maleta. Vas probando 000, 001, 002... hasta 999.
En una contraseña se puede hacer exactamente lo mismo técnicamente. A diferencia de que un equipo es extremadamente rápido, dependiendo del sistema puede comprobar miles o millones de combinaciones por segundo. Así que... como se logra que algo sea seguro?? Pues aumentando el número de posibilidades. Algunos ejemplos prácticos
Pongamos que tenemos un PC capaz de comprobar 1 millón de posibilidades por segundo:
-Contraseña sólo de números: Una contraseña numérica de 8 cifras: 12345678 requeriría romperla 10^8 / 1Millon = 100 segundos
-Contraseña solo con letras minúsculas ó solo con letras mayúsculas: La cosa se complica mucho no tenemos 10 posibilidades, tenemos 26: 26^8 / 1Millon = 58 horas
-Contraseña letras+números: Ya tenemos 36 posibilidades: 36^8 = 33 días
-Contraseña letras mayúsculas y minúsculas+números+ : 26*2+10 posibilidades: 62^8 = 7 años
-Contraseña letras mayúsculas y minúsculas+números+Especiales : 26*2+10+33 posibilidades: 210 años
Y todo ello siempre manteniendo la misma longitud de 8 caracteres. Con lo que aumentar la complejidad en la contraseña es a día de hoy esencial. Una contraseña de 8 caracteres con numeros, letras mayus/minus y caracteres esepciales puede ser mucho más fuerte que una contraseña numérica o solo con letras mucho mas largas.
-Ataques de Diccionario: Aunque menos comunes, son un vector de ataque habitual.
Muchas veces el usuario toma el error de creer que una palabra o incluso frase "larga" puede ser seguro simplemente por usar muchos. Se usan ataques que no prueban todas las combinaciones, sino que poseen millones de palabras en diferentes idiomas y técnicas que incluso las combinan, puesto que la inmensa mayoría usa palabras comunes o ligeras variaciones a estas. Si usas caracteres especiales, números... es menos probable que estos ataques tengan éxito.
-------------------
Si hay que tener en cuenta un par de cosas:
1º. No todos los sistemas permiten ciertas complejidades. Por ejemplo, en WIFI, por compatibilidad y estándar, no es recomendable usar caracteres extraños, ni siquiera espacios.
2º. Los sistemas suelen imponer una longitud máxima, con lo que si la longitud es muy corta, es bueno más que nunca usar cadenas con todo tipo de caracteres que podamos
3º. No hay que ser un extremista. A veces una contraseña como una frase corta de cierta longitud que sea significante para nosotros usando mayus/minus puede ser más que suficiente. Siempre hay que llegar al término medio de usabilidad y seguridad. Está claro que una contraseña de 24 caracteres todo mezclado será prácticamente imposible de romper!! Pero la usabilidad sería nula, y la mejora frente a otra mucho más sencilla no sería sustancial... a menos en cuanto a efectos prácticos. Por eso se llega siempre a un compromiso
Saludos.