Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
Generer hash mot de passe
|
Generer hash mot de passe ( motDePasse {; options} ) -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
motDePasse | Chaîne |
![]() |
Mot de passe utilisateur (seuls les 72 premiers caractères sont utilisés) | |||||
options | Objet |
![]() |
Objet contenant des options | |||||
Résultat | Chaîne |
![]() |
Hash du mot de passe | |||||
La commande Generer hash mot de passe retourne un hash de motDePasse, généré par un algorithme de hachage cryptographique.
Passez une chaîne dans le paramètre motDePasse. La commande Generer hash mot de passe retourne un hash, aussi appelé empreinte cryptographique, de ce mot de passe. Une empreinte cryptographique différente est générée à chaque appel de la commande avec le même mot de passe. Vous devrez utiliser la commande Verifier hash mot de passe pour contrôler cette empreinte.
Dans l'objet options, passez les propriétés à utiliser lors de la génération de l'empreinte du mot de passe. Les valeurs possibles sont listées dans ce tableau :
Propriété | Type de valeur | Description | Valeur par défaut |
algorithm | chaîne | Algorithme à utiliser. Actuellement, seul "bcrypt" (en minuscules) est pris en charge. | bcrypt |
cost | numérique | Vitesse de hachage. L'algorithme bcrypt prend en charge les valeurs situées entre 4 et 31. | 10 |
Note : Si l'une des valeurs de l'objet options est invalide, une erreur est générée et la commande retourne une chaîne vide.
Les erreurs suivantes peuvent être retournées. Vous pouvez récupérer et analyser les erreurs à l'aide des commandes LIRE PILE DERNIERE ERREUR et APPELER SUR ERREUR.
Numéro | Message |
850 | Password-hash: Algorithme inconnu. |
852 | Password-hash: bcrypt admet un coût qui va de 4 à 31 inclus, le paramètre est hors limite. |
bcrypt est une fonction de hachage de mot de passe basée sur l'algorithme de chiffrement Blowfish. Elle incorpore un salage protégeant contre les attaques par "rainbow table" et est adaptative : il est possible d'augmenter le nombre d'itérations afin de la rendre plus lente et donc plus résistante aux attaques par force brute.
Cet exemple génère un hash de mot de passe à l'aide de bcrypt avec un coût de facteur 4.
C_TEXTE($password)
C_TEXTE($hash)
C_OBJET($options)
$options:=Creer objet("algorithm";"bcrypt";"cost";4)
$password:=Demander("Veuillez entrer votre mot de passe")
$hash:=Generer hash mot de passe($password;$options)
[Users]hash:=$hash
STOCKER ENREGISTREMENT([Users])
Rappel : Un hash différent est généré à chaque appel de la commande avec le même mot de passe. Ce fonctionnement est standard pour les algorithmes tels que bcrypt, puisque les bonnes pratiques consistent à créer un nouveau salage aléatoire pour chaque hash. Reportez-vous à la description de la commande Verifier hash mot de passe pour un exemple de vérification des mots de passe.
Produit : 4D
Thème : Outils
Numéro :
1533
Nom intl. : Generate password hash
Créé : 4D v16 R5
4D - Langage ( 4D v20 R7)