Zit al een behoorlijke tijd met een probleem waar ik zelf tot nu toe nog geen waterdichte oplossing voor gevonden heb, en als ik zo eens rond google merk ik dat heel veel mensen tegen dit probleem aan lopen.
Het gaat om een veilige manier van communiceren tussen Flash en PHP, stel je voor een Flash spel waarbij een score gehaald kan worden. Deze dient aan het eind opgestuurd te worden naar een webapplicatie in PHP, zodat deze opgeslagen wordt in MySQL en zo getoond kan worden op een website.
Dit systeem werkt prima, op dit moment wordt er vanuit Flash een POST gedaan en PHP vangt deze op en geeft een OK terug.
Nu komt de beveiliging hiervan om de hoek, iedereen weet dat Flash gemakkelijk te decompilen is, hiervoor zijn verschillende oplossingen en ik heb gekozen voor secureSWF, deze "encrypt" de broncode zodat als deze gedecompiled wordt je alleen random zooi ziet staan.
Echter het heen en weer zenden van de vars, wat is nu een goede manier om te voorkomen dat mensen er mee gaan rommelen, de flash decompilen, met packet sniffers gaan kijken etc, of op een andere manier een nep score op kunnen sturen en zo de wedstrijd winnen? (Er wordt wel https gebruikt)
Ik heb al tientallen oplossingen gelezen, van standaard encryptie tot uitgebreide systemen met hashes en salts die heen en weer gaan, maar uiteindelijk komen ze allemaal op de basis neer: Je moet er vanuit gaan dat iemand jouw swf broncode kan lezen en hier dus een manier omheen kan bedenken.
Desnoods kan er met tools zoals CheatEngine gewerkt worden waarbij het geheugen uitgelezen wordt en alle variabelen zo in beeld komen.
Wie heeft hier een intressant idee voor om het te voorkomen, mits dit mogelijk is, of anders zo moeilijk te maken, dat er gewoonweg niet uit te komen is zonder de serverside PHP code te weten?
Ik zit zelf te denken in een soort van request token systeem, dat er dus aan PHP een bepaalde token opgevraagd moet worden die aan het eind ook weer mee teruggestuurd zal moeten worden, maar hoe dit waterdicht te krijgen ben ik nog niet helemaal uit.
Het gaat om een veilige manier van communiceren tussen Flash en PHP, stel je voor een Flash spel waarbij een score gehaald kan worden. Deze dient aan het eind opgestuurd te worden naar een webapplicatie in PHP, zodat deze opgeslagen wordt in MySQL en zo getoond kan worden op een website.
Dit systeem werkt prima, op dit moment wordt er vanuit Flash een POST gedaan en PHP vangt deze op en geeft een OK terug.
Nu komt de beveiliging hiervan om de hoek, iedereen weet dat Flash gemakkelijk te decompilen is, hiervoor zijn verschillende oplossingen en ik heb gekozen voor secureSWF, deze "encrypt" de broncode zodat als deze gedecompiled wordt je alleen random zooi ziet staan.
Echter het heen en weer zenden van de vars, wat is nu een goede manier om te voorkomen dat mensen er mee gaan rommelen, de flash decompilen, met packet sniffers gaan kijken etc, of op een andere manier een nep score op kunnen sturen en zo de wedstrijd winnen? (Er wordt wel https gebruikt)
Ik heb al tientallen oplossingen gelezen, van standaard encryptie tot uitgebreide systemen met hashes en salts die heen en weer gaan, maar uiteindelijk komen ze allemaal op de basis neer: Je moet er vanuit gaan dat iemand jouw swf broncode kan lezen en hier dus een manier omheen kan bedenken.
Desnoods kan er met tools zoals CheatEngine gewerkt worden waarbij het geheugen uitgelezen wordt en alle variabelen zo in beeld komen.
Wie heeft hier een intressant idee voor om het te voorkomen, mits dit mogelijk is, of anders zo moeilijk te maken, dat er gewoonweg niet uit te komen is zonder de serverside PHP code te weten?
Ik zit zelf te denken in een soort van request token systeem, dat er dus aan PHP een bepaalde token opgevraagd moet worden die aan het eind ook weer mee teruggestuurd zal moeten worden, maar hoe dit waterdicht te krijgen ben ik nog niet helemaal uit.