Pregunta

Al crear un mecanismo de "contraseña olvidada", es posible que deseemos crear una contraseña temporal para el usuario que se almacena mediante SHA1 (no dude en sugerir otro mecanismo de criptografía de C#).

¿Cuánto tiempo debemos hacer la contraseña temporal?Demasiado corto, podría ser forzado.¿Demasiado largo y la longitud innecesaria es redundante ya que la cadena tiene hash de todos modos?(Dado que una cadena de 20 y 50 caracteres da como resultado un hash de la misma longitud de todos modos)

Actualizar
Lo siento si esto fue engañoso.Claro que podemos escoger un número del aire, pero me preguntaba si había una buena razón matemática para escoger 13 en lugar de 12.

¿Fue útil?

Solución

Creo que este es un buen consejo en relación con las contraseñas temporales:

La guía definitiva para formar la autenticación basada en web

Se habla de evitar la generación de ellos a favor de llegar a la verdadera acción que el usuario desea.

Otros consejos

por lo general ir con 10 caracteres. No hay ninguna razón particular para que, sólo algo que supongo que quede por encima de la media para una contraseña elegida por el usuario.

Sólo por el hecho de que se genera aleatoriamente, probablemente será más seguro y más difícil de fuerza bruta que cualquier elegido por sus usuarios. La gente elige contraseñas estúpidos como myspace1, stackoverflow1, 12341234, etc.

Si la clave está en caracteres alfanuméricos que sólo tiene alrededor de 6 bits de datos utilizables por carácter y por lo tanto usted es incorrecto que no tiene sentido hacer una contraseña de más de 20 caracteres.

Parece que usted está preocupado por hacer la contraseña temporal más fuerte que la contraseña del usuario ... cuando en realidad, algo así como un 10 caracteres base 64 (o similar - puntuacion, etc) va a ser muy duro de roer y mucho más fuerte que la contraseña del usuario generará ....

Que sea un tamaño variable, así (por ejemplo 8-12 caracteres) que hará que sea más difícil de fuerza bruta ... si el atacante sabe que regrese una contraseña de carácter X todo lo que tienen que hacer es probar todas las contraseñas con N. .. suponiendo que n es grande que va a ser poco práctico, pero variando el tamaño de N será al menos que sea mucho más difícil para ellos.

Steve Gibson ha creado un " Ultra Alta Seguridad Password Generator ".
En esa página se genera 3 contraseñas diferentes en cada pantalla de la página:

  • 64 caracteres hexadecimales aleatorios (0-9 y A-F)
  • 63 caracteres ASCII imprimibles al azar
  • 63 caracteres alfanuméricos al azar (a-z, A-Z, 0-9)

También explica las razones detrás de esto. Es una buena lectura. Espero que esto ayude.

Elija la longitud que su sitio especifique según lo recomendado para los usuarios.Al generar una cadena aleatoria de caracteres base64, dormiría seguro por la noche con una contraseña de 8 caracteres.Pero, por supuesto, limitaría los intentos de inicio de sesión a una vez cada X segundo y desactivaría temporalmente la cuenta después de Y intentos fallidos.

Y recuerda agregar un nombre único por usuario. sal antes del hash, para frustrar ataques basados ​​en bases de datos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top