security
Package security provides security validation and protection utilities
import "github.com/luxfi/node/security"Package security provides security validation and protection utilities
Functions
ConstantTimeCompare
func ConstantTimeCompare(a, b string) boolConstantTimeCompare performs constant-time comparison of two strings Returns true if strings are equal, false otherwise
SafeIntConversion
func SafeIntConversion(value int64, bitSize int) (int64, error)SafeIntConversion safely converts between integer types checking for overflow
SafeUintConversion
func SafeUintConversion(value int64, bitSize int) (uint64, error)SafeUintConversion safely converts to unsigned integer checking for overflow
SanitizeSQL
func SanitizeSQL(input string) stringSanitizeSQL performs basic SQL injection prevention This is a basic implementation - use prepared statements for production
ValidateAlphanumeric
func ValidateAlphanumeric(s string) errorValidateAlphanumeric checks if a string contains only alphanumeric characters
ValidateEmail
func ValidateEmail(email string) errorValidateEmail performs basic email validation
ValidateURL
func ValidateURL(url string) errorValidateURL performs basic URL validation
Types
InputValidator
InputValidator provides methods for validating and sanitizing user input
func NewInputValidator() *InputValidatorfunc (v *InputValidator) ValidateFilePath(path string) errorfunc (v *InputValidator) ValidateIPAddress(addr string) errorfunc (v *InputValidator) ValidatePort(port int) errorfunc (v *InputValidator) ValidateStringLength(s string) errorRateLimiter
RateLimiter provides basic rate limiting functionality
func NewRateLimiter(limit int, windowSeconds int64) *RateLimiterfunc (r *RateLimiter) Allow(clientID string, now int64) bool