Skip to Content
Nueva versión 12 disponible 🎉
Obfuscator

Código fuente

El complemento se distribuye con el código fuente completo en C#. Para compilar el complemento a partir del código fuente necesita lo siguiente:

  • Visual Studio 2022 o posterior
  • La versión más reciente de Babel Obfuscator, edición Enterprise o Ultimate

Instrucciones de compilación

Abra el archivo de solución de Visual Studio, Babel.BabelEncrypt.sln, y compile el proyecto. El proyecto del complemento hace referencia a babel.exe, la compilación para .NET Framework de la herramienta de línea de comandos, en la carpeta donde extrajo el paquete zip babel_net472. Si no se encuentra la referencia a babel.exe, quítela y añada babel.exe desde esa carpeta.

Modificar el código

Si tiene previsto modificar el código fuente, esta sección ofrece una referencia rápida y algunos consejos para facilitarle los primeros pasos.

Archivos de código fuente

El proyecto del Encrypt Plugin contiene los archivos siguientes.

EncryptPlugin.cs

Este archivo contiene la clase EncryptPlugin, que implementa la interfaz de complemento de Babel. El complemento registra la clase del servicio de cifrado de cadenas que Babel Obfuscator usa para cifrar las cadenas. Los argumentos que se pasan en la línea de comandos de babel se procesan aquí, al inicializarse el complemento.

StringEncrypter.cs

La clase StringEncrypter proporciona el servicio de cifrado de cadenas. Contiene el código que integra el descifrador en el destino de ofuscación e implementa los métodos de cifrado de los algoritmos XOR y HASH. El método Encrypt(...) es el punto de entrada: Babel Obfuscator lo llama durante la fase de cifrado de cadenas, en la que el cifrador XOR o HASH procesa la cadena. Al terminar la fase de cifrado se invoca el método Terminate(), que almacena los datos cifrados en el destino. El código de descifrado incrustado recupera en tiempo de ejecución los datos cifrados del destino ofuscado.

StringDecrypter.cs

Este archivo contiene toda la lógica de descifrado que se combina con el ensamblado de destino. Como las clases de este archivo se compilan y se combinan durante la ejecución del complemento, el archivo se compila como Embedded Resource (recurso incrustado) de la DLL del complemento.

Para comprobar temporalmente la sintaxis del código o hacer cambios en él, puede cambiar Build Action (acción de compilación) de Embedded Resource a Compile. Cuando haya terminado los cambios, puede volver a Embedded Resource y empezar a depurarlos.

Depurar el complemento

Para depurar el complemento, abra las propiedades del proyecto Babel.BabelEncrypt, seleccione la página de propiedades Debug (depuración) y cree un perfil nuevo. A continuación, establezca la configuración siguiente:

Configuración de depuración

Executable (ejecutable)

<carpeta de extracción>\babel.exe, por ejemplo C:\Tools\Babel\babel.exe (la carpeta donde extrajo el paquete zip)

Command line arguments (argumentos de la línea de comandos)

MyApp.exe @ -v5 —stringencrypt custom —plugin BabelEncrypt.dll

Donde MyApp.exe es el ensamblado de destino que se ofusca con el complemento.

Last updated on