donkey napisał(a)
Czyli jest sens o ile gra się szybko deaktualizuje albo ma wciągający tryb multi tylko na oficjalnych serwerach. Mimo wszystko nie słyszałem o gierce która by się długo opierała przed spiraceniem jej trybu offline.
Dlatego jak grzyby po deszczu powstają różne gierki MMO oraz single, które do działania wymagają aktywnej sieci.
Całość tych zabezpieczeń sprowadza się do ładowania w locie do pamięci niewielkich zaszyfrowanych części kodu z serwera. Klucze deszyfrujące są aktualne tylko kilkadziesiąt milisekund (od momentu sprowadzenia kodu), więc ręczne łamanie tak zrobionego kodu jest bez napisania przez pirata dodatkowych narzędzi praktycznie niemożliwe.
I nie ma większego znaczenia w jakim języku jest napisana aplikacja. Grunt, żeby można było używać niskopoziomowej wielowątkowości i ładowania kodu w locie. Java spełnia oba te warunki doskonale.
Co do trybu offline, to też nie jest tak tragicznie. Zainstalowany kod, a właściwie jego fragmenty mogą być porozrzucane po każdej możliwej do wykorzystania pamięci trwałej (skrajny przypadek jaki znam, to używanie w tym celu również adresu MAC karty sieciowej). Oczywiście wersja offline może być zawsze złamana. Wersja online tylko gdy uda się złamać komunikację między klientem, a serwerem.
Wszystko sprowadza się do poniesionych kosztów złamania. Jeżeli są one tego samego rzędu wielkości co wartość potencjalnych strat producenta, to zabezpieczenie jest bardzo dobre.
Najlepsze skuteczne zabezpieczenia są takie gdy łamiący jak najdłużej nie zdaje sobie sprawy, że nie złamał do końca zabezpieczenia. Na przykład w przypadku gry kod, który wykryje, że jest coś nie w porządku może nie podnosić żadnej paniki, tylko drobnymi zmianami powoduje pewne nieodwracalne zmiany np. powolny, ale nadmierny wzrost poziomu trudności gry (taki, który ostatecznie uniemożliwia skończenie jej). Zanim złodziej zorientuje się, że nie złamał kodu, to minie mnóstwo czasu bo dopiero korzystający intensywnie ze "złamanego" kodu musieliby dojść do wniosku, że crack jest do bani.
Takie zabezpieczenia mają jednak naprawdę sporo bardziej wartościowe programy niż gry. Zabezpieczenia jakie są obecnie w grach są bardzo prymitywne i prawie w ogóle nie korzystają ze specyfiki działania zabezpieczanej aplikacji.
Natomiast autorskie zabezpieczenia wykonane jednorazowo dla konkretnego produktu są dość długo skuteczne.