Bonjour à tous,
Depuis quelque temps je suis à la recherche d’explications claires et concises en vain. C’est pour cela que je viens solliciter vos connaissances et compréhensions à ce sujet.
Je vais essayer de résumé ma compréhension de ce sujet et vous pourrez alors si vous le voulez bien éclairer ma lanterne.
La fonction crypt() permet de hacher une chaîne de caractères (jusque-là tout va bien).
Elle prend deux arguments la chaîne de caractères (obligatoire) et Salt.
La chaîne de caractères ne tient compte que des 8 premiers caractères.
Salt permet de choisir le type de hachage, le nombre de fois ou la chaîne passe par la boucle de hachage et une chaîne de caractères dont le nombre varie en fonction des différents hachs.
Première question :
Si la chaine de caractères est plus grande que 8, il faudra la couper tous les 8 caractères puis la hacher et enfin la concaténer avec le précèdent hach ?
Sinon saisir un mot de passe supérieur à 8 caractères serait totalement inutile non ?
Deuxième question :
Apparemment seul un des différents hachs disponibles et viable en termes de sécurité Blowfish. D’accord, sans aller dans le pourquoi, n’y aurait-il pas mieux pour sécuriser les mots de passes?
Troisième question :
La chaîne de caractères contenue dans le sel permet d’empêcher l’utilisation d’attaque par dictionnaire, mais si elle est attribuée « aléatoirement » comment vérifier que le mot de passe saisi dans la bdd correspond bien à celui saisi lors de l’identification ?
Si les sels sont différents les hachs le seront aussi.
Il faudrait la stocker dans la basse mais dans ce cas-là elle perdrait son utilité non ?
Je remercie d’avance tous ceux qui pourront m’aider à mieux comprendre.
Je tiens aussi à m’excuser pour les fautes d’orthographes.
Je vous souhaite à tous une excellente journée.
Partager