¿Cómo determinar el buen número de iteraciones de PBKDF2 según la evolución de la tecnología?

6

Estoy utilizando PBKDF2 para derivar contraseñas, pero nunca sé qué se puede considerar como un valor "suficiente" para el recuento de iteraciones.

La tecnología evoluciona muy rápido y también me gustaría saber con qué frecuencia y cuánto debería aumentar el valor (por ejemplo: + 20% cada año).

    
pregunta SuperPython 09.03.2016 - 15:42
fuente

1 respuesta

10

No hay un recuento "suficiente", porque las contraseñas elegidas por el usuario pueden siempre ser completamente débiles, independientemente de lo bien que las entrene. Desea que el recuento sea el valor más alto que puede tolerar.

Recuerde que aumentar el recuento de iteraciones aumenta mecánicamente el costo operativo. Por lo tanto, tendrá que establecer el recuento en un valor que sea lo suficientemente bajo para que su máquina pueda seguir procesando las contraseñas de manera oportuna. Este es un análisis que debe realizar usted mismo, ya que depende de su hardware y la carga máxima esperada y la tolerancia del usuario a los retrasos. Un mayor número de iteraciones tiende a aumentar la vulnerabilidad a los ataques de denegación de servicio.

No aumenta el recuento de iteraciones de forma regular para que coincida con la "tecnología promedio". Incrementa el recuento de iteraciones cuando puede permitírselo, lo que no depende de la disponibilidad general de servidores más rápidos, sino de los servidores que realmente compró y está usando. Por lo tanto, planea un aumento en el recuento de iteraciones cada vez que compre hardware nuevo.

    
respondido por el Thomas Pornin 09.03.2016 - 15:49
fuente

Lea otras preguntas en las etiquetas