package auth import ( "golang.org/x/crypto/bcrypt" ) // VerifyPassword 验证密码(支持明文和 bcrypt 哈希) // 优先使用哈希验证,如果哈希为空则回退到明文验证 func VerifyPassword(password string, passwordHash string, storedPassword string) bool { // 如果配置了哈希密码,使用 bcrypt 验证 if passwordHash != "" { err := bcrypt.CompareHashAndPassword([]byte(passwordHash), []byte(password)) return err == nil } // 否则回退到明文验证(不推荐,需要警告) return password == storedPassword }