Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah Saya Boleh Memastikan Keserasian Bcrypt Password Hashing Antara Node.js dan Golang?

Bagaimanakah Saya Boleh Memastikan Keserasian Bcrypt Password Hashing Antara Node.js dan Golang?

Barbara Streisand
Barbara Streisandasal
2024-12-06 22:46:15785semak imbas

How Can I Ensure Bcrypt Password Hashing Compatibility Between Node.js and Golang?

Bcrypt Password Hashing in Golang: Mencapai Keserasian dengan Node.js

Memindahkan sistem pengesahan dari Node.js ke Golang memerlukan menangani keserasian cincangan kata laluan . Artikel ini membentangkan penyelesaian menggunakan Node.js bcrypt dan setara dengannya dalam Golang, golang.org/x/crypto/bcrypt.

Untuk mereplikasi rentetan cincang yang dijana oleh Node.js bcrypt dalam Golang, gunakan kod berikut :

hashedPassword, err := bcrypt.GenerateFromPassword(password, bcrypt.DefaultCost)

Berikut ialah contoh yang berkesan:

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
}

Oleh menggunakan golang.org/x/crypto/bcrypt, anda boleh memastikan keserasian dengan sistem pengesahan sedia ada anda semasa berhijrah ke Golang.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memastikan Keserasian Bcrypt Password Hashing Antara Node.js dan Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn