¿Contraseñas en un archivo o por separado?

2

Tengo un programa que borra algunas contraseñas y las guarda en archivos .txt, no estoy usando bases de datos para el almacenamiento.

Mi pregunta es: ¿se considera más seguro guardar contraseñas con hash en un archivo o separarlas?

Ejemplo 1

admin.txt - contraseña hash

user1.txt - contraseña hash

Ejemplo 2

Passwords.txt = contraseñas de hash del administrador / usuario1 en líneas separadas

¿Es uno más seguro que el otro? El único problema con el segundo ejemplo es cómo determinaría a quién pertenece la contraseña.

Creo que, en mi opinión, elegiría el primer ejemplo porque de esa manera también puede comparar los nombres de usuario ingresados para que un atacante no pueda simplemente enviar el botón de contraseña con posibles contraseñas.

    
pregunta Danny Watson 02.01.2017 - 23:06
fuente

3 respuestas

2

Estoy de acuerdo con las otras respuestas en que, desde una perspectiva de seguridad, no importa qué método utilice. Sin embargo, me gustaría abordar una de sus otras preguntas para asegurarme de que estemos en la misma página:

  

El único problema con el segundo ejemplo es cómo determinaría qué contraseña pertenece a quién.

Si utiliza el método de archivo único, podría hacer algo como esto:

username|salt|hashed-password
username2|different-salt|another-hashed-password
...

Tenga en cuenta que si alguna vez tiene muchos usuarios (digamos más de 100 K), puede comenzar a tener problemas de rendimiento con los dos métodos que describió, y una base de datos probablemente sea la mejor manera de hacerlo.

    
respondido por el TTT 03.01.2017 - 06:29
fuente
5

Haz lo que resulte en un código menos / más simple.

Desde la perspectiva de un modelo de amenaza, si un atacante puede acceder a un archivo, puede acceder al otro. Es mucho más propenso a tener problemas con fallas lógicas en su código, así que mantenga el código simple y corto. Elija cualquiera de las dos opciones que le ofrece más simplicidad.

Además, asegúrese de que entiende el hashing de contraseñas correctamente, y siga las buenas prácticas .

    
respondido por el Polynomial 02.01.2017 - 23:48
fuente
0

Creo que no hay un método mejor que otro para su caso ... en un escenario estándar (todos los usuarios y contraseñas con hash en la misma tabla en una base de datos), por lo que si se accede al mismo riesgo, se accede a todos. .

Si tiene una falla en su web que causa algún tipo de acceso a un archivo, probablemente se deba a la ejecución del comando, por lo que se accederá a todos los archivos.

En mi opinión, puedes hacerlo por tu cuenta.

    
respondido por el OscarAkaElvis 02.01.2017 - 23:39
fuente

Lea otras preguntas en las etiquetas