Tiene 20 caracteres de longitud, mezcla símbolos alfanuméricos y especiales. Es uno entre ** 20.
El problema con esta contraseña es que se basa en un patrón. Mientras tu patrón siga siendo un secreto, entonces tiene algún valor. Pero, tan pronto como se conoce su patrón, es tan bueno como una contraseña de 4 caracteres.
El mejor caso es tener una contraseña que aún sea segura, incluso si el mundo sabe cómo la generaste.
Hay muchos hackers que intentan descifrar contraseñas. Al menos uno de ellos está obligado a tener reglas para personajes repetidos en su orden de adivinación.
La seguridad de una contraseña depende aproximadamente de su entropy , que en sí misma es una métrica de cuánta información contiene. La contraseña "AAAAA" tiene una entropía terrible, ya que es el mismo carácter repetido cinco veces. Por otro lado, "e ^ # Yc" es, aunque todavía demasiado corto, mucho mejor. No se puede describir tan fácilmente.
Confiar completamente en los caracteres repetidos es malo porque simplemente no hay muchas maneras de hacerlo. Solo tienes cuatro caracteres únicos en la contraseña. Si intentara por todos los medios combinar cuatro caracteres alfanuméricos / símbolos, obtendría 72 ^ 4 = 26873856 combinaciones. Si tuviera que usar hasta cinco copias de cada símbolo, entonces habría 72 ^ 4 * 5 ^ 4 combinaciones (ya que puedo usar 1, 2, 3, 4 o 5 de cada carácter, que es solo 5 opciones) . Esto da 16796160000 combinaciones. Aunque mejor , todavía no es tan bueno. El uso de diez caracteres alfanuméricos / símbolos aleatorios daría 3743906242624487424 combinaciones, por ejemplo.
Creo que su problema es una mala interpretación de la seguridad de la contraseña. Mezclar letras y símbolos, usar mayúsculas, etc., son formas de aumentar el espacio de búsqueda de una contraseña. Cuanto mayor sea el espacio de búsqueda, más difícil será romper una contraseña, ya que el número de contraseñas posibles es (espacio de búsqueda) ^ (longitud).
Sin embargo, si su contraseña es muy corta o efectivamente muy corta (los caracteres repetidos son un ejemplo de esto), ¡aún es débil!
Dependería de cómo el atacante hipotético se acerca a adivinar la contraseña.
Contra un simple ataque de fuerza bruta (es decir, probar todas las combinaciones posibles en el espacio clave disponible) esta contraseña probablemente se mantendrá muy bien, porque es muy larga. Desafortunadamente, la mayoría de los atacantes no usarán ataques de fuerza bruta pura.
También podría esperarse que funcione bien contra un ataque de diccionario puro, por razones obvias.
Sin embargo, se puede esperar razonablemente que un atacante inteligente tenga en cuenta patrones como los caracteres repetidos o secuenciales en su ataque. Dado que la estructura de esta contraseña es muy regular (5 repeticiones cada una de solo 4 caracteres) caería mucho más rápido en un ataque que está buscando patrones.
Supongamos que un atacante obtuviera acceso a una base de datos de contraseñas que contenga una versión con hash de esta contraseña (como sucede a menudo). Digamos que el atacante ya ha agotado los ataques de su diccionario y está recurriendo a ataques basados en patrones. Se podría esperar que tal ataque tenga en cuenta las secuencias lógicas (por ejemplo, 12345,) las secuencias espaciales (por ejemplo, qwertyuiop,) las repeticiones, etc. y varias combinaciones de ellas. No sé si podría estimar de manera confiable el tamaño de un espacio clave, pero sin duda sería mucho más pequeño que si la clave fuera realmente aleatoria. Esta pregunta tiene alguna discusión acerca de los principios detrás del craqueo de contraseñas basado en patrones.
Lea otras preguntas en las etiquetas passwords