google / google/codeworld

Quota, DOS protection, or verification for the game relay server

Open
#384 0 comments 0 reactions 0 assignees View on GitHub
discussion
Dominant language
Haskell
Stars
1.3k
Forks
201
PR merge metrics
No merged PRs in 30d

Description

It strikes me as a little dangerous to be running an open websocket relay server with no verification of its intended uses. Scenarios to think about:
1. Kid writes a cool game, shares on YouTube or something, it "goes viral", suddenly we have millions of connections.
2. Someone finds the protocol documentation, and decides to use it for their own unrelated shady commercial service, and suddenly we're handling millions of connections that aren't even about CodeWorld at all.
3. Someone thinks it's funny to take the system down, creates a session with 2000 players (because the work grows quadratically with the number of clients), and floods it with traffic from malware-infested systems.

It would be good to think about some of these issues. They are not pressing yet, but I'd rather they don't become pressing in the middle of the night!

Contributor guide

Open the contributing guide

Research direction

Review the open websocket relay server and its protocol documentation, focusing on the stated risks around unverified use, connection volume, large sessions, and quadratic client work. Define a concrete protection approach and measurable limits before implementation. Done means the relay has agreed safeguards against unexpected or abusive load, with verification or quota behavior documented.

Written by the indexing model from the issue text.

Assessment

Domain
backend, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.