Jak mogę zaciemnić mój kod w c#, aby nie mógł być tak łatwo deobfuscated? [zamknięte]

zamknięte. to pytanie nie spełnia wytycznych dotyczących przepełnienia stosu . Obecnie nie przyjmuje odpowiedzi.

chcesz poprawić to pytanie? Update the pytanie więc to on-topic {[3] } dla przepełnienia stosu.

Zamknięte 7 lat temu .

Popraw to pytanie [5]}udostępniam kilka narzędzi za darmo, ale ostatnio zacząłem sprzedawać aplikację, która ma prywatne badania, a ludzie byli w stanie uzyskać mój kod źródłowy, a jedna osoba publicznie wypuściłem całe moje źródło. Spędziłem dużo czasu nad tym programem, żeby ktoś go złamał i wypuścił całe moje źródło.

Jak mogę chronić mój program? Próbowałem HWID, ale ludzie nadal są w stanie go złamać. Wiem, że jestem ograniczony przez C#, ale to najwygodniejszy w użyciu. Potrzebuję tylko sposobu, aby chronić moje programy przed ludźmi próbującymi to zrobić.

Author: Gray, 2013-10-03

4 answers

 36
Author: Sebastiaan van den Broek,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-02-24 09:37:18

Cóż, problem z językami takimi jak C#/Java polega na tym, że są one na ogół łatwiejsze do odtajnienia. Sposobem na zabezpieczenie tego jest zazwyczaj umieszczenie tych rzeczy w serwisie internetowym, ale powiedziałeś, że tak naprawdę nie możesz tego zrobić. A co z przeniesieniem określonych nietrywialnych funkcji na język taki jak C i zaciemnieniem tego. Twój program C# może następnie użyć reflection do wywołania tej zewnętrznej / niezarządzanej biblioteki dll. Zwiększyłoby to trudność usuwania zaciemnień, ale problem polega na tym, że jeśli ktoś chcą go wystarczająco źle, mogą to rozgryźć, ponieważ jest po stronie klienta.

Może być tak, że działanie prawne jest jedynym realnym rozwiązaniem tutaj, ale to nie jest strona dla porad prawnych, a ja nie mam kwalifikacji, aby go dać, gdyby tak było.

DODATKOWO może to być decyzja biznesowa. Rozważ stworzenie swojego oprogramowania open-source i zamieść link do darowizny. Nie mam również kwalifikacji do udzielania porad biznesowych, ale warto to rozważyć. To może rzeczywiście zwiększyć swoje dochody, nie wspominając o innych korzyści płynące z wydania oprogramowania open-source.

 8
Author: Gray,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-04 15:20:31

Jest Dotfuscator ( http://www.preemptive.com/products/dotfuscator/overview ). ale najlepszym rozwiązaniem w niektórych przypadkach jest oferowanie tego, co robisz jako strona internetowa (Software as a Service).

Rozważ to narzędzie na przykład, aby przekonwertować VB do C#: http://converter.telerik.com/

LUB to narzędzie do formatowania JSON: http://jsonformatter.curiousconcept.com/

To może, ale nie musi działać dla Ciebie. Nie wiem jaka jest natura oprogramowania, które próbujesz chronić jest.

 3
Author: Trevor Elliott,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-03 15:59:23

Nie, twój kod musi zawierać informacje potrzebne do odszyfrowania się, to niemożliwy problem do rozwiązania.

Najlepszym rozwiązaniem jest umieszczenie swojej własności intelektualnej na serwerze w chmurze, do którego tylko Ty masz dostęp. Zapewnij swoim Klientom unikalny login, kontroluj ich dostęp, aby sprawdzić, czy nie doszło do nadużyć, wyłącz jak najwięcej pracy na maszynach klientów, ale trzymaj algorytmy zamknięte w chmurze.

 3
Author: carpenterjc,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-08 16:00:42