Компиляция в нативный код в .Net полностью удаляет MSIL? - PullRequest
8 голосов
/ 30 декабря 2010

Мне интересно, является ли в контексте разборки кода .Net (рефлектор Redgate .Net отражатель и т. Д.) Безопаснее ли компилировать код в нативный, используя Ngen?То есть означает ли это, что кому-то теперь понадобятся навыки IDA и ASM для дизассемблирования (и осмысления) вашего кода по сравнению с относительно тривиальной декомпиляцией MSIL?

Да, я знаю, что MS предоставляетobfuscater именно для этой цели, но мне любопытно, если компиляция в native является лучшим решением с некоторыми компромиссами (без JIT).

Спасибо.

1 Ответ

8 голосов
/ 30 декабря 2010

ngen не удаляет MSIL (точнее, собственный двоичный файл, созданный ngen, не может быть использован без файла MSIL).MSIL по-прежнему используется верификатором для определения необходимости загрузки сборок в сценариях частичного доверия и для отражения.

Здесь много полезной информации здесь .

...