Używamy BitHelmet. Problem polega na tym, że przy stosowaniu najsilniejszej techniki zaciemniania, ślad stosu nie może zostać rozjaśniony. BitHelmet używa przemianowania Pełnego Podpisu (pewien rodzaj indukcji przeciążenia, tylko lepiej). Co się dzieje, wiele metod kończy się na tej samej nazwie, ale z innym typem zwracania (nie można tego zrobić w języku C#, ale dla CLR jest w porządku). Typy zwrotów nie są wyświetlane w śladach stosu! więc w rzeczywistości nie jest możliwe rozmyślanie przebiegu stosu przy użyciu najsilniejszego zaciemniania.
Zadaliśmy to samo pytanie, niż Ty, omówiliśmy to i doszliśmy do wniosku, że faktycznie wolimy lepsze zaciemnianie. Ślady stosu nie są tak przydatne, jeśli zapewniają wsparcie techniczne, podobnie jak inne dane, które może dostarczyć tylko końcowy użytkownik. "proszę powiedz mi dokładnie, co robiłeś ???" :)
Jak już wspomniano, przestarzałe ślady stosu są dostępne w większości narzędzi (np. Http://www.ssware.com/cryptoobfuscator/obfuscator-net.htm) –
Czasami tworzę usługę internetową, aby otrzymywać raporty o awariach. Użytkownik może przesłać przycisk "zgłoś błąd", a ślad stosu i inne przydatne informacje o stanie programu mogą być przesyłane bez ryzyka, że ślad stosu zostanie zakodowany w niewłaściwym formacie tekstowym (ponieważ wiele obfuscatorów używa znaków Unicode dla klasy/metody nazwy). –