Algoritmo personalizado
El cifrado de cadenas personalizado permite a los usuarios definir sus propios métodos de cifrado y descifrado de cadenas, para ofuscarlas a su medida. Para usar el cifrado de cadenas personalizado, los usuarios deben definir dos métodos concretos en el ensamblado de destino: EncryptString y DecryptString. Ambos métodos deben tener la misma firma: aceptan una cadena como parámetro y devuelven una cadena, que es la cadena cifrada o la descifrada, respectivamente. Con estos métodos, los usuarios pueden implementar el algoritmo de cifrado personalizado que prefieran para cifrar las cadenas de su código, lo que les da más flexibilidad y control sobre el proceso de ofuscación.
/// <summary>
/// Encrypt a string.
/// </summary>
/// <param name="text">The string to encrypt.</param>
/// <returns>The encrypted string.</returns>
[Obfuscation(Feature = "string encryption encrypt method")]
internal static string EncryptString(string text)
{
// Encrypt the text string and return the encrypted string object.
return ...;
}
/// <summary>
/// Decrypt an encrypted string.
/// </summary>
/// <param name="text">The encrypted string.</param>
/// <returns>The decrypted string.</returns>
[Obfuscation(Feature = "string encryption decrypt method")]
internal static string DecryptString(string text)
{
// Decrypt the text string and return the decrypted string object.
return ...;
}Los métodos EncryptString y DecryptString se marcan con el atributo Obfuscation y la cadena Feature adecuada, lo que permite a Babel identificar los puntos de entrada del código para cifrar y descifrar las cadenas.
Una vez definidos los métodos EncryptString y DecryptString y marcados con el atributo Obfuscation adecuado, puede activar el cifrado de cadenas personalizado con Babel.
Puede activar el cifrado de cadenas personalizado en Babel Desktop, desde la línea de comandos o con la tarea de MSBuild.
Babel Desktop
En Babel Desktop, seleccione el ensamblado y establezca StringEncryption en custom en el grupo Cifrado de código del panel de propiedades.
Además, para personalizar y ampliar aún más las capacidades de cifrado, Babel admite la integración de complementos externos. Esta función permite un mecanismo de cifrado más flexible y robusto, adaptado a las necesidades y a los requisitos de seguridad concretos de su aplicación.
Línea de comandos
Para activar el cifrado de cadenas personalizado de Babel desde la línea de comandos, puede introducir el comando:
babel myapp.exe --strings customTarea Babel de MSBuild
Si usa la tarea Babel, puede activar el cifrado de cadenas personalizado añadiendo lo siguiente a su archivo de proyecto:
<PropertyGroup>
<StringEncryption>custom</StringEncryption>
</PropertyGroup>
<Babel StringEncryption="$(StringEncryption)" ... />Además, los usuarios también pueden implementar el cifrado de cadenas personalizado mediante complementos externos (consulte Complementos de Babel Obfuscator).