Bcrypt-Passwort-Hashing in Golang: Kompatibilität mit Node.js erreichen
Die Migration von Authentifizierungssystemen von Node.js nach Golang erfordert die Bewältigung der Passwort-Hashing-Kompatibilität . Dieser Artikel stellt eine Lösung vor, die Node.js bcrypt und sein Äquivalent in Golang verwendet, golang.org/x/crypto/bcrypt.
Um die von Node.js bcrypt in Golang generierte Hash-Zeichenfolge zu replizieren, verwenden Sie den folgenden Code :
hashedPassword, err := bcrypt.GenerateFromPassword(password, bcrypt.DefaultCost)
Hier ist ein funktionierendes Beispiel:
package main import ( "golang.org/x/crypto/bcrypt" "fmt" ) func main() { password := []byte("MyDarkSecret") hashedPassword, err := bcrypt.GenerateFromPassword(password, bcrypt.DefaultCost) if err != nil { panic(err) } fmt.Println(string(hashedPassword)) err = bcrypt.CompareHashAndPassword(hashedPassword, password) fmt.Println(err) // nil means it is a match }
Durch die Nutzung golang.org/x/crypto/bcrypt können Sie bei der Migration zu Golang die Kompatibilität mit Ihrem vorhandenen Authentifizierungssystem sicherstellen.
Das obige ist der detaillierte Inhalt vonWie kann ich die Bcrypt-Passwort-Hashing-Kompatibilität zwischen Node.js und Golang sicherstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!