2010-06-23 19 views
5

Sé que las aplicaciones .NET son difíciles de proteger. Uso RedGate Reflector y sé que, en términos generales, puede obtener el código fuente de muchos .lls de .NET.¿Es posible descompilar toda la aplicación .NET?

Sin embargo, mi pregunta es: ¿es realmente posible descompilar toda la aplicación?

Es decir, crear una solución viable de VS solución para que el pirata solo pueda presionar F5 y obtener exactamente el mismo resultado que el autor en su máquina?

Respuesta

1

Para una aplicación pequeña, es posible y posible. Tienes que descompilar las clases una a una y copiar/pegar el código en Visual Studio.

Para una aplicación grande, aunque es posible, no es realmente factible ya que el proceso de copiar/pegar se vuelve extremadamente tedioso.

1

Realmente depende del tipo de código que está escribiendo. Si usa muchas de las características nuevas en C# 3 y superiores como expresiones lambda, propiedades automáticas y rendimiento, el código fuente descompilado no se puede ejecutar y requiere bastante trabajo para compilarlo.

Incluso sin esas características, generalmente he experimentado al menos algunos problemas compilando el código fuente descompilado de una aplicación de winforms completa.

1

No creo que haya nada que automatice completamente esto para una aplicación compuesta por varios ensamblajes, pero puedo decir que no es tan difícil unir las piezas en una solución. Tal vez un poco tedioso para una aplicación grande, pero si realmente quiere, es ciertamente factible.

Afortunadamente, don'tworryabout itthatmuch.

1

Hay muchos ofuscadores actualmente que protegen sus aplicaciones .NET de la descompilación. Uno de estos ofuscadores es http://www.red-gate.com/products/smartassembly/index.htm. Intentan convertir su código .NET IL bien estructurado en código spegatti (que aún funciona) para que los descompiladores no puedan generar el código original. No es 100% seguro de que los piratas no pueden obtener el código recompilable, pero no será fácil para ellos descompilar cuando usen el ofuscador.

1

Sí, simplemente exporte de Reflector y obtenga un proyecto ejecutable completo para su montaje. Lo he hecho un par de veces. Normalmente, tengo que migrar el proyecto a mi versión de VS y algunas veces requiere algunas correcciones menores, pero en general funciona.

Cuestiones relacionadas