Crypt-Funktion in PHP und Golang
Problemeinführung
Die PHP-Funktion crypt() generiert mithilfe eines angegebenen Algorithmus einen Hashwert einer bestimmten Zeichenfolge. Kürzlich stellte sich die Frage nach einem Golang-Äquivalent dieser Funktion, das identische Ergebnisse für bestimmte Eingabe- und Hashwerte liefern würde.
Fehlgeschlagene Versuche
Es wurden mehrere Versuche unternommen, die zu implementieren Go-Äquivalent zur crypt()-Funktion von PHP:
Lösung
Obwohl kein genaues Äquivalent zur „Go-Crypt-Funktion“ gefunden wurde, wurde eine Alternative entdeckt:
Beispiel
Der folgende Go-Code kann verwendet werden:
<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>
Dieser Code gibt Null zurück, wenn die bcrypt-Version von „enter-new-password“ mit dem bereitgestellten Hashwert übereinstimmt; andernfalls wird ein Fehler zurückgegeben.
Zusätzliche Hinweise
Das obige ist der detaillierte Inhalt vonGibt es ein echtes Go-Äquivalent zur crypt()-Funktion von PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!