0
例如,我有一個實例播放器。我知道我無法在JavaScript中輸入:「player.health = 99999」,但瀏覽器不讓我知道,但如果有人制作了一個瀏覽器,確實讓你這麼做?還是不可能在默認情況下更改這種變量?製作多人遊戲時,我是否依賴瀏覽器不給玩家變量(所以他可以破解)?
例如,我有一個實例播放器。我知道我無法在JavaScript中輸入:「player.health = 99999」,但瀏覽器不讓我知道,但如果有人制作了一個瀏覽器,確實讓你這麼做?還是不可能在默認情況下更改這種變量?製作多人遊戲時,我是否依賴瀏覽器不給玩家變量(所以他可以破解)?
由客戶端執行的是不安全的一切事物的價值。如果你希望這是安全的,那麼你必須在服務器上檢查它。
我相信JS調試器(如Firebug)將允許您更改JavaScript變量
始終認爲客戶端軟件可能受到危害。這也意味着永遠不會發送任何信息給玩家不應該看到的信息,就像其他玩家的位置一樣(除非它們當然應該是可見的:)) –
我必須發送他們的位置,玩家該怎麼辦?看看其他人在哪裏?而且,下次服務器發送它們時,它們的位置會被覆蓋,所以我不擔心這一點。但是服務器已經擁有**的所有信息也應該是安全的。我擔心有人更改我的代碼或其他東西... – corazza
'所有的安全都是妥協' - 布魯斯Schneier。這裏的安全成本對於服務器來說是更多的工作。你甚至可以忍受_game_中的'player.health = 9999',但是* bank *'account.balance = 9999'就是毀滅。 –