Dodge reshapes the chunk-by-chunk download pattern of streaming video so that observers — coffee shop neighbors, network admins, ISPs — can't see an identifying fingerprint. To give you a high-quality, private viewing experience.
When you watch online video, your browser doesn't download the file all at once. It fetches a stream of segments — small pieces a few seconds long.
Every segment has the same duration, but not the same size. For example, action scenes are large, and still scenes are small.
Different videos produce different sequences of sizes, and these differences are significant enough to identify a specific title from a known catalog.
Anyone watching your network — a coffee shop neighbor, a campus admin, your ISP — can use videos' patterns to identify what you're watching.
A Dodge defense reshapes the download sequence so the visible traffic no longer identifies a specific title. This can be done in many different ways, and with different goals and viewing experience trade-offs.
Want to watch videos that haven't been published alongside a defense, or verify that your content provider has set up Dodge correctly? Download the browser extension to swap out undefended players and start defending.
Install the browser extension to swap out undefended players for Dodge, apply ready-made defenses, and verify them.
Install →Use the dash.js module, generate defenses using our tools or your own tools that follow the extended manifest spec.
Tools and spec →Traffic analysis defense is a young research area. A poorly designed defense can leak as much as no defense at all, and we'll continue learning about what works as more people deploy. Dodge is engineered to be safe-by-default: with a well-thought-out defense, your traffic should be no easier to identify than without one — usually much harder.
We publish our research, source code, and limitations openly. If you're a content provider thinking about deployment, we'd like to help.