whatisgithub

What is naiveproxy?

klzgrad/naiveproxy — explained in plain English

Analysis updated 2026-06-24

8,868C++Audience · ops devopsComplexity · 4/5Setup · hard

In one sentence

A proxy tool that disguises your internet traffic to look exactly like Chrome browser activity, making it very hard for censorship or filtering systems to detect or block.

Mindmap

mindmap
  root((NaiveProxy))
    How it works
      Chrome traffic disguise
      Chromium network code
      Random packet padding
      Web server facade
    Components
      Server Caddy
      Local client proxy
    Platforms
      Windows
      Linux
      macOS
      Android
    Use Cases
      Bypass censorship
      Private internet access
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Set up a personal proxy server to access blocked websites from countries with heavy network filtering.

USE CASE 2

Route application traffic through a censorship-resistant proxy that mimics real Chrome browser behavior.

USE CASE 3

Deploy a server-side proxy hidden behind a normal-looking website using Caddy so external probes see nothing unusual.

USE CASE 4

Use NaiveProxy on Android through a third-party app without needing to set up a separate VPN.

What is it built with?

C++ChromiumCaddy

How does it compare?

klzgrad/naiveproxynevcairiel/lavfiltersdusty-nv/jetson-inference
Stars8,8688,8728,848
LanguageC++C++C++
Setup difficultyhardeasyhard
Complexity4/53/54/5
Audienceops devopsdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires a VPS outside the restricted network and manual Caddy web server configuration on the server side.

License not mentioned in the explanation.

So what is it?

NaiveProxy is a proxy tool built to help people access the internet in environments where traffic is monitored and selectively blocked, commonly called censorship or filtering. It works by disguising internet traffic so that it looks indistinguishable from ordinary web browsing using a Chrome browser. This makes it significantly harder for blocking systems to identify and stop. The way it achieves this disguise is by reusing Chromium's actual network code, the same code that powers the Chrome browser. Because the traffic it produces comes from the same code a real Chrome browser uses, it passes many of the fingerprinting and inspection techniques that censorship systems rely on. Additional protections include hiding the proxy server behind an ordinary web server (so that anyone probing the server from outside just sees a normal website), adding random padding to packet lengths to obscure usage patterns, and routing traffic through standard web protocols rather than protocols that look unusual. The setup has two parts. A server component runs on a machine outside the restricted network, typically using a web server tool called Caddy to handle incoming connections. A client component runs on the user's local machine and creates a local proxy endpoint that other applications can route traffic through. NaiveProxy supports Windows, Linux, macOS, Android (through several third-party apps), and OpenWrt (a router operating system). It also integrates with the v2rayN graphical client for users who prefer not to use the command line. The README contains a detailed technical section explaining the padding protocol it uses to blend traffic lengths with typical browser behavior. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
Walk me through setting up a NaiveProxy server using Caddy on a Linux VPS, and then configuring a client on my Windows machine to route all browser traffic through it.
Prompt 2
How do I install and configure NaiveProxy on Android? What server details do I need, and which third-party app should I use?
Prompt 3
Explain how NaiveProxy's traffic padding protocol works and why it makes traffic harder to detect than a standard SOCKS5 proxy.
Prompt 4
What ports and firewall rules do I need to open on my VPS to run NaiveProxy's server component behind Caddy?
Prompt 5
How do I configure NaiveProxy to work with the v2rayN graphical client on Windows instead of using the command line?

Frequently asked questions

What is naiveproxy?

A proxy tool that disguises your internet traffic to look exactly like Chrome browser activity, making it very hard for censorship or filtering systems to detect or block.

What language is naiveproxy written in?

Mainly C++. The stack also includes C++, Chromium, Caddy.

What license does naiveproxy use?

License not mentioned in the explanation.

How hard is naiveproxy to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is naiveproxy for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.