10
votes

BCRYPT - Combien d'itérations / coût?

J'ai lu certains articles disant que vous devez définir le coût d'au moins 16 (2 16 ), pourtant d'autres disent 8 ou c'est bien.

Y a-t-il une norme officielle pour la qualité du coût?


2 commentaires

Définissez-le afin que vos utilisateurs ne se rebellent tout simplement pas parce que la connexion prend trop de temps.


Il y avait déjà déjà expliqué Ancwers Sécurité .stackexchange.com / Questions / 17207 / ... acclamations!


3 Réponses :


10
votes

Le coût que vous devriez utiliser dépend de la rapidité avec laquelle votre matériel (et votre mise en œuvre) est rapide.

De manière générale, un coût de 8 ou 10 est bien - il n'y a pas de retard notable. C'est toujours un énorme niveau de protection et bien mieux que toute solution adulte à l'aide de Shas et de sels. Une fois que vous mettez à niveau votre matériel, vous pouvez augmenter le coût à 16. Je dirais que 16 est un peu élevé à ce moment-là et entraînera probablement des retards nobles (et ennuyeux). Mais si 16 fonctionne pour vous, par tous les moyens, allez-y!


5 commentaires

Merci pour la confirmation / clarification qu'un coût de 8 est sûr. Ne veux jamais prendre de chances avec des choses comme ça haha


8 ou 10 n'est pas proche de suffisamment. 12 ou 13 peut-être.


Erickson - Pouvez-vous corroborer votre réclamation? (et votre bowvote)


J'ai essayé 15 tours et mon serveur a commencé à geler pendant environ 7 secondes pendant que hachage, devrais-je rester à 10 ans?


Si vous pensez que 7 secondes est trop longue, vous devriez rester à 10 ans.



10
votes

Vous devez définir le nombre d'itérations à la valeur maximale qui est toujours "tolérable" en fonction du matériel que vous utilisez et de la patience des utilisateurs. Plus haut est meilleur.

Le point entier du nombre d'itérations est de rendre le traitement du mot de passe lent - c'est-à-dire de la ralentir pour l'attaquant qui "essaie" de mots de passe potentiels. Le plus lent le mieux. Malheureusement, élever le nombre d'itérations le rend lentement pour vous aussi ...

En règle générale, considérez qu'un attaquant brisera les mots de passe en essayant, en moyenne, environ 10 millions (10 7 ) de mots de passe potentiels. Si vous définissez le nombre d'itérations de l'itération afin que le coup de mot de passe prend 1 seconde pour vous et que vous considérez que l'attaquant peut rassembler dix fois plus de puissance informatique que vous, alors il le faudra 10 7 * 1/10 secondes, soit environ 12 jours. Si vous définissez le nombre d'itérations de l'itération afin que le hachage de mot de passe ne prend que 0,01 seconde sur votre PC, l'attaquant est fait en trois heures.


0 commentaires

3
votes

Le coût doit dépendre de votre matériel.

Vous devez tester vos paramètres de coûts et visez le 100 .. 500 ms intervalle. Bien sûr, si vous travaillez avec des informations très sensibles, le temps pourrait être 1000 ms ou même plus.


0 commentaires