package auth import ( "crypto/rand" "encoding/base64" ) // GenerateState returns a cryptographically random, URL-safe state value // for use as a CSRF token in the OIDC authorization flow. func GenerateState() (string, error) { b := make([]byte, 32) if _, err := rand.Read(b); err != nil { return "", err } return base64.RawURLEncoding.EncodeToString(b), nil }