¿Cuántas iteraciones usa la configuración scram-sha-256 en PostgreSQL 10?
Establecer este parámetro en scram-sha-256 cifrará la contraseña con SCRAM-SHA-256.
El registro de compilación lee .
Agregar compatibilidad con SCRAM-SHA-256 para la negociación y el almacenamiento de contraseñas (Michael Paquier, Heikki Linnakangas) Esto demuestra una mayor seguridad que el método de negociación y almacenamiento md5 existente.
Es una variable de tiempo de compilación en scram-common.h conocida como SCRAM_ITERATIONS_DEFAULT . Actualmente está configurado en 4096.
Eso está sustancialmente bajo la "regla general" de especificaciones que se cita en noviembre de 2015 como 15,000. Actualmente es el valor más bajo para las iteraciones permitidas. Desde RFC-7677
La fuerza de este mecanismo depende en parte del recuento de iteraciones hash, como se indica con "i" en [RFC5802]. Como regla general, el recuento de iteraciones de hash debe ser tal que una máquina moderna tarde 0,1 segundos en realizar el algoritmo completo; sin embargo, es poco probable que esto sea práctico en dispositivos móviles y otros sistemas de rendimiento relativamente bajo. En el momento en que se escribió esto, la regla general indica que se requieren alrededor de 15 000 iteraciones; sin embargo, un recuento de iteraciones de hash de 4096 tarda alrededor de 0,5 segundos en los teléfonos móviles actuales. Este costo computacional se puede evitar almacenando en caché ClientKey (suponiendo que el recuento de iteraciones de Salt y hash sea estable). Por lo tanto, la recomendación de esta especificación es que el recuento de iteraciones de hash DEBE ser al menos 4096, pero se debe considerar cuidadosamente el uso de un valor significativamente más alto, particularmente donde el uso móvil es menos importante.