Question

Je en train de construire deux sites ASP.NET MVC 2, et je me demande quelles sont mes options pour le salage un mot de passe. Avec mon travail de PHP, je habituellement juste obtenu l'horodatage de un utilisateur enregistré, puis en annexe à la fin de leur chaîne de mot de passe avant d'utiliser SHA1 pour hacher la chose entière. Mon instinct est que cette approche peut ne pas être suffisante.

Je suis assez nouveau pour l'administration des utilisateurs avec ASP.NET de toute façon, donc je dis qu'il serait dans mon intérêt pour commencer à utiliser les meilleures pratiques dès le début. Je sais que les formulaires Web ASP.NET ont l'administration des utilisateurs intégrés disponibles, mais je ne suis pas sûr de MVC.

Était-ce utile?

La solution

Le seul point d'un SEL est d'empêcher les attaques de l'arc, où plusieurs utilisateurs ont le même hachage pour leur mot de passe, inversant un mot de passe signifie que vous savez aussi avec succès, il est le mot de passe pour tout le monde avec le même hachage. Même un seul sel chiffres empêchera que, puisque deux utilisateurs avec le même mot de passe auront des hash si elles ont des sels différents.

Tant que le sel est quelque chose qui ne changera pas, et qui est différent pour chaque utilisateur, une valeur bien. Timestamp de leur inscription, à condition que vous ne mettez pas à jour ce domaine (qui annuleraient leur hachage de mot de passe et empêcher leur connexion) est un choix bien.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top