Manejar contraseñas es una parte fundamental de la interacción en Internet. Las contraseñas lo protegen todo, desde lo mundano (nuestras cuentas de Spotify, YouTube y Twitch) hasta lo vitalmente importante (nuestras cuentas de PayPal, Amazon y Venmo) y todo lo demás. Son las llaves de las cerraduras digitales de nuestra propiedad en línea y, como tales, desempeñan un papel importante en la protección de nuestras vidas frente a los malos actores que intentan robar identidades y causar estragos.
Es vital que usted sea el único que sepa o pueda adivinar sus contraseñas. Pero, ¿qué es una buena contraseña? Para entender eso, necesitará saber un par de cosas sobre cómo los inútiles de Internet descifran contraseñas.
Ataques de fuerza bruta
En seguridad digital, adivinar repetidamente una contraseña se denomina ataque de fuerza bruta. La idea es sencilla. Probar todas las combinaciones de letras y números hasta dar con la correcta. Para un ser humano, este tipo de tarea sería tediosa, repetitiva, propensa a errores y llevaría mucho tiempo. Para un ordenador, la mayoría de estos problemas se convierten en triviales.
Según NordPass, las computadoras pueden adivinar entre 10,000 (en un Pentium de 100 MHz de la vieja escuela) y mil millones de contraseñas por segundo (en una supercomputadora). Adivinar un PIN de cuatro dígitos (10,000 PIN posibles) tomaría un segundo en el peor de los casos, la computadora más lenta no encontraría el PIN correcto hasta la última verificación.
Cuando se trata de contraseñas alfanuméricas compuestas únicamente por letras minúsculas y números (36 caracteres posibles), una contraseña de seis caracteres (36⁶ combinaciones de caracteres posibles) podría resolverse en 217.679 segundos (2,5 días) en el caso del Pentium, o en unos 2 segundos en el caso de la supercomputadora. Estos números son los tiepos máximos que llevaría forzar las contraseñas por fuerza bruta. Esto es inaceptable desde el punto de vista de la seguridad.
Sin embargo, una contraseña compleja como @androidPo1ice es más difícil de adivinar. Tiene ocho caracteres, mayúsculas, minúsculas, números y símbolos, por lo que hay 94 caracteres posibles disponibles, lo que da 94⁸ (más de seis mil billones) de combinaciones de contraseñas. Este nivel de complejidad es suficiente para frustrar nuestra computadora de bajo consumo, lo que tomaría más de 600 mil millones de segundos (más de 19,000 años) para forzar todas las combinaciones. Ofrece una defensa razonable contra nuestra computadora de alta potencia, que tardaría más de seis millones de segundos (70 días) en adivinar.
Ataques de diccionario
Estos cálculos suponen el mayor tiempo posible, con el ordenador adivinando correctamente solo la última permutación posible de caracteres. El tiempo medio que se tarda en adivinar una contraseña sería aproximadamente la mitad de lo indicado anteriormente. Peor aún, la gente es pésima eligiendo contraseñas, pero (en su mayoría) no es culpa nuestra. El problema es que las mejores contraseñas para frustrar los ataques de fuerza bruta son una distribución aleatoria de letras, números y símbolos. Las contraseñas más fáciles de recordar están formadas por números y palabras que tienen algún significado personal. Esto nos abre a una nueva vulnerabilidad: los ataques de diccionario.
Este tipo de ataque tiene éxito porque mucha gente utiliza palabras comunes en sus contraseñas. En lugar de probar cada combinación de todos los caracteres posibles, un atacante puede probar palabras que se sabe que se utilizan en muchas contraseñas. Además, dada la plétora de filtraciones de datos de la última década, los atacantes pueden encontrar listas de cientos de millones de contraseñas para probar, muy lejos de los seis cuatrillones de posibilidades de nuestro ejemplo anterior.
Descifrado de contraseñas
Otra vía de ataque para los piratas informáticos se basa en la forma en que los servicios en línea almacenan las contraseñas. Las empresas no guardan una lista de contraseñas en texto plano. Hacerlo haría vulnerables los datos de los usuarios. En su lugar, utilizan un tipo especial de cifrado para almacenar las contraseñas. La idea es crear una función que convierta fácilmente una contraseña en un nuevo valor de forma que sea difícil determinar el valor original basándose en el valor convertido.
Desde que las empresas empezaron a utilizar estos algoritmos, los hackers se han esforzado por encontrar la forma de descifrarlos. Algunos, como SHA-1, se han visto tan comprometidos que una simple búsqueda en Google del valor convertido revela la contraseña original. Otros pueden descifrarse en cuestión de horas mediante fuerza bruta alquilando tiempo en AWS.
Con la proliferación de este tipo de ataques, un malhechor solo necesita la lista de contraseñas cifradas y un poco de tiempo para acceder a sus cuentas.
La solución
¿Cómo podemos estar seguros de que nadie puede adivinar nuestras contraseñas? Una buena regla general es fijarse en los requisitos modernos de las instituciones financieras en materia de contraseñas. Tu banco, por ejemplo, puede exigir contraseñas que tengan al menos ocho caracteres y una letra mayúscula, una minúscula, un número y un símbolo. Así que el ejemplo anterior de @ndroidPo1ice cumple todos los requisitos.
La solución a estos problemas es tener contraseñas más largas y complejas. Pero esto introduce un nuevo problema. La mayoría de nosotros tenemos docenas de cuentas. No podemos recordar 50 contraseñas para 50 servicios. La mejor solución es una especie de compromiso. Cuando se trata de tener diferentes contraseñas para diferentes sitios web, céntrate en los importantes que controlan el acceso a tu dinero (Amazon, PayPal, Venmo y cuentas bancarias) y utiliza una contraseña más sencilla para tus cuentas menos vitales (Spotify, TikTok, Discord). De esta forma, si tu contraseña se revela en una filtración de datos, minimiza el riesgo para tus cuentas más vitales.
Para crear una contraseña resistente a ataques de fuerza bruta, ataques de diccionario y crackeo, céntrate en la longitud por encima de la complejidad. Las posibles contraseñas podrían basarse en un meme (@11yourBase@reB310ng2us), un videojuego (theC@k3is@L13) o un libro (itWasThe835tOfitWasTheW0r5tOf). Pero evita la información personal como cumpleaños, números de teléfono o apodos, ya que este tipo de información puede encontrarse rastreando las redes sociales.
No hay necesidad de recordar todas sus contraseñas
Ahora que tienes una contraseña increíble y resistente a las técnicas de pirateo más comunes, necesitas una forma de recordarla junto con las docenas de otras contraseñas que protegen tus cuentas online. Una forma es escribirla. Algunas personas tienen un cuaderno solo para las contraseñas, y no es una mala forma de guardarlas porque un cuaderno no se puede piratear. Los dos inconvenientes de este método son que necesitas la libreta contigo para que sea útil y que, si la pierdes, habrás perdido todas tus contraseñas y, potencialmente, se las habrás dado a otra persona si puede averiguar qué cuentas son las tuyas.
Si buscas una solución digital para la gestión de contraseñas, tienes dos opciones básicas entre las que elegir: en la nube y local. Un servicio en la nube guarda tus contraseñas en sus servidores, y se puede acceder a ellas desde cualquier lugar y desde cualquier dispositivo. Con un servicio de este tipo, solo tienes que recordar una contraseña, y el gestor de contraseñas en línea se encarga del resto por ti. El inconveniente es que tienes que confiar en un tercero para mantener tus contraseñas seguras. Si te las piratean, te las piratean a ti.
También puedes optar por una solución local. Si no confías la seguridad de tus contraseñas a un tercero, descarga un software que gestione tus credenciales desde tu ordenador o teléfono. Es como la versión digital de la solución de papel y lápiz. Solo que tus contraseñas se almacenan en un archivo cifrado en tu ordenador en lugar de en un cuaderno que guardas en tu escritorio. El inconveniente de los gestores de contraseñas locales es que sólo sirven para el dispositivo que estás utilizando.
Una de las ventajas de los gestores de contraseñas es que suelen generar una contraseña segura para ti. Averiguar cuál te conviene depende de tus necesidades y preferencias personales, pero algunos son mejores que otros.