Me parece que la ofuscación es una idea que cae en algún lugar del campo de "seguridad por oscuridad" o "falso sentido de protección". Para proteger la propiedad intelectual, hay derechos de autor; para evitar que se encuentren problemas de seguridad, existe que soluciona esos problemas. En resumen, lo considero como una solución técnica a un problema social. Those almost never work.(¿Por qué) debo usar ofuscación?
Sin embargo, parezco ser el único en nuestro equipo de desarrollo en sentirme así, así que estoy equivocado o simplemente necesito argumentos convincentes. Nuestro producto usa .NET, y un desarrollador sugirió .NET Reactor (que, por cierto, was suggested in this SO thread as well).
.NET Reactor detiene por completo cualquier descompilación mezclando cualquier ensamblado .NET puro (escrito en C#, VB.NET, Delphi.NET, J #, MSIL ...) con código máquina nativo.
¿Básicamente, arrojas todas las ventajas de bytecode de una vez?
¿Hay buenas ingeniería ventajas para la ofuscación?