Ofuscador de JavaScript
Ofuscar JavaScript: hace que el código del lado del cliente sea más difícil de leer y copiar.
Basic hex-string encoding (light obfuscation, not encryption). Anyone can reverse it.
Cómo usar Ofuscador de JavaScript
- Pegue su JavaScript: código funcional y probado (ofuscar al final, después del desarrollo).
- Copie el resultado ofuscado y envíelo en lugar de la versión legible.
- Conserve la fuente original: el archivo ofuscado es un artefacto de compilación que no puede mantener.
- Pruebe minuciosamente: los patrones y la evaluación dependientes del nombre pueden fallar en condiciones agresivas se transforma.
¿Cuál es Ofuscador de JavaScript?
Un ofuscador de JavaScript reescribe deliberadamente el código para resistir la lectura humana: los identificadores se convierten en símbolos sin significado, las cadenas se codifican, el flujo de control se enreda, mientras el programa aún se ejecuta de manera idéntica. Va más allá de la minificación (cuya codificación es un efecto secundario del tamaño) para hacer que la ingeniería inversa sea activamente tediosa.
El marco honesto: la ofuscación es un disuasivo, no el cifrado. En última instancia, el navegador debe ejecutar la lógica, por lo que un analista determinado con un depurador y tiempo la seguirá. Lo que se consigue con la ofuscación es fricción, suficiente para detener el robo casual de copiar y pegar y aumentar el coste de la clonación, no secreto.
Sobre el Ofuscador de JavaScript
Pegue su JavaScript y obtenga la versión ofuscada (identificadores renombrados, cadenas codificadas, flujo reestructurado) funcionalmente idéntico, dramáticamente menos legible.
Usos legítimos: aumentar el costo de copia de la lógica empresarial del lado del cliente (widgets, juegos, componentes con licencia que debe enviar a los navegadores), ocultar constantes de cadena de extracción trivial (puntos finales, cadenas de formato, no secretos) y satisfacer términos de licencia o contrato que requieren protección de código. Las ventajas y desventajas que se deben presupuestar son: el código ofuscado se ejecuta algo más lento y de mayor tamaño, los seguimientos de la pila se vuelven ilegibles (conserve el original para depurarlo) y algunas transformaciones agresivas pueden romper el código basándose en nombres de funciones o patrones de evaluación; siempre pruebe la salida.
El límite estricto: cualquier cosa verdaderamente secreta (claves API, credenciales, controles de seguridad) debe estar en el lado del servidor. La ofuscación esconde la aguja en un pajar; la aguja sigue en el pajar. La validación del lado del cliente, ofuscada o no, siempre se puede omitir llamando directamente a su API.