Drodzy Państwo!
Problem pewnie banalny ale kopie po googlu i forach i jakoś nie mogę znaleźć rozwiązania.
Jak zabezpieczyc pliki z klasami w projekcie visual studio ktore sa jawnie podane w plikach tekstowych?
Jak taka aplikacje przezkazac koncowemu uzytkownikowi (samo exe wystarczy?) zeby nie podgladal w klasy?
Sam exe byc moze dla malego programu wystarczy, ale co w przypadku, gdy aplikacja korzysta np z dodatkowych plikow albo bibliotek. trzeba je dolaczac do programu, ale jak to zrobic w sensowny sposob, zeby bylo bezpiecznie i schludnie?
Z góry dziękuje za pomoc, ewentualnie za linki do artykułów.
Słyszałeś o czymś takim jak obfuskacja
?
słyszałem i po wstepnym uzyciu/zastosowaniu na niewiele sie to zdalo.
Czy to jedyne wyjscie?
Dziwnym dla mnie jest to ze pliki z klasami są podane jak na tacy :/
.exe też można podejrzeć.
Jak już skompilujesz .exe to po co chcesz do tego dodawać pliki projektu (.cs) ? Chyba że ja nie rozumiem o co chodzi ;}
exe możesz zabezpieczyć obfuscatorem, tak samo jak dodatkowe biblioteki, np 9rays, net reactor. Jeśli jednak ktoś dłużej siedzi w c# to i tak odciemni kod, nie da się całkowicie zabezpieczyć.
mowiac o dodatkowych plikach mam na mysli np szablon .doc na ktorym program cos tam sobie wykonuje i zwraca plik wynikowy. i w wtym przypadku nie chodzi mi o zabezpieczenie .doc'a ale o jakis sensowny mechanizm dystrybucji paczki z programem np przy okazji aktualizacji.
Czyli rozumiem, ze do dzialania aplikacji starczy podac odbiorcy sam .exe?
Nie. Do działania aplikacji potrzeba exe plus wszystkie biblioteki z których korzystasz, dodane przez referencje. Jeśli umowa inaczej nie określa, plików źródłowych nie przekazujesz, bo i po co?
Pliki wykonywalne które zostały stworzone z kodu C# zabezpieczasz obfluscatorem. Pliki w kodzie natywnym nie musisz. Do aplikacji tworzysz instalator, jeżeli nie robisz dla klienta tylko sam chcesz wypuszczać w świat, za pomocą tego http://www.jrsoftware.org/isinfo.php . Wtedy w jednym pliku dystrybuujesz wszystkie pliki. Żeby robić updaty a najlepiej autoupdaty potrzebujesz pośrednictwa serwera.
dzieki Wam za odpowiedzi, juz mniej wiecej mam jasnosc, gdyby cos to pozwole sobie dopytac ;)