generateState generates a random state parameter for CSRF protection.
()
| 126 | |
| 127 | // generateState generates a random state parameter for CSRF protection. |
| 128 | func generateState() string { |
| 129 | b := make([]byte, 16) |
| 130 | if _, err := rand.Read(b); err != nil { |
| 131 | panic("crypto/rand failed: " + err.Error()) |
| 132 | } |
| 133 | return base64.RawURLEncoding.EncodeToString(b) |
| 134 | } |