BYTEHIDE SHIELD PARA NODE.JS

Node.js Obfuscator

Protege tu código Node.js frente a ingeniería inversa, copia y manipulación. ByteHide Shield ofusca tu JavaScript de servidor con la CLI.

Empezar

CLI

npm install -g @bytehide/shield-cli
shield protect "src/**/*.js" --token YOUR_TOKEN

Instala la CLI globalmente y protege cualquier archivo o glob de Node.js con un único comando. Añádelo a tu build script para que cada release salga protegida.

Guía completa en la documentación

Gratis con una cuenta ByteHide

La primera vez que se ejecuta, Shield pide un project token que lo conecta con tu cuenta. El paquete es gratuito.

Consigue tu token gratis

Cómo funciona

Cómo ofuscar código Node.js

El código Node.js se puede ofuscar como un paso dentro de tu build. Tres pasos.

  1. Paso 01

    Instala la Shield CLI

    Instala @bytehide/shield-cli de forma global o como dev dependency.

  2. Paso 02

    Añade tu project token

    Crea una cuenta gratis en ByteHide, obtén tu token y pásalo a la CLI o a un archivo de configuración.

  3. Paso 03

    Protege tu código

    Ejecuta shield protect sobre tus archivos compilados. Añádelo a tu build script para que cada release salga protegida.

Por qué ofuscar

Por qué ofuscar código Node.js

El código Node.js no corre en el navegador, pero igualmente se distribuye. En el momento en que tu código sale de tus servidores, puede ser leído.

  • El código Node distribuido puede leerseLas herramientas CLI, los paquetes npm, las apps de escritorio construidas sobre Node y el software auto-alojado llevan tu JavaScript a la máquina de otra persona. Allí puede ser inspeccionado.
  • Tu lógica de negocio y tu licenciamiento viven en el códigoEl código de servidor suele contener comprobaciones de licencia, algoritmos propietarios y lógica de integración. Al ser legibles, pueden saltarse o copiarse.
  • La ofuscación protege el código que no puedes mantener en tus servidoresPara todo lo que llega a un cliente o a un dispositivo, la ofuscación es lo que se interpone entre tu lógica y un atacante.

Ejemplo

Ve la ofuscación de Node.js en acción

La ofuscación se entiende mejor cuando la ves. Aquí tienes un módulo Node.js pequeño antes y después de que Shield lo proteja.

Fuente Node.js
const crypto = require('crypto');

function validateLicense(key) {
  const expected = process.env.LICENSE_SECRET;
  const hash = crypto.createHash('sha256').update(key).digest('hex');
  return hash === expected;
}

module.exports = { validateLicense };
Salida ofuscada
var _0xb3=['sha256','hex','LICENSE_SECRET'];(function(_a,_b){var _c=function(_d){while(--_d){_a['push'](_a['shift']());}};_c(++_b);}(_0xb3,0x1f2));var _0x4e=function(_a,_b){_a=_a-0x0;return _0xb3[_a];};var _0x7a=require(_0x4e('0x0'));function _0x1c(_k){var _s=0;while(1)switch(_s){case 0:var _e=process['env'][_0x4e('0x2')];_s=1;break;case 1:var _h=_0x7a['createHash'](_0x4e('0x0'))['update'](_k)['digest'](_0x4e('0x1'));_s=2;break;case 2:return _h===_e;}}
module['exports']={_0x1c};

Mismo comportamiento, resultado ilegible. La salida ofuscada no revela nada sobre tu lógica de licencia ni los nombres de las variables de entorno.

Qué cubre

Qué protege ByteHide Shield en tu código Node.js

Shield aplica su protección a tu código Node.js como parte de tu build. Esto es lo que cubre.

  • Lógica de negocioLas funciones, algoritmos y estructuras de control que definen cómo funciona tu aplicación Node.js se vuelven ilegibles en la salida que se entrega. El comportamiento es idéntico, la lógica deja de serlo.
  • Lógica de licenciamiento y autenticaciónLa validación de licencias, las comprobaciones de autenticación y la lógica de control de acceso se cifran y reestructuran para que no puedan leerse ni saltarse inspeccionando el código.
  • Cadenas y patrones de credencialesEndpoints de API, nombres de variables de entorno, claves y valores de configuración se cifran para que no puedan leerse escaneando el archivo de salida.
  • Cada proyecto, en cada buildLa protección corre como parte de tu build script, así que cada release sale ofuscada automáticamente. No hay un paso manual que olvidar.

El código de servidor que se distribuye queda tan expuesto como un bundle de navegador. Shield lo protege de la misma manera.

Cuándo usarlo

Cuándo necesita ofuscación el código Node.js

No todo el código Node.js tiene el mismo nivel de exposición. El riesgo real es el código Node que llega a la máquina de otra persona.

  • Código de servidor que controlas vs código que distribuyesUn Node.js que solo corre en tu propia infraestructura tiene una exposición menor. El riesgo real es el código Node que se distribuye: herramientas CLI, apps Electron, paquetes npm, software on-premise.
  • Electron y apps de escritorioUna app Electron es código Node.js en la máquina del usuario. Cualquiera puede abrir el paquete y leerlo. La ofuscación es esencial ahí.
  • Paquetes npm distribuidosSi publicas o compartes un paquete Node, su fuente es legible para todos los que lo instalan. La ofuscación protege las partes propietarias.

Dónde corre tu código decide si la ofuscación es opcional o esencial.

Herramienta gratis vs Shield

Ofuscador gratis vs ByteHide Shield

Para probar rápido un único archivo JavaScript, el ofuscador online gratuito es suficiente. Para un proyecto Node.js real, ByteHide Shield protege todo el build.

ByteHide Shield

Protección de nivel producción

Ofuscación esencial
ByteHide ShieldSí, avanzada
Herramienta online gratuita
Integración en el build pipeline
ByteHide Shield
Herramienta online gratuitaNo
Multi-archivo y proyecto completo
ByteHide Shield
Herramienta online gratuitaNo
Virtualización de código
ByteHide Shield
Herramienta online gratuitaNo
Autoprotección en runtime (RASP)
ByteHide Shield
Herramienta online gratuitaNo

La herramienta online gratuita ofusca archivos JavaScript sueltos. ByteHide Shield protege un proyecto Node.js completo, integrado en tu pipeline.

Abre el ofuscador de JavaScript gratuito

Preguntas frecuentes

¿Qué es un ofuscador de Node.js?
Un ofuscador de Node.js transforma tu código Node.js en una versión funcionalmente idéntica pero ilegible. El código se ejecuta exactamente igual, pero pasa a ser muy difícil de leer o de hacer ingeniería inversa.
¿Necesita ofuscación el código Node.js si corre en mi servidor?
El código que se queda en tu propia infraestructura tiene una exposición menor. La ofuscación importa sobre todo cuando el código Node.js llega a la máquina de otra persona: herramientas CLI, apps Electron, paquetes npm, software on-premise.
¿Cómo ofusco una app Electron?
Instala la Shield CLI, apúntala al JavaScript dentro de tu build de Electron y añade el comando a tu script de empaquetado. El código ofuscado se incluye dentro de la app Electron.
¿Cómo añado Shield a un proyecto Node?
Instala @bytehide/shield-cli, añade tu project token y ejecuta shield protect sobre tus archivos fuente o compilados. Añádelo a tu build script para cada release.
¿Es gratis?
Los paquetes son gratuitos con una cuenta ByteHide. ByteHide Shield ofrece configuración avanzada, virtualización de código y protección en runtime para aplicaciones de producción.
¿La ofuscación afectará al rendimiento de Node?
La ofuscación esencial tiene un impacto menor en Node.js. Las transformaciones más pesadas son configurables para que controles el equilibrio entre protección y velocidad.
¿Cuál es el mejor ofuscador de Node.js?
Para código Node.js que se distribuye, especialmente herramientas CLI, apps Electron y software on-premise, ByteHide Shield está pensado para eso con ofuscación por capas, virtualización de código e integración con CLI.
+10.000 desarrolladores y empresas protegen sus aplicaciones con ByteHide

Protege tu código Node.js con
ByteHide Shield

Para el código de servidor que se distribuye, la ofuscación es esencial. ByteHide Shield añade virtualización de código, autoprotección en runtime y configuración avanzada, integrado a través de la CLI.

ByteHide runtime dashboard showing live threat monitoring and protection metrics