2010-12-30 39 views
8

Zastanawiam się, czy w kontekście demontażu kodu .Net (reflektor Redgate .Net itp.) Czy bezpieczniej jest skompilować swój kod do natywnego, używając Ngen? To znaczy, czy to oznacza, że ​​ktoś będzie potrzebował teraz umiejętności IDA i ASM, aby zdemontować (i zrozumieć) swój kod w porównaniu do stosunkowo trywialnej dekompilacji MSIL?Czy kompilacja do kodu macierzystego w .NET usuwa całkowicie MSIL?

Tak, zdaję sobie sprawę, że MS zapewnia obfuscater dokładnie w tym celu, ale jestem ciekawy, czy kompilacja na natywny jest lepszym rozwiązaniem, z pewnymi kompromisami (brak JIT).

Dzięki.

Odpowiedz

8

ngen nie usuwa MSIL (a raczej natywna binarka wyprodukowana przez ngen jest bezużyteczna bez konieczności posiadania pliku MSIL). MSIL jest nadal wykorzystywany przez weryfikator do określenia, czy ładować zespoły w scenariuszach częściowego zaufania, i do refleksji.

Istnieje wiele dobrych informacji here.

Powiązane problemy