p2p HTTP proxy

The other day I read the article in BBC News about Google that is going to censor itself in China (article, same on CNET). I really think that is disgusting to make the most free and open human creation (the Internet) a self-censoring medium. Of course, who can blame Google? China is a highly flourishing economy and the guys in Google want to make business - and money. If they don’t, someone else will, so do not blame them.

For quite some time I was thinking of having the ability to offer proxies to all those, like the Chinese people or the citizen of Saudi Arabia, that have limited or censored access to the Net. The idea has matured in my head and I am proposing a peer-to-peer HTTP proxy service.

I strongly believe that through minor modifications or plugins to existing p2p software - I believe the best candidate are the Gnutella network and Freenet - we can support a p2p service that could be available to all people around the world. I am willing to share a portion of my bandwidth to let anyone to read and write freely. Are you?

Technical proposal: I am proposing a scheme that is to be built around an existing p2p network (Gnutella, Freenet, other) that could look like this:

  • For users that act as proxies
  1. create a virtual shared file over the p2p network (for example bouncy_proxy.nocensor)
  2. start the proxy plugin
  3. you are ready ;)
  • For users that need to bypass censorship
  1. start the p2p software
  2. configure the web browser to use the p2p plugin as a proxy
  3. when you write a URL to the web browser, the plugin searches the p2p network for file bouncy_proxy.nocensor and registers it as a valid proxy
  4. use one or more proxies to retrieve the content for the requested URL
  5. you are free ;)

I do not know how this would work and how to solve some security issues - this is not something that you would use to login to your bank account. And of course forget HTTP pipelining and persistent connections.

However, IMHO, it worths a try. If only I had more time. To make the Net more free.

8 Responses to “p2p HTTP proxy”

  1. korkut ozkan Says:

    any solution for this scenario?

  2. dop Says:

    Nope, not yet.. If anyone wishes to start it, it would be great!

  3. roosevelt Says:

    Dop,

    I’m one of the “Chinese people” who are behind the great firewall. A search for p2p proxy solution on google brought me to your blog. I have come up with the same idea as you described. But I think there is a even better way:
    IM software like MSN, Yahoo Msger, AOL, Gtalk are themselves some kind of p2p software. And companies like M$, Yahoo, Google, can just add a small common plugin to these IM tools to create huge p2p proxy network.

  4. dop Says:

    I am sorry if the term “Chinese people” sounded disrespectful, it wasn’t meant that way.

    The problem with IM is that you can create p2p networks with only the people that you know, so it will not be a global p2p network.

    However, it would work in a small scale - for example someone behind a firewall has a friend in a country without any firewall.

  5. StarQuake Says:

    Interesting idea. What about using bittorent?

  6. muclear Says:

    Whats the problem buy server.Write a program transforming one protocol into another or hire a programmer.It’s called incapsulation of protocols.

  7. muclear Says:

    sory Encapsulation of protocols smth like this http://www.cisco.com/en/US/docs/internetworking/technology/handbook/PPP.html

    But now there are a lot of such projects.

  8. silo Says:

    Hello dop, brhka to blog sou apo to techteam kai to diabazw. Endiaferon auto pou proteineis, h erwthsh m einai pws 8a kataferoun ta atoma pou zoun se mia xwra san tn kina na katebasoun to plugin auto, kai dn 8a mporousan oi ISP na blockaroun tn xhrhs autou tou duktiou eukola kai apla ? se arketes xwres hdh to kanoun auto, alla ok uparxei kai mia sxetikh kruptografish gia na mn anhxneuetai.

Leave a Reply