Pregunta

Creo que los ejecutables de Java (archivos jar) son triviales de descompilar y obtener el código fuente.

¿Qué pasa con otros idiomas?.net y todo?

¿Qué lenguajes pueden compilarse solo en un código descompilable?

¿Fue útil?

Solución

En general, lenguajes como Java, C# y VB.NET son relativamente fáciles de descompilar porque están compilados en un lenguaje intermediario, no en un lenguaje de máquina puro.En su forma IL, retienen más metadatos que el código C cuando se compila en lenguaje de máquina.

Técnicamente no estás obteniendo el código fuente original, sino una variación del código fuente que, cuando se compila, te devolverá el código compilado.No es idéntico al código fuente, ya que elementos como comentarios, anotaciones y directivas del compilador generalmente no se incluyen en el código compilado.

Otros consejos

Los lenguajes administrados se pueden descompilar fácilmente porque el ejecutable debe contener una gran cantidad de metadatos para admitirlo. reflexión.
Los lenguajes como C++ se pueden compilar en código nativo.La estructura del programa se puede cambiar totalmente durante los procesos de compilación/traducción.
El compilador puede reemplazar\fusionar\eliminar partes de su código fácilmente.No existe una relación 1 a 1 entre el código original y el compilado (nativo).

.NET es muy fácil de descompilar.La mejor herramienta para hacerlo sería la reflector .NET recientemente adquirida por RedGate.

La mayoría de los lenguajes se pueden descompilar, pero algunos son más fáciles de descompilar que otros..Net y Java colocan más información sobre el programa original en los ejecutables (nombres de métodos, nombres de variables, etc.) para que pueda recuperar más información original.

C++, por ejemplo, traducirá variables y funciones, etc.a direcciones de memoria (sí, sé que esto es una gran simplificación) para que el descompilador no sepa cómo se llamó el material.Pero aún puedes recuperar parte de la estructura del programa.

VB6, si se compila en pcode, también es posible descompilarlo en el código fuente casi completo usando P32Dasm, Flash (o actionscript) también es posible descompilarlo en el código fuente completo usando algo como Llamarada

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top