Maison > développement back-end > Golang > le corps du texte

Comment réaliser un hachage de mot de passe dans Golang équivalent à la fonction crypt() de PHP ?

Linda Hamilton
Libérer: 2024-10-27 02:13:30
original
703 Les gens l'ont consulté

How to Achieve Password Hashing in Golang Equivalent to PHP's crypt() Function?

Équivalent Golang de la fonction crypt() de PHP

La fonction crypt() de PHP est polyvalente dans sa capacité à hacher des valeurs à l'aide de divers algorithmes, notamment sha256, sha512 et Blowfish. Trouver un équivalent Golang exact peut être difficile en raison de ces variations.

Solution alternative utilisant bcrypt

Malgré l'absence d'équivalent Golang exact, bcrypt offre une alternative fiable pour hachage de mot de passe. Voici comment obtenir une fonctionnalité similaire :

<code class="go">import "golang.org/x/crypto/bcrypt"

// Determines if the bcrypt version of "enter-new-password" matches the provided hash
check := bcrypt.CompareHashAndPassword([]byte("a$f5561d2634fb28a969f2dO8QeQ70f4bjCnF/.GvPpjj.8jgmtzZP2"), []byte("enter-new-password"))

// Log the result
log.Println(check)</code>
Copier après la connexion

Ce code renverra zéro si la version bcrypt de "enter-new-password" correspond au hachage fourni et à un objet d'erreur dans le cas contraire.

Considérations :

  • La fonction crypt() de PHP offre une large gamme d'algorithmes de hachage, tandis que Golang nécessite une spécification explicite du type de hachage et du coût.
  • Dans l'exemple à condition, un hachage de type Blowfish a été supposé en fonction de la présence du préfixe "$2a$" dans la valeur de hachage.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!