2012-03-27 15 views
6

Buduję aplikacje i zdecydowałem, że nadszedł czas na uruchomienie mojego kodu przez obfuscator. Pobrałem i wykorzystałem Eazfuscator.NET, a następnie po zainstalowaniu aplikacji pobrałem Ispy, aby zobaczyć, jak dobrze działa ten proces.Problemy z .Net Obfuscator

Okazało się, że nadal mogę łatwo zobaczyć wiele kodu, na przykład większość logiki w mojej rutyny była tam w niektórych częściach moich pracowników w tle. Tak, łańcuchy zostały zmienione, ale niektóre przypadki, które uważam za dość ważne, były widoczne.

Na przykład, gdy buduję klucz uwierzytelniania aplikacji, są pewne elementy, które dołączam do klucza przed uruchomieniem szyfrowania. Te elementy były widoczne, kiedy użyłem Ispy do obejrzenia zespołu. Hasło do mojej biblioteki szyfrowania było ukryte, ale mam wrażenie, że jest to wciąż więcej informacji, niż chciałbym, aby ktoś mógł ją zobaczyć.

Moje pytanie brzmi - czy to normalne zachowanie podczas korzystania z obfuscatora? A może powinienem próbować innych?

+0

chciałbym spróbować innych z nich. Użyłem dotfuscatora i z wyjątkiem anonimowych typów robi to bardzo dobrze. VS2010 ma również zaciemnienie Wierzę, że – Brian

+2

Witamy w Stack Overflow! Użyłem Eazfuscatora i mam naprawdę gęsty, hardcoreowy wynik. Upewnij się, że używasz najnowszej wersji. Spróbuj zmienić niektóre ustawienia. – ashes999

+0

Widzę bardzo mało ustawień. O czym dokładnie mówisz? –

Odpowiedz

3

Użyj następujących ustawień dla Eazfuscator.NET aby uzyskać lepsze wyniki:

[assembly: Obfuscation(Feature = "code control flow obfuscation", Exclude = false)] 
[assembly: Obfuscation(Feature = "PEVerify", Exclude = false)] 
[assembly: Obfuscation(Feature = "encrypt symbol names with password mypassword", Exclude = false)] 
[assembly: Obfuscation(Feature = "encrypt resources [compress]", Exclude = false)] 

w swojej informacji montażowej plik

+0

Te ustawienia, które wymieniłeś, działały naprawdę dobrze dla pliku .exe, który pochodzi z danych wyjściowych. Jednak biblioteka klas, która jest budowana obok niego, ma te same ustawienia w pliku zespołu, ale wciąż widzę jego część, na przykład parametry funkcji. Czy jest coś, co muszę zrobić specjalnie dla biblioteki klas? –

+0

Czy metody lub właściwości są publiczne?Domyślnie publiczne w bibliotece nie mogą być zaciemnione, ponieważ są one publiczne tak widoczne dla każdego, kto dołącza tę bibliotekę. – Marcin

+0

Tak, metody są publiczne, ponieważ korzystam z tej samej biblioteki w różnych aplikacjach. Czy tu coś pomijam, jak inaczej napisałbym bibliotekę, którą mogę ponownie wykorzystać, ale można ją zaciemnić? –

0

Spróbuj Crypto Obfuscator - ma wiele technik zaciemniania tym szyfrowanie String, Flow Control zaciemniania, Ukrywanie wywołań metod, ochrona zasobów itp., Co powoduje, że kod jest bardzo trudny do odczytania i zrozumienia.

ZASTRZEŻENIE: Pracuję dla LogicNP Software, twórcy Crypto Obfuscator.

0

Zaawansowane funkcje zaciemniania używane do zaciemniania zespołów , więc zaciemniony kod .NET jest o wiele trudniejszy do zrozumienia lub nie można go dekompilować. Możemy chronić aplikację .NET i biblioteki DLL z zabezpieczeniem kodu, które łączy i obejmuje szyfrowanie kodu poziomu metod, inżynierię anty-reverse, anty-debugowanie, zapobieganie nieuprawnionemu manipulowaniu i więcej, aby zapobiec nieautoryzowanemu dostępowi i modyfikacjom złożeń.

Używam FxProtect - .Net Obfuscator. To jest naprawdę dobre.

Można spróbować ... .Net Obfuscator

Powiązane problemy