Como posso tornar privado o manifesto de um assembly .net?
-
09-06-2019 - |
Pergunta
O que devo fazer se quiser lançar um assembly .net, mas desejar manter seus detalhes internos detalhados no manifesto privado (de um utilitário como ildasm.exe) ?
Solução
Acho que você está falando de "ofuscação".Existem muitos artigos sobre isso na net:
http://en.wikipedia.org/wiki/Ofuscação
A ferramenta "padrão" para ofuscação no .NET é da Preemptive Solutions:
http://www.preemptive.com/obfuscator.html
Eles têm uma edição comunitária que acompanha o Visual Studio que você pode usar.
Você mencionou o ILDasm, já olhou o .NET Reflector?
http://aisto.com/roeder/dotnet/
Isso lhe dá uma ideia ainda melhor do que as pessoas podem ver se você lançar um manifesto!
Outras dicas
O CLR não pode carregar diretamente módulos que não contenham manifesto.Portanto, você não pode tornar uma montagem completamente privada, a menos que também queira torná-la descarregável;)
No entanto, você pode, como Mark observou acima, usar ferramentas de ofuscação para ocultar as partes que gostaria de manter verdadeiramente internas.
É uma pena o interno palavra-chave não exclui esses metadados
EDITAR:parece essa questão está altamente relacionado