Se afirma que las contraseñas informáticas complejas no son una protección contra las supercomputadoras que prueban todas las permutaciones posibles. ¿Cómo puede una computadora cuántica probar posibilidades si la computadora objetivo inserta límites en intentos repetidos?

Si se encuentra en una situación así, en la que tiene que ponerse en contacto con otra computadora, el uso de una supercomputadora no lo ayudará en absoluto. El reclamo se trata de una situación diferente, es decir, una en la que se ha filtrado alguna información (generalmente contraseñas cifradas). Para eso, primero tenemos que ver cómo se verifican las contraseñas.

Lo más fácil sería tener una lista de todos los usuarios y sus contraseñas. Sin embargo, esto no solo es fácil, también es inseguro. Las fugas de seguridad pueden suceder de muchas maneras, por lo que es mejor crear su sistema teniendo esto en cuenta. Debido a eso, las contraseñas generalmente se guardan de forma cifrada. Se usa algo llamado función hash. Esta es una función f tal que es fácil calcular f (x) dada x, pero difícil o imposible calcular x dada f (x). En lugar de la contraseña en sí, su hash se guarda, y cuando alguien ingresa una contraseña, el hash se calcula y verifica con la lista. (es un poco más complicado que eso, con el uso de las llamadas sales, pero eso no es importante para el asunto en cuestión)

Esta es la situación a la que se aplica el argumento de prueba con supercomputadoras: si tuviera una contraseña cifrada disponible, pero no la contraseña en sí, entonces una supercomputadora podría decidir muy rápidamente cuál era la contraseña original, incluso si fuera compleja, simplemente revisando todas las contraseñas posibles y calcular cuál es el hash.

La mayoría de los atacantes obtienen acceso a hashes de contraseñas [math] ^ 1 [/ math]. Esto se puede hacer a través de filtraciones, donde alguien obtiene un archivo de nombres de usuario y sus hashes de contraseñas, o al obtener acceso a la red y escuchar a escondidas, para que pueda recoger los hash de contraseñas mientras se transmiten al sistema.

Una vez que tenga un hash, puede hacer un hash de contraseñas potenciales y probarlas contra el hash tanto como lo desee: en realidad no está intentando iniciar sesión con ellas, simplemente está buscando una que funcione. Una vez que haya encontrado uno, intentará iniciar sesión con él. Dado que en ese momento ya tiene una contraseña de trabajo confirmada, ingresará en el primer intento, a menos que el usuario de la cuenta haya cambiado su contraseña en el tiempo que lleva.

1: El hash es similar al cifrado y utiliza muchos de los mismos principios, pero es unidireccional: no puede recuperar la contraseña del hash; no contiene suficiente información. Por lo tanto, los programas de descifrado de contraseñas prueban posibles contraseñas para ver si tienen el mismo hash que el deseado.

¿Quién dice eso? Dudo que sea alguien que sepa de lo que está hablando …

Las contraseñas complejas definitivamente ofrecen protección, incluso contra computadoras cuánticas (un control de calidad solo supera una aceleración cuadrática en esa tarea, por lo que si bien hay una reducción de la fuerza, no solo mágicamente te da la contraseña correcta independientemente de su longitud).

Y sí, si esto es, por ejemplo, algún servicio de red que no quiere responder a intentos rápidos y repetidos, entonces nada será de ayuda. Por lo general, para descifrar la contraseña, necesita obtener de alguna manera el archivo que almacena su hash, ya sea pirateando el servidor o, por ejemplo, si es una computadora local con Windows, arrancando en un modo que le permita volcar los secretos de LSA (así que nuevamente no tiene que pasar por Windows para probar las contraseñas).

Leí sobre esto una vez, pero no recuerdo los detalles. De alguna manera se hace sin conexión con un programa escrito solo para este propósito. Puede encontrar más información en Google.