Elegir preajustes
Los preajustes son configuraciones de partida. Elige uno y revisa las opciones efectivas de la versión del ofuscador seleccionada.
Ver
Which Obfuscator.io Preset Should I Use? VM Low vs Default vs High
A partir de la versión 8.0.0, VM Default es el punto de partida recomendado para producción. VM Low resulta útil para una evaluación inicial porque desactiva VM Self Defending y VM Debug Protection. Los demás preajustes de VM activan ambas defensas. En el plan Free, el panel solo ofrece VM Low; los demás preajustes de VM y sus opciones de VM requieren un plan de pago.
VM (8.0.0 y posteriores)
| optionsPreset | Qué cambia |
|---|---|
vm-low-obfuscation | VM Low empieza con menos defensas VM y deja desactivados stringArray y vmBytecodeArrayEncoding. Úsalo para evaluar la ofuscación VM, no como base de una compilación de pruebas. |
vm-default | VM Default combina protección VM, protección String Array y defensas avanzadas. Es el punto de partida para producción. |
vm-high-obfuscation | VM High añade Stateful Opcodes, Stack Encoding y Compact Dispatcher. Mide el coste en tu código. |
vm-ultra-high-obfuscation | VM Ultra High mantiene Stateful Opcodes y Stack Encoding, pero no Compact Dispatcher, y añade Control Flow Flattening y otras transformaciones básicas. Esto reduce considerablemente el rendimiento durante la ejecución. |
A partir de la versión 8.0.0, vm-anti-llm (VM Anti-LLM) y vm-medium-obfuscation (VM Medium) dan las mismas opciones que vm-default y ya no aparecen como opciones independientes en el panel. Las versiones anteriores pueden mostrarlos por separado.
Ofuscación básica
| optionsPreset | selfDefending | debugProtection | disableConsoleOutput |
|---|---|---|---|
default | false | false | false |
low-obfuscation | true | false | true |
medium-obfuscation | true | false | true |
high-obfuscation | true | true | true |
Los preajustes más intensivos pueden aumentar el tamaño de salida y el tiempo de ejecución. Mide el arranque, las rutas frecuentes y el tamaño comprimido de tu bundle en vez de asumir multiplicadores fijos de ralentización. Para proteger funciones concretas, consulta Selección de funciones específicas.
Para una compilación mediante la API, obtén las opciones de un preajuste integrado para tu versión del ofuscador desde el endpoint de preajustes y envíalas como options (consulta Referencia de la API).
Preajustes personalizados
Los preajustes integrados son puntos de partida. Siempre que ajustes algo sobre uno de ellos, guarda el resultado en lugar de reconstruirlo la próxima vez: selecciona Nuevo preajuste en la biblioteca de preajustes, en la parte superior del panel de opciones. El preajuste guarda cada opción tal como está ahora, con el nombre que elijas y una descripción opcional; no guarda la versión del ofuscador, así que se aplica la versión seleccionada en el momento de la compilación. Tus propios preajustes aparecen en Personalizados. Los preajustes personalizados están disponibles en los planes Pro y superiores, hasta 20 por cuenta.
Haz clic en la tarjeta de un preajuste para aplicarlo al panel de opciones. En cuanto cambias una opción, el preajuste aplicado se marca como Editado: Deshacer cambios restablece sus opciones y, en tus propios preajustes, Actualizar preajuste guarda los cambios en él. Antes de que otro preajuste sobrescriba cambios sin guardar, se te pide confirmación. Editar, duplicar y eliminar están en el menú del preajuste. Una configuración habitual es un preajuste de producción y una variante de pruebas de ese mismo preajuste que añade las sobrescrituras de Pruebas y CI, de modo que ambas compilaciones ejecutan las mismas transformaciones.
Dos campos más del diálogo de guardado llevan un preajuste más allá de tu propio panel:
- Compartir con mi equipo lo publica para tu equipo, donde también puede convertirse en el preajuste predeterminado del equipo. Solo el propietario del equipo ve el interruptor. Consulta Preajustes compartidos.
- Alias para la API permite que una compilación use el preajuste por nombre: en el paquete
javascript-obfuscator(5.8.0+), conoptionsPresetestablecido con el alias, se obtienen las opciones del preajuste en el momento de la compilación, de modo que la configuración vive en el panel y un cambio allí llega a la siguiente compilación sin ningún commit. Una solicitud directa a la API obtiene las opciones del endpoint de preajustes en una solicitud aparte (consulta Referencia de la API). Consulta Uso del paquete NPM.
