
Ofuscación de cadenas AES en tiempo de compilación para C++
Las soluciones estándar dependen de length + "#" + string. Eso es trivial de revertir.
sbox utiliza un cifrado de bloques AES-128 constexpr para transformar cadenas en ruido de alta entropía.
Durante el desafío "Encode and Decode Strings" de Neetcode, porté el motor AES de mi proyecto de ofuscación, Obfusk8.
La implementación pasó en 7ms en la primera entrega. La seguridad criptográfica no debería ser un sacrificio por el rendimiento.
strings.exe (o strings en linux) devuelve cero resultados.Consulta la carpeta EXAMPLES para los detalles de implementación:
Ejemplo Multi-Cadena (sbox_test.cpp):
Demuestra cómo manejar un vector<string> usando la macro _OBF(str) para procesamiento por lotes. Útil para ofuscación lista para tránsito.
Ejemplo de Cadena Única (sbox_test1.cpp):
Demuestra la materialización atómica usando la macro ObfStr(str). Ideal para asignaciones de una sola variable:
string s = ObfStr("ama obfuscation addicted");
7ms de tiempo de ejecución. Demostrando que el exceso puede seguir siendo óptimo.
Autor: x86byte