comment stocker les mots de passe des utilisateurs de mon site dans la base donné sql doivent-ils être crypté ?
et comment sécuriser l'opération d'authentification ?
merci de me donner quelques conseils.
comment stocker les mots de passe des utilisateurs de mon site dans la base donné sql doivent-ils être crypté ?
et comment sécuriser l'opération d'authentification ?
merci de me donner quelques conseils.
la pratique courante veux qu'on hashe le mot de passe pour le stocker dans la base de donnée et qu'on fasse subit ce même hash au mot de passe soumis par l'utilisateur lors de sa tentative de connection. Si les deux résultats sont identiques, le mot de passe est accepté:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 mot de passe configuré ---> hash ---> base de donnée | v mot de passe soumis ---> hash ---> comparaison ---> ok ou pas
Pour ce qui est de "sécuriser" l'opération, c'est déjà fait. Pour ce qui est de sécuriser la transmission du mot de passe par le client, il faut passer par https
https: crypté, donc pas interceptable
le hash est un algorithme cryptographique à sens unique, irréversible donc. Ce qui empeche de trouver le mot de passe à partir du hash qu'on volerais dans la base de donnée. En pratique on utilise souvent md5 comme hash actuellement, mais il en existe d'autre plus sûr, comme SHA-1 ou la série des SHA-2 (SHA-256, SHA-384 ou SHA-512). Souvent aussi on concatène le login au mot de passe avant de faire le hashage, pour plus de sécurité (afin d'éviter les attaques par table de hashage).
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager