Pregunta decompilador de Codigo

31/01/2008 - 15:09 por DarthSidious | Informe spam
buenos dias, he visto un post de hace unos dias donde se habla de decompilar
el codigo .net, de hecho consegui un programa y comprobe que se decompila
todo el codigo perfectamente.
Ahora mi pregunta es, si se usa un obfuscador para impedir esto, por lo que
estuve leyendo los obfuscadores agregan rutinas, saltos, bytes no usados,
etc, pero esto no contribuye a que baje la performance o rendimiento de un
codigo? o Sea, yo me rompo la cabeza tratando de hacer un codigo lo mas
reducido y optimizado posible, para despues obfuscarlo y que se desperdicie?
Es asi esto? La verdad que no sabia esto, y me ha dejado desconcertado, no
entiendo como Microsoft puede permitir algo asi.

gracias!!
 

Leer las respuestas

#1 RFOG
31/01/2008 - 15:35 | Informe spam
En Thu, 31 Jan 2008 15:09:01 +0100, DarthSidious
escribió:

buenos dias, he visto un post de hace unos dias donde se habla de
decompilar
el codigo .net, de hecho consegui un programa y comprobe que se decompila
todo el codigo perfectamente.
Ahora mi pregunta es, si se usa un obfuscador para impedir esto, por lo
que
estuve leyendo los obfuscadores agregan rutinas, saltos, bytes no usados,
etc, pero esto no contribuye a que baje la performance o rendimiento de
un
codigo? o Sea, yo me rompo la cabeza tratando de hacer un codigo lo mas
reducido y optimizado posible, para despues obfuscarlo y que se
desperdicie?
Es asi esto? La verdad que no sabia esto, y me ha dejado desconcertado,
no
entiendo como Microsoft puede permitir algo asi.

gracias!!



Depende de qué ofuscador ofuscará mejor o peor, aumentará o disminuirá el
rendimento, todo depende de qué añada y qué haga el jitter luego. Si el
compilador de C# fuera bueno optimizando (al mismo nivel que el C++/CLI)
la ingeniería inversa sería un poco -solo un poco- más difícil. Si el
ofuscador hace tareas de optimizador hasta incluso podría aumentar el
rendimiento significativamente.

Hagamos un experimento mental. Imagina que cuidas mucho tu código y luego
el ofuscador añade un 5% de lentitud (de 100 pasamos a 105). Ahora imagina
que no cuidas tu código y dicho código funciona un 5% más lento (ahora el
paso es de 105 a 110.25). Por lo tanto sigue valiendo la pena cuidar el
código.

Como decía mi tío Saltatrampas, no hay meriendas gratis, y todo cuesta.

Y en general, si alguien quiere meterle mano a tu programa, lo hará hagas
lo que hagas, así que no vale mucho la mena complicarse con esos temas. O
te puedes pasar a C++ (el nativo, no el C++/CLI), o a Pascal...
Microsoft Visual C++ MVP
==Mi blog sobre programación: http://geeks.ms/blogs/rfog
Mi blog sobre literatura: http://rfog.blogsome.com
Libros, ciencia ficción y programación
La señal de que no amamos a alguien es que no le damos todo lo mejor que
hay en nosotros.

Preguntas similares