package cybersecurity

// IsHex verifica si el string proporcionado es una cadena hexadecimal valida.
// Requiere longitud par y que todos los caracteres sean digitos hex (0-9, a-f, A-F).
func IsHex(s string) bool {
	if len(s) == 0 || len(s)%2 != 0 {
		return false
	}
	for _, c := range s {
		if !((c >= '0' && c <= '9') || (c >= 'a' && c <= 'f') || (c >= 'A' && c <= 'F')) {
			return false
		}
	}
	return true
}
