Pergunta

Eu acho que o java executáveis (arquivos jar) são triviais para descompilar e obter o código fonte.

O que acontece em outros idiomas?.net e todos?

Que todos os idiomas pode compilar apenas para um descompilar, capaz de código?

Foi útil?

Solução

Em geral, linguagens como Java, C#, e VB.NET são relativamente fáceis de descompilar, porque eles são compilados para um intermediário do idioma, não é puro linguagem de máquina.Em sua IL forma, eles mantêm mais de metadados de código C faz quando compilado para linguagem de máquina.

Tecnicamente, você não está obtendo o código-fonte original, mas uma variação sobre o código de origem que, quando compilado, vai dar-lhe o código compilado de volta.Ele não é idêntico ao código-fonte, como coisas, como comentários, anotações e diretivas de compilador normalmente não são transferidos para o código compilado.

Outras dicas

Linguagens gerenciadas podem ser facilmente descompilado porque executável tem de conter uma grande quantidade de metadados para suporte reflexão.
Linguagens como C++ pode ser compilado para código nativo.Estrutura do programa pode ser totalmente alterado durante a compilação\processos de tradução.
Compilador pode facilmente substituir\mesclar\eliminar partes de seu código.Não há nenhuma relação de 1 para 1 relação entre o original e compilado (nativo) de código.

.NET é muito fácil para descompilar.A melhor ferramenta para fazer o que seria o .NET refletor recentemente adquirida pela RedGate.

A maioria das línguas pode ser descompilado, mas alguns são mais fáceis para descompilar do que outros..Net e Java colocar mais informações sobre o programa original no executáveis (método de nomes de variáveis, nomes, etc.) para que você obtenha mais de suas informações originais de volta.

C++, por exemplo, irá traduzir-se variáveis e funções etc.para endereços de memória (sim, eu sei que esta é uma grosseira simplificação), de modo que o decompiler não sabe o material que foi chamado.Mas você ainda pode obter algumas da estrutura do programa de volta embora.

VB6 se compilado pcode também é possível descompilar quase cheio, como fonte de P32Dasm, Flash ou actionscript) também é possível decompor a fonte completo usando algo como Reflexos

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top