package database import ( "fmt" "golang.org/x/crypto/bcrypt" ) // HashPassword generates a bcrypt hash of the password func HashPassword(password string) (string, error) { hashedPassword, err := bcrypt.GenerateFromPassword([]byte(password), bcrypt.DefaultCost) if err != nil { return "", fmt.Errorf("failed to hash password: %w", err) } return string(hashedPassword), nil } // verifyPassword compares a bcrypt hashed password with its possible plaintext equivalent func VerifyPassword(hashedPassword string, password string) error { return bcrypt.CompareHashAndPassword([]byte(hashedPassword), []byte(password)) }