Actualizado en diciembre de 2022
Como solemos decir, es muy importante para la seguridad y privacidad de nuestros smartphones configurar una clave de bloqueo. Las opciones van desde el patrón de un esquema de puntos hasta la huella biométrica. No obstante, las claves de 4 dígitos o alfanuméricas siguen siendo las más recomendadas. La pregunta es: ¿cuál es la complejidad matemática de cada una y cuál puede ser la más difícil de descifrar por un atacante?
Para responder a esta pregunta debemos tener en cuenta básicamente dos factores: la complejidad de la clave y la capacidad de procesamiento del hardware que utiliza un atacante a la hora de lanzar un ataque de fuerza bruta que prueba enormes cantidades de combinaciones posibles por segundo.
Cuántas combinaciones se pueden hacer con cuatro caracteres
Por un lado, si se usa una clave numérica (números del 0 al 9) tendríamos 10 posibilidades de 4 dígitos de longitud, que es la extensión por defecto de los teléfonos. Para 4 dígitos, las combinaciones posibles serían 10 mil:
104 = 10.000
Por otro lado, si tomamos un alfabeto de 26 letras mayúsculas y 26 minúsculas, 10 números y 10 caracteres no convencionales (por ejemplo "$", "#", "!"), en total tenemos 72 diferentes posibilidades para un único carácter. Eso significa que las combinaciones para un PIN de bloqueo de 4 caracteres serían:
724 = 26.873.856
Básicamente, más de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en una clave de 4 dígitos. En este caso utilizamos una clave de bloqueo pero este cálculo es válido para cualquier contraseña. De hecho, puedes reemplazar el exponente por el correspondiente a la longitud de tu clave y calcular cuántas combinaciones se requerirían para atacarla.
Tiempo de procesamiento para descifrar mediante ataques de fuerza bruta
Nota: Un ataque de fuerza bruta ocurre cuando atacantes utilizan software y hardware para probar combinaciones de contraseñas con el objetivo de descifrarlas y así lograr acceso a una cuenta o equipo.
Para determinar cuánto tardaría un atacante en descifrar la combinación mediante un ataque de fuerza bruta debemos tomar en cuenta la cantidad de combinaciones que podemos armar con los símbolos del alfabeto que tenemos. Si el ataque tiene una capacidad promedio de 4 mil millones de cálculos por segundo, tardaría muy poco en obtener una clave de 4 caracteres (s = segundos):
724 / 4.000.000.000 = 0,006718464 s
Con este poder de cómputo prácticamente cualquier delincuente podría atacar una clave de 26 millones de combinaciones en menos de una centésima de segundo. Si bien el proceso cuesta 2.687 veces más que en la variante numérica, sigue siendo muy fácil para un atacante. De hecho, podrían atacar 50 claves alfanuméricas de cuatro caracteres literalmente en un abrir y cerrar de ojos (considerando que un pestañeo dura entre 300 y 400 milisegundos).
¿Qué longitud es más segura a la hora de elegir una clave?
Una vez que analizamos la situación se vuelve recurrente la consulta de qué longitud de clave se debería utilizar para estar más tranquilo frente a un ataque de fuerza bruta. Por ejemplo, si tomamos como referencia una longitud de 10 caracteres con 72 símbolos diferentes para cada uno, la cantidad de combinaciones que se puede formar supera los 3 trillones:
7210 = 3.743.906.242.624.487.424
Si calculamos el tiempo que se necesita para atacarlo, tomando el procesamiento mencionado y 31.556.925 segundos, que es la duración de un año, obtendríamos:
7210 / 4.000.000.000 x 31.556.926 = 29,6 años
Este es un buen tiempo si se considera que no parece valer la pena esperar ese lapso, aunque nunca se sabe. No obstante, dado que es un cálculo exponencial, agregando únicamente un carácter más, el tiempo necesario sería aproximadamente el transcurrido desde el inicio del cristianismo:
7211 / 4.000.000.000 x 31.556.926 = 2135 años
Si bien algunos criptógrafos consideran que una clave segura debería ser aquella que necesite una vez (o más) el tiempo transcurrido desde la creación del universo (aproximadamente 14 mil millones de años), con una clave de 15 caracteres y el computo tomado se necesitarían cuatro veces ese tiempo para quebrarla. Por lo tanto, puedes elegir si con 2.000 años ya estás en condiciones de sentir una relativa seguridad o si prefieres una clave más extensa- siempre tomando en cuenta qué tan sensible es la información que desees proteger.
Este ejercicio nos ayuda a comprender el impacto de los ataques de fuerza bruta como técnica para descifrar una clave y en definitiva a visualizar el grado de protección que nos brinda una contraseña robusta.
En resumen: es recomendable que utilices mínimo una clave alfanumérica de 4 caracteres, ya que el esfuerzo que te exige es el mismo que la numérica pero el poder de procesamiento que se necesita para descifrarla es mayor.