Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][Flash] - bezpieczna komunikacja
Forum PHP.pl > Forum > Przedszkole
Ziem
Witam!
Chciałbym się dowiedzieć jaki jest najskuteczniejszy i najbezpieczniejszy sposób komunikacji między Flashem (AS3) a PHP? Głównie zależy mi na wysyłaniu wyników z Flasha do PHP. Wiem, że jest coś takiego jak LoadVars() czy AMFPHP, ale czy istnieją lepsze rozwiązania?

Z góry dziękuję za odpowiedź.
Pozdrawiam, Ziem!
wookieb
Zależy jak kto woli
Do wysyłania służy klasa URLRequest + URLLoader do xmli, jsonów stringów itd.
AMFPHP jest najłatwiejszy od strony flasha ale wymaga więcej działan po stronie php. Lecz stosowanie xmla badz jsona bedzie uniwersalne zarowna dla ajaxa, flasha a takze wiele innych technologii.
Ziem
Cytat(wookieb @ 17.05.2010, 16:04:42 ) *
Zależy jak kto woli
Do wysyłania służy klasa URLRequest + URLLoader do xmli, jsonów stringów itd.
AMFPHP jest najłatwiejszy od strony flasha ale wymaga więcej działan po stronie php. Lecz stosowanie xmla badz jsona bedzie uniwersalne zarowna dla ajaxa, flasha a takze wiele innych technologii.

Może dokładniej opiszę o co mi chodzi. Załóżmy, że mam stronę na której użytkownicy zdobywają punkty za wygraną w jakieś grze (wiadomo, gierki są we Flashu, a strona PHP + MySQL). W bazie MySQL trzymam te punkty. Teraz zastanawiam się nad najlepszym rozwiązaniem problemu dodawania punktów użytkownikom. Myślałem nad tym, aby po zakończonej grze Flash wywoływał jakiś tam plik który przechwytywałby zmienne POST i zapisywał je (dodawał punkty) do bazy. Wiadomo, URLRequest i URLLoader będą akurat, ale czy to rozwiązanie jest bezpieczne? Czy istnieje w tym przypadku możliwość, że "cwany" użytkownik sam będzie nabijał sobie punkty?
erix
Cytat
Wiadomo, URLRequest i URLLoader będą akurat, ale czy to rozwiązanie jest bezpieczne? Czy istnieje w tym przypadku możliwość, że "cwany" użytkownik sam będzie nabijał sobie punkty?

Będzie mógł, nawet wtedy, gdy zrobisz odpowiednio cwany algorytm.

  1. odczytanie kodu źródłowego nie jest jakimś nieziemsko trudnym zadaniem (np. Sothink's SWF Decompiler). Nawet jeśli kod jest zaobfuskowany - odpowiednio zdeterminowany osobnik da sobie radę w kilka godzin
  2. ostatnio też męczyłem się z podobnym problemem i to wszystko okazuje się na nic, gdyż są programy w stylu GameCheat, czy czegoś takiego, co pozwala na dowolną manipulację animacją


Summa summarum, zmiana sposobu przekazywania danych raczej na niewiele się zda...

Pisałem na podstawie własnych doświadczeń; niech ktoś mnie poprawi, jeśli jestem w błędzie.
Ziem
Cytat(erix @ 17.05.2010, 17:32:35 ) *
Będzie mógł, nawet wtedy, gdy zrobisz odpowiednio cwany algorytm.

  1. odczytanie kodu źródłowego nie jest jakimś nieziemsko trudnym zadaniem (np. Sothink's SWF Decompiler). Nawet jeśli kod jest zaobfuskowany - odpowiednio zdeterminowany osobnik da sobie radę w kilka godzin
  2. ostatnio też męczyłem się z podobnym problemem i to wszystko okazuje się na nic, gdyż są programy w stylu GameCheat, czy czegoś takiego, co pozwala na dowolną manipulację animacją


Summa summarum, zmiana sposobu przekazywania danych raczej na niewiele się zda...

Pisałem na podstawie własnych doświadczeń; niech ktoś mnie poprawi, jeśli jestem w błędzie.

No właśnie o to mniej więcej mi chodziło, dodatkowo zastanawiałem się, co by było gdyby taki delikwent odgadł lub jakoś odczytał ze zdekodowanej gry/animacji informacje: co i do jakiego pliku zostaje wysyłane w momencie wygranej/przegranej. W ten sposób mógłby w kółko "nabijać" sobie punkty, wysyłając odpowiednie dane (POST).

Czy istnieje możliwość zabezpieczenie się przed tego typu działaniami? Słyszałem, że można zakodować plik Flasha, ale nie wiem na ile to skuteczne...
wookieb
Zapewne da się to jakoś uczynić aczkolwiek są to dość zaawansowane tychniki i wymagają dobrej znajomości kryptografii. Jeżeli nie będziesz mieć z tym ogromnego problemu to właściwie można by było to narazie olać.
Ziem
Cytat(wookieb @ 17.05.2010, 18:30:32 ) *
Zapewne da się to jakoś uczynić aczkolwiek są to dość zaawansowane tychniki i wymagają dobrej znajomości kryptografii. Jeżeli nie będziesz mieć z tym ogromnego problemu to właściwie można by było to narazie olać.

Myślę, że dopiero "w praniu" okaże się czy to będzie ogromny problem. Myślałem o stworzeniu czegoś, co będzie czuwać nad aktywnością użytkowników, jakiś logger czy coś podobnego. No nic coś pokombinuję.

Dzięki Wam za pomoc biggrin.gif !
zegarek84
nie da rady i szkoda zachodu... ktoś bardziej cwany nawet nie będzie analizował kodu tylko sprawdzi co jest wysyłane i jak... utrudnić możesz jeśli będziesz logował dokładniejsze zależności - by wykonać jakąś akcję trzeba wykonać inną [ale to też nie zabezpieczenie...]
bełdzio
zerknij na http://www.beldzio.com/flashowe-logowanie może pomoże Ci przy testowaniu tego co przychodzi / wychodzi z flasha
Ziem
Skoro nie da się tego zabezpieczyć to można spróbować jeszcze utrudnić "cwanemu" użytkownikowi życie biggrin.gif.

bełdzio - dzięki za linka, na pewno się przyda smile.gif.

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.