2010-07-28 22 views
11

Powrót: planuję wdrożyć zwykłą grę, która ma zostać wdrożona w aplikacji internetowej, ale nie chcę używać Flasha zamiast zwykłego kodu JavaScript. Jedną z zalet Flasha jest to, że chciałbym jednak, aby dystrybuował kod binarny, a nie źródłowy, aby łatwiej było chronić Twój kod przed ponownym użyciem/kradzieżą przez kogoś innego, lub aby zapobiec modyfikacji kodu przez klienta, aby "oszukiwać" w gra?Jakie są metody ochrony aplikacji internetowych/gier JavaScript?

Moje pytanie brzmi: jakie są sposoby na podobną ochronę aplikacji JavaScript? Czy ograniczam się do zwykłych metod używania obfuscatora kodu? Czy to wystarczy?

+8

Downvoter: downshotes są dla złych pytań, a nie pytań o coś, czego nie chcesz, aby ludzie robili. Z tym pytaniem nie ma nic złego pod względem technicznym. – Pointy

+2

Nie sądzę, że będzie to szczególnie możliwe. Jak mówisz, istnieją techniki zaciemniania. Ale w pewnym momencie przeglądarka musi być w stanie zobaczyć kod, który ją interpretuje, co oznacza, że ​​musisz dostarczyć kod klientowi. – David

+0

@Roy Tang - obfuskowanie to wszystko, co możesz zrobić. Bądź ostrożny, ponieważ niektórzy obfuscatorzy wykonują dość głupie rzeczy i mogą sprawić, że twój kod będzie działał wolniej. Robią też niewiele, aby naprawdę "chronić" twój kod. Jeśli uważasz, że twój kod lub niektóre techniki implementacji są wartościowe, nie dostarczaj go jako Javascript na stronie internetowej. – Pointy

Odpowiedz

2

Skorzystaj z AJAX, aby zweryfikować swoją grę na podstawie kodu serwera, który kontrolujesz. Jest to również użyteczne, jeśli gra jest w pewien sposób wieloosobowa. Weryfikacja uniemożliwia zmianę kodu w celu oszukania.

Flash nie jest również odporny na bycie zabranym przez kogoś innego. Ludzie mogą pobrać plik binarny i opublikować go tam, gdzie chcą. Odtworzenia Flasha istnieją i są dość skuteczne.

+0

to, podoba mi się pomysł - czy masz jakieś dodatkowe informacje? –

+0

Dzięki! Już to rozważałem, ale oznacza to synchronizację stanu mojej gry z serwerem za pomocą wywołania ajax z każdą zmianą stanu ... może mieć dużą liczbę żądań, więc zastanawiałem się, czy istnieją alternatywy. –

+0

@Roy - W takim razie: jaka to gra? –

3

Obfuscator kodu to wszystko, co możesz zrobić. Bez względu na to, co robisz, kod wykonywalny będzie/musi być dostępny w przeglądarce.

0

Dlaczego, konkretnie, chcesz, aby był w JavaScript? Możesz użyć kodu node.js, aby uruchomić kod JavaScript po stronie serwera dla chronionych rzeczy i wchodzić z nim w interakcję ze skryptem JavaScript po stronie klienta.

Powiązane problemy