Jump to content
php.lv forumi

HTML5 Canvas/JavaScript spēļu drošība


ArnisR

Recommended Posts

Situācijas apraksts:

 

Tātad ir HTML5 Canvas spēle, - visas darbības tur notiek ar JavaScript! Lai varētu saglabāt spēles rezultātus u.tml., tiek veikts AJAX pieprasījums PHP apstrādes failam, kurš savukārt ievieto padotās vērtības datubāzē.

 

Jautājums:

Kā uzlabot spēlēs drošību pret negodīgiem spēlētājiem, kā panākt to, lai rezultātus būtu iespējams saglabāt tikai tādā gadījumā, ja tie nāk no spēles?

 

Paldies!

Edited by ArnisR
Link to comment
Share on other sites

Tas atkarīgs no dažādiem faktoriem.

 

Ja visa spēle notiek klienta pusē, un tikai beigās tiek sūtīts gala rezultāts - tu nekad nevari būt drošs, kāds patiesībā bija rezultāts.

 

Ir vēl dažādi varianti, bet nu būtu jāzina, par kādu spēli tieši ir runa, kāda ir tās specifika - kas ir "gājiens", kas nosaka rezultātu, utt.

Link to comment
Share on other sites

Tak "hakeris" jau var sākt reālu spēli, ar developer tooli pārlabot punktus un nosūtīt, vai paskatīties, kas tie par mainīgajiem, kas tiek sūtīti līdzi un nosūtīt tos. Visdrošākais variants ir simulēt visus pēli arī uz servera, teiksim ierakstīt katru spēles soļa lietotāja darbību un ar tādu pašu algoritmu iziet cauri uz servera un saskaitīt punkuts, bet tas ir pārāk dārgi, tāpēc vienkāršs variants ir testēt spēles starprezultātus, piemēram, ik pēc 3 sekundēm, vai kāda cita spēlei raksturīga intervāla un notestēt to atbilstību. Piemēram, ja tā ir čūska, tad var pēc katra apēstā kubiņa nosūtīt uz serveri pārbaudi, kurā pārbauda un cik punkti bija iepriekšejā reizē, cik tagad, cik ilgā laikā reāli bija aiziet līdz kubiņam (taisnā distance/max ātrumu), utt.

Link to comment
Share on other sites

No pieredzes var teikt, ka lielu daļu čīteru tiešām var atrast tieši ar starprezultātiem, kā codez teica. Tomēr, 100% drošību iegūt ar JS nevarēs, jo vienmēr var uzrakstīt kodu, kas imitē tavu JS kodu, jo nav jau problēmu tavu JS kodu apskatīt. Pieredze rāda, ka vienmēr būs cilvēki ar dažādiem programmēšanas skilliem, kam interesēs pārspēt spēles izstrādātājus.

Ja tas ir naudas jautājums, tad skaties, kur ir tā robeža, kad čīteri spēj nodarīt finansiālu kaitējumu un piever acis uz dažiem sīkiem gadījumiem.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...