Document
Stage 1 - クライアント値を信用したスコア保存
Stage 1 で学べること、確認ポイント、初心者向けの見方をまとめたページです。
このステージで学べること
サーバーは、クライアントから送られてきたスコアをそのまま信用してはいけない、ということを学べます。
脆弱版で起きること
- 送った値がそのまま保存されやすい
- 不自然な高得点でも通ってしまう
修正版で確認すること
- スコアの上限や妥当性をサーバーが確認している
- セッション情報と照合している
ここを見ると分かりやすい
client_scoreServer DecisionStored
初心者向けのポイント
「ゲームの結果を決めるのはブラウザではなくサーバー」という考え方が大切です。
ヒント
- 実際のスコアより大きい数を送ると差が見えやすいです
- 負数や極端な値でも差が出ます