piapia123
es

Desempaquetar y empaquetar código comprimido con eval de JavaScript

Cifrado

Todo se ejecuta en tu navegador: no se sube nada

Entrada
Arrastra un archivo aquí para cargarlo
Resultado

Trabaja con el packer de Dean Edwards — el `eval(function(p,a,c,k,e,d){…})`. Sustituye las palabras que se repiten en el código (`function`, `document`, `length`…) por nombres cortos, guarda el cuerpo comprimido como una cadena y añade la tabla de correspondencias al final. ⚠️ No es cifrado: no hay clave, la tabla está ahí mismo en el código y para desempaquetar no hace falta nada más. El formato se extendió mucho — bastantes sitios lo usan como «ofuscación ligera» — y resulta ser uno de los más fáciles de revertir.

Funciones

  • Desempaquetar: devuelve `eval(function(p,a,c,k,e,d){…})` a código legible
  • Empaquetar: genera el mismo formato, con base ajustable (2–62)
  • ⚠️ Manipulación de cadenas de principio a fin: no se ejecuta JavaScript
  • Las comillas simples, los escapes y los saltos de línea del cuerpo se analizan bien
  • La sustitución va del índice mayor al menor, así que las tablas de más de diez palabras no se pisan
  • Si la entrada no tiene este formato, se indica la forma esperada en vez de un simple error de análisis

Cómo se usa

  1. Pega el `eval(function(p,a,c,k,e,d){…})` entero en la caja, con el `eval(` inicial incluido
  2. Pulsa Ctrl/⌘ + Enter o haz clic en Ejecutar
  3. El resultado es el código recuperado
  4. Cambia la dirección para empaquetar si quieres lo contrario

Preguntas frecuentes

¿Esto ejecuta mi script?
No. Desempaquetar aquí es pura manipulación de cadenas: se analizan los parámetros y se sustituyen los nombres cortos por sus palabras. No hay ningún `eval` en ello. Muchas herramientas en línea toman el atajo de evaluar el código, lo que equivale a ejecutar el script de un desconocido dentro de tu navegador — y el código empaquetado es justo el que nunca deberías ejecutar a ciegas. Esta implementación es segura para apuntarla a código de origen desconocido.
¿Se puede ejecutar directamente lo que sale?
Normalmente sí. Lo que sale es el código original con las palabras sustituidas de vuelta y nada más cambiado, así que se puede pegar en una consola o en una página HTML. Dos advertencias: puede que el original ya estuviera minificado (nombres de variable cortos, sin saltos de línea) y desempaquetarlo no lo hará más bonito — para eso quieres un formateador; y el código recuperado sigue siendo código de terceros que no has revisado; hacerlo legible no es lo mismo que hacerlo seguro.
¿El empaquetado reproduce exactamente la salida del original?
No byte a byte. El packer original recorre el código, cuenta frecuencias de palabras y asigna nombres cortos según sus propias reglas. La implementación de aquí es una versión simplificada (extrae identificadores, ordena por apariciones y reparte los índices más cortos disponibles). El formato es compatible — los navegadores lo ejecutan y esta herramienta lo desempaqueta —, pero la asignación puede diferir. Usa el script original si necesitas su salida exacta.

Herramientas relacionadas