Ochrona kodu

0

Jak sobie radzicie z ochrona kodu C#? Np przed dekompilacja? Obfuscatorem? Czy tez wlasne podobne rozwiazania? Jak zrobic taki wlasny szyfrator kodu? Czy taki pomysl jest dobry:
Aplikacja dziala tylko z dostepem do internetu nastepnie wysyla zadanie kodu z serwera i deszyfruje kod uruchamiajac poprawnie aplikacje glowna.

1

Ja sobie nie radzę 🤣

7

Wystawiając jako SaaS.

0
somekind napisał(a):

Wystawiając jako SaaS.

Nie bardzo wiem jak dziala to SaaS

1

Kompiluję do exe albo udostępniam funkcjonalności z serwera.

2

Kiedy kod jest i tak publicznie na GitHubie to się nie trzeba przejmować ochroną ;)

0
katakrowa napisał(a):

Kompiluję do exe albo udostępniam funkcjonalności z serwera.

No wlasnie ze mozna zdekompilowac latwo taki plik. Wlasnie sprawdzilem to na swojej aplikacji. Wystarczy pobrac dekompilator zaladowac plik i mamy juz caly kod logiczny.

1

A co myślicie panowie programiści o NET NATIVE ?

1
MESSIAH napisał(a):

No wlasnie ze mozna zdekompilowac latwo taki plik. Wlasnie sprawdzilem to na swojej aplikacji. Wystarczy pobrac dekompilator zaladowac plik i mamy juz caly kod logiczny.

Exe owszem, ale żeby zdekompilować z serwera, to trzeba by najpierw mieć dostęp do plików na nim się znajdujących, co przy normalnej konfiguracji nie jest możliwe bez uprawiania hakierstwa.

0
somekind napisał(a):
MESSIAH napisał(a):

No wlasnie ze mozna zdekompilowac latwo taki plik. Wlasnie sprawdzilem to na swojej aplikacji. Wystarczy pobrac dekompilator zaladowac plik i mamy juz caly kod logiczny.

Exe owszem, ale żeby zdekompilować z serwera, to trzeba by najpierw mieć dostęp do plików na nim się znajdujących, co przy normalnej konfiguracji nie jest możliwe bez uprawiania hakierstwa.

Wykupienie VPS w jakiejs p0lskiej firmie wiaze sie to z tym iz bedziesz kontrolowany - zakladam sie iz na 100% ktos sprawdza pliki na serwerach i jesli zobaczy ze cos jest dochodowego jak np w naszym przypadku to juz mamy maly problem. Wiem co mowie bo juz mialem podobna sytuacje z serwerem gdzie nagle 100% zapytan bylo przekierowanych przez serwer glowny i ktokolwiek wszedl na Twoj serwer to pokazywalo sie tylko jedno IP a serwer w p0lszy byl buferem.

3

Odpowiadając na komentarz:

@MESSIAH napisał

Jesli kupie aplikacje od Ciebie za 200 zl i bede musial pozniej dokupowac poprawki itp to duzo wydam. Natomiast jesli ktos udostepni Twoj plik do pobrania i pokaze jak to zdekompilowac i jak latwo zrobic >taka aplikacje to juz masz problem i spadek klientow. Po co w takim razie istnieja licencje? Obfuscatory itp? Przeciez nikt nie przepisze Twojego kodu.

W takim razie się zabezpiecz. Generalnie chodzi mi o ogólny poziom wiedzy i umiejętności autora programu zabezpieczanego.
Innymi słowy wątpię, że osoba nie potrafiąca zaimplementować zabezpieczeń swojego kodu, wymyśliła coś co ma jakąś wymierną wartość dla osoby która potrafi to zdekompilować i jeszcze kreatywnie wykorzystać ze szkodą dla autora.

Podsumowując: Obfuscatory są słabym zabezpieczeniem i też do zabezpieczania zwykle "mało wartościowych rozwiązań" są stosowane - w sensie takich, których ryzyko odkodowania nie pociąga za sobą dużych strat. Jak masz rzeczywiście cenne algorytmy to udostępniasz je jako np. webService. Natomiast w przypadku gdy faktycznie trzeba dać je klientowi to dajesz jako skompilowane do kodu maszynowego biblioteki + dodatkowo wprowadzając zabezpieczenia utrudniające debuggowanie takiego kodu maszynowego.

Jakoś nie widzę kogoś zawzięcie debugującego kod żeby zaoszczędzić 200 czy nawet 1000zł. Rozumiem, że jako 15-16 latek debugowałem gry, żeby zapisać się w tabeli wyników albo żeby mieć nieskończoną kasę :-) Ale w "dorosłym" życiu to chyba jedynie jak ktoś przychodzi i mówi słuchaj Pan mam program w fabryce ale programista zaginął/umarł/uciekł a program steruje całą linią produkcyjną i jestem w du..ie. Wtedy może w ramach pomocy bym coś debugował ale jednocześnie sugerując szybką zmianę systemu na taki z wsparciem.

12

Mam wrażenie, że temat ociera się o absurd.
99,99999999% ludzi ma w dupie Twój kod. Jeśli biznes okaże się dochodowy to ktos to sobie napisze po swojemu. No chyba, że łamiesz klucze prywatne do portfeli bitcoinowych. W ciagu ponas 20 lat raz w zyciu mialwm taki przypadek, ze jakiś stary soft twierdzil brak klucza licencyjnego a firma od dawna nie istniala. Do czasu zastapienia wlasnym softem ttzeba bylo przykombinowac i po rewersie odczytalismy kod sprawdzania licencji.
Myślisz, że Comarch sprzedaje tysiące licencji na Optimę czy XLa bo tam jest jakiś magiczny kod? Nie. To sieć sprzedaży i marketing na to pracuje.
Teksty o sprawdzaniu plikow na VPSach to jakieś chore imaginacje.
Tracisz czas na głupoty.

1

Osobiście uważam, że kod każdej aplikacji dostępnej publicznie powinien być dobrze zaciemniony. Jeżeli chodzi o Jave/C# to dekompilacja sprowadza się do otwarcia programu w odpowiednim dekompilatorze i otrzymujemy czysty kod źródłowy.

0
ple napisał(a):

Osobiście uważam, że kod każdej aplikacji dostępnej publicznie powinien być dobrze zaciemniony.

Po co każdej ?

0
jacek.placek napisał(a):

Mam wrażenie, że temat ociera się o absurd.
99,99999999% ludzi ma w dupie Twój kod. Jeśli biznes okaże się dochodowy to ktos to sobie napisze po swojemu. No chyba, że łamiesz klucze prywatne do portfeli bitcoinowych. W ciagu ponas 20 lat raz w zyciu mialwm taki przypadek, ze jakiś stary soft twierdzil brak klucza licencyjnego a firma od dawna nie istniala. Do czasu zastapienia wlasnym softem ttzeba bylo przykombinowac i po rewersie odczytalismy kod sprawdzania licencji.
Myślisz, że Comarch sprzedaje tysiące licencji na Optimę czy XLa bo tam jest jakiś magiczny kod? Nie. To sieć sprzedaży i marketing na to pracuje.
Teksty o sprawdzaniu plikow na VPSach to jakieś chore imaginacje.
Tracisz czas na głupoty.

katakrowa napisał(a):
ple napisał(a):

Osobiście uważam, że kod każdej aplikacji dostępnej publicznie powinien być dobrze zaciemniony.

Po co każdej ?

Ja chcialbym napisac aplikacje dla osob w przedziale 15-30 lat. I jesli biznes by wypalil to zaraz sie znajda 16 latkowie co wpisze w google dekompilacja kodu a pozniej pobierze VS 2019 i wklei gotowy kod po czym usprawni lub zaktualizuje kod do obecnych standardow i odsprzeda za doladowania PSC 30 zl i szukaj krowy w polu.

0

Może autor wątku zdradzi jaki pomysł stoi z aplikacją? Bo skoro algorytm jest tak skomplikowany, to samą ideę można chyba ujawnić?

0
MESSIAH napisał(a):

Ja chcialbym napisac aplikacje dla osob w przedziale 15-30 lat. I jesli biznes by wypalil to zaraz sie znajda 16 latkowie co wpisze w google dekompilacja kodu a pozniej pobierze VS 2019 i wklei gotowy kod po czym usprawni lub zaktualizuje kod do obecnych standardow i odsprzeda za doladowania PSC 30 zl i szukaj krowy w polu.

No to napisz. Jeśli ktoś uzna, że chce za to zapłacić to zapłaci a jeśli nie to nie. Teksty o 16-latkach dekompilujących kod to jakieś bzdury. Ja jestem SPOZA zakresu 15-30 ale jakoś nie kojarzę istnienia takiego rynku nielegalnego softu za doładowanie.

1
jacek.placek napisał(a):
MESSIAH napisał(a):

Ja chcialbym napisac aplikacje dla osob w przedziale 15-30 lat. I jesli biznes by wypalil to zaraz sie znajda 16 latkowie co wpisze w google dekompilacja kodu a pozniej pobierze VS 2019 i wklei gotowy kod po czym usprawni lub zaktualizuje kod do obecnych standardow i odsprzeda za doladowania PSC 30 zl i szukaj krowy w polu.

No to napisz. Jeśli ktoś uzna, że chce za to zapłacić to zapłaci a jeśli nie to nie. Teksty o 16-latkach dekompilujących kod to jakieś bzdury. Ja jestem SPOZA zakresu 15-30 ale jakoś nie kojarzę istnienia takiego rynku nielegalnego softu za doładowanie.

No bo nie siedzisz w takich grupach wiekowych. Jesli zaczniesz z nimi wspolpracowac - czyli dostarczac im soft - szybko beda pytac w swoich kregach jak to zrobic za darmo. Tak jak gry na torrenie.

2

Kolego, ale już otrzymałeś odpowiedź - istotne mechanizmy trzymaj na serwerze, dostraczaj tylko klienta, który to konsumuje.
W ten sposób masz zabezpieczone istotne mechanizmy i nie wpadasz w paranoję, że "ktoś Ci kud wykradnie, jakiś zdemoralizowany 12-latek".

Oczywiscie, jak ktoś będzie baaaasrdzo chciał, to mało co go powstrzyma, ale nasuwa się pytanie kiedy zacząć brać tabletki ;)

Serio, wg. mnie przeceniasz istotę problemu przede wszystkim i tyle.
A jak masz faktycznie wątpliwościa, to też już się ludzie ogarnięci w temacie wypowiedzieli. Jedyne czego próbujesz udowodnić to niepowtarzalność algorytmu, a to... Jest wątpliwe :P

No offence mate. Ja się tu udzielam raz na pół roku, jestem "junioro-senioro-cholerawieczym" i nadal się uczę :)

2

@Klojtex:

Serio, wg. mnie przeceniasz istotę problemu przede wszystkim i tyle.

Zależy od typu softu.

Jeżeli są to cheaty do gier, to twój soft mógłby być piracony i często używany nawet 10 lat po zaprzestaniu jego rozwoju, znam takie przypadki ;)

Software który był płatny ale został zcrackowany ok. 10 lat temu jest nadal używany przez graczy jeżeli jeszcze grają i są to setki - tysiące osób.

I to akurat jest ten target o którym pisze @MESSIAH - 16 latkowie

No bo nie siedzisz w takich grupach wiekowych. Jesli zaczniesz z nimi wspolpracowac - czyli dostarczac im soft - szybko beda pytac w swoich kregach jak to zrobic za darmo. Tak jak gry na torrenie.

0

@Klojtex: Tak Panie programmer. Nie celuje w cheaty tylko młodzież z pieniędzmi. Znam już grupy osób które chciałyby korzystać z mojego rozwiązania. Pytałem o to wcześniej i jest zainteresowanie. Pytanie tylko kto jest po drugiej stronie monitora - z tego co można wywnioskować z obserwacji są to ludzie którzy prawdopodobnie znają ify, else i tym podobne 😏. Moim skromnym zdaniem lepiej dmuchać na zimne.

0

O jaką dekompilację chodzi ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1