Fonction Crypt en PHP et Golang
Introduction au problème
La fonction PHP crypt() génère une valeur hachée d'une chaîne donnée en utilisant un algorithme spécifié. Une question récente s'est posée à la recherche d'un équivalent Golang de cette fonction qui produirait des résultats identiques pour des valeurs d'entrée et de hachage spécifiques.
Tentatives infructueuses
Plusieurs tentatives ont été faites pour implémenter la Go équivalent à la fonction crypt() de PHP :
Solution
Même si on n'a pas trouvé d'équivalent exact à la "fonction Go crypt", une alternative a été découverte :
Exemple
Le code Go suivant peut être utilisé :
<code class="go">import "golang.org/x/crypto/bcrypt" check := bcrypt.CompareHashAndPassword([]byte("a$f5561d2634fb28a969f2dO8QeQ70f4bjCnF/.GvPpjj.8jgmtzZP2"), []byte("enter-new-password")) log.Println(check)</code>
Ce code retournera nul si la version bcrypt de "enter-new-password" est la même que la valeur de hachage fournie ; sinon, il renverra une erreur.
Notes supplémentaires
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!