2 votes

Combien d'itérations le paramètre scram-sha-256 utilise-t-il dans PostgreSQL 10 ?

Combien d'itérations le paramètre scram-sha-256 utilise-t-il dans PostgreSQL 10 ?

El Les docs disent juste

Si vous définissez ce paramètre sur scram-sha-256, le mot de passe sera crypté avec SCRAM-SHA-256.

El le journal de construction indique .

Ajouter le support SCRAM-SHA-256 pour la négociation et le stockage des mots de passe (Michael Paquier, Heikki Linnakangas) Cela prouve une meilleure sécurité que la méthode existante de négociation et de stockage md5.

3voto

Evan Carroll Points 13420

C'est une variable de compilation dans scram-common.h connu sous le nom de SCRAM_ITERATIONS_DEFAULT . Actuellement, il est réglé sur 4096.

C'est nettement moins que la "règle empirique" des spécifications, qui est citée en novembre 2015 comme étant de 15 000. C'est actuellement la valeur la plus basse pour les itérations autorisées. Sur RFC-7677

La force de ce mécanisme dépend en partie du hachage. d'itération du hachage, comme indiqué par "i" dans [RFC5802]. En règle générale le nombre d'itérations de hachage devrait être tel qu'une machine moderne mettrait 0,1 seconde pour effectuer l'algorithme complet. Cependant, il est peu probable que cela soit pratique sur les appareils mobiles et autres performances relativement faibles. Au moment de la rédaction de ce document, la règle empirique donne environ 15 000 itérations nécessaires ; cependant, un nombre d'itérations de hachage de 4096 prend environ 0,1 seconde. de hachage de 4096 prend environ 0,5 seconde sur les téléphones mobiles actuels. Ce coût de calcul peut être évité en mettant en cache le ClientKey (en supposant que le sel et le nombre d'itérations de hachage sont stables). Par conséquent, recommandation de cette spécification est que le nombre d'itérations de hachage de hachage DEVRAIT être d'au moins 4096, mais il convient d'envisager soigneusement l'utilisation d'une valeur sensiblement plus élevée, en particulier dans les cas suivants l'utilisation mobile est moins importante.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X