Skip to Content
Nueva versión 12 disponible 🎉
ObfuscatorCifrado de cadenas

Cifrado de cadenas

Babel Obfuscator permite cifrar las cadenas en línea del código mediante algoritmos de cifrado de cadenas integrados. Además de estos algoritmos integrados, Babel también permite implementar algoritmos de cadenas personalizados mediante código externo o complementos. Así, los usuarios pueden crear métodos de cifrado propios, adaptados a sus necesidades concretas.

Configuración del cifrado de cadenas

Configurar el cifrado de cadenas con Babel Obfuscator consiste en seleccionar un algoritmo de cifrado y prepararlo para su aplicación. Babel admite de serie los algoritmos XOR, HASH y STREAM. Puede seleccionar cualquiera de los tres en Babel Desktop, con opciones de línea de comandos o en su archivo de proyecto de MSBuild. Si ninguno se ajusta a sus necesidades, puede implementar métodos de cifrado de cadenas personalizados.

Tanto si opta por los algoritmos integrados como por implementaciones personalizadas, configurar el cifrado de cadenas mejora la seguridad de su aplicación, porque protege las cadenas confidenciales frente a una interceptación o una manipulación directas.

¿Despliega en hosts en modo FIPS? Los algoritmos XOR y HASH descifran las cadenas en tiempo de ejecución mediante el proveedor criptográfico de la plataforma, por lo que un contenedor que se ejecuta en un host en modo FIPS sin un proveedor FIPS de OpenSSL certificado puede no arrancar. Consulte Conformidad con FIPS para conocer la causa y la solución. El algoritmo STREAM no se ve afectado: su descifrador es totalmente administrado y nunca llama al proveedor criptográfico de la plataforma.

Cifrado de cadenas const

Una limitación de Babel Obfuscator es que no puede cifrar las cadenas constantes (const), porque se compilan en los metadatos de la aplicación y el CLR accede a ellas directamente en tiempo de ejecución. Para poder cifrar estas cadenas, hay que convertirlas en campos static readonly (en C#) o Shared ReadOnly (en VB.NET). De este modo, Babel Obfuscator puede procesar y cifrar esas cadenas, lo que mejora la seguridad de su aplicación al proteger información confidencial que, de otro modo, quedaría expuesta en texto sin cifrar.

// Strings declared const cannot be encrypted public const string Connection = "Server=myServerAddress;Database=myDB;..."; // To encrypt, convert the above declaration to static readonly public static readonly string Connection = "Server=myServerAddress;Database=myDB;...";

Babel Desktop

En Babel Desktop, seleccione el ensamblado en el diagrama del proyecto y elija el algoritmo (xor, hash, stream o custom) de StringEncryption en el grupo Cifrado de código del panel de propiedades. La lista solo ofrece los algoritmos que incluye su licencia. Para custom, los métodos EncryptString y DecryptString deben estar definidos en su código.

En esta sección

  • Algoritmos estándar: los algoritmos integrados XOR, HASH y STREAM, cómo activar cada uno y una comparación en paralelo que le ayuda a elegir.
  • Algoritmo personalizado: implemente sus propios métodos EncryptString / DecryptString para cifrar las cadenas con el algoritmo que prefiera.
Last updated on