Chiffrement/Hachage de texte en clair les mots de passe en base de données

J'ai hérité une application web que je viens de découvrir les magasins de plus de 300 000 noms d'utilisateur/mots de passe en clair dans une base de données SQL Server. Je me rends compte que c'est une Très Mauvaise Chose™.

Sachant que je vais mettre à jour le login et le mot de passe de processus de mise à jour pour crypter/décrypter, et avec le plus petit impact sur le reste du système, que recommanderiez-vous comme le meilleur moyen de supprimer le texte en clair les mots de passe de la base de données?

Toute aide est appréciée.

Edit: Désolé si je n'était pas clair, je voulais vous demander quel serait votre procédure pour crypter/hachage du mot de passe, pas de chiffrement/méthodes de hachage.

Dois-je simplement:

  1. Faire un backup de la DB
  2. Mise à jour de l'ouverture/mise à jour le mot de passe de code
  3. Après les heures de travail, aller à travers tous les enregistrements dans la table de hachage du mot de passe et le remplacement de chacun
  4. De Test pour s'assurer que les utilisateurs peuvent toujours login/mise à jour des mots de passe

Je suppose que mon problème est plus du nombre d'utilisateurs, donc je veux m'assurer que je suis en train de faire cela correctement.

  • Très Mauvaise Chose(tm) 🙂
  • Je ne pense pas que vous avez travaillé à vos question. Vous voulez savoir comment obtenir les données d'une base de données relationnelle? Que serait une instruction select.
  • Je sais comment récupérer des documents, c'est plus une question de procédure... Désolé si c'était pas clair.
  • Avez-vous mis la main sur le Reddit utilisateur DB? 😉
  • Double Possible de Sécuriser le Hachage de Mot de passe
  • Je ne suis pas sûr de savoir comment cet enfant de 7 ans question avec plus de 34 000 points de vue est un doublon de 6 ans question avec moins de 5 000 points de vue, mais apparemment, vous pensez qu'elle est. Je suis d'accord que je ne voudrais pas demander à ce qu'une nouvelle question sur DONC, aujourd'hui, mais cela a été demandé avant toutes les autres émissions liées à la Pile de sites d'Échange de l'existence. La question elle-même est plus sur le processus de migration à partir de texte brut, plus sûrs, les mots de passe, pas de la mise en œuvre spécifique de chiffrement/méthodes de hachage.
  • Tout simplement parce que nous avons laissé les doublons de rester pour quelques années ne signifie pas que nous devrions les garder ouverts quand nous les trouvons. Et je ne vois pas comment l'existence d'autres sites SE sont pertinentes.
  • Aussi, puisque vous êtes toujours là, je suggère de commutation de la accepté de répondre à un bon one — pas celle qui prétend que les mots de passe sont “crypté”, ou que MD5 est un bon choix pour un hachage de mot de passe. stackoverflow.com/a/287883 et stackoverflow.com/a/287738 sont les meilleures réponses qu'ils ont laissé sur un hash du mot de passe doit être salé et lent.
  • Ma mention d'autres SE sites était de répéter que c'était plus d'un processus/procédure de question que j'aurais sans doute demandé sur programmers.stackexchange.com s'il avait existé quand j'ai demandé à l'origine. Je ne pense pas que ce soit un doublon que je n'ai pas demandé algorithme de hachage doit être utilisé. L'actuel accepté réponse a été la meilleure réponse à l'époque que la question d'un processus de migration de texte clair des mots de passe pour plus de sécurité mise en œuvre.

InformationsquelleAutor Jonathan S. | 2008-11-13