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

Comment générer un hachage SHA d'une chaîne en Go ?

Barbara Streisand
Libérer: 2024-11-23 08:29:15
original
136 Les gens l'ont consulté

How to Generate a SHA Hash of a String in Go?

Comment générer facilement un hachage SHA d'une chaîne dans Go

Générer un hachage SHA d'une chaîne est une tâche courante en programmation, et Golang fournit un moyen simple de faites-le en utilisant le package crypto/sha. Voici un exemple pratique pour vous aider à comprendre le processus :

Considérez le scénario dans lequel vous devez générer un hachage SHA pour la chaîne de mot de passe myPassword := "beautiful". Pour y parvenir dans Go, suivez l'extrait de code donné :

import (
    "crypto/sha1"
    "encoding/base64"
)

func generateSHA(password string) string {
    hasher := sha1.New()
    hasher.Write([]byte(password))
    sha := base64.URLEncoding.EncodeToString(hasher.Sum(nil))
    return sha
}

func main() {
    myPassword := "beautiful"
    result := generateSHA(myPassword)
    fmt.Println("SHA hash:", result)
}
Copier après la connexion

Le processus implique l'utilisation de sha1.New() pour créer une nouvelle instance d'algorithme de hachage SHA-1. Ensuite, hasher.Write() est utilisé pour transmettre les octets du mot de passe à l'algorithme. Enfin, hasher.Sum(nil) calcule le hachage du message et le convertit en base64 à l'aide de base64.URLEncoding.EncodeToString().

N'oubliez pas que les hachages SHA doivent être stockés sous forme d'octets bruts dans les bases de données pour des raisons de sécurité. Pour l'affichage utilisateur ou la compatibilité des URL, le codage hexadécimal ou Base64 est couramment utilisé.

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