skip to main bit
a man slumped on his desk, from 'The Sleep of Reason Produces
      Monsters'

Oblomovka

Currently:

Archive for June 16th, 2009

2009-06-16

wanted: spartacus, an opera unite web proxy for iran

[ Updated:. The time for this has passed; if you want to do something, install a Tor Bridge. ]

A lot of people have asked me about Opera Unite, because of my frequent hectoring about the importance of protecting and running services on the edge of the Network. In brief: how can I not love its manifesto:

Our computers are only dumb terminals connected to other computers (meaning servers) owned by other people — such as large corporations — who we depend upon to host our words, thoughts, and images. We depend on them to do it well and with our best interests at heart. We place our trust in these third parties, and we hope for the best, but as long as our own computers are not first class citizens on the Web, we are merely tenants, and hosting companies are the landlords of the Internet.

I do worry, though, about launching an experiment like this without a complete and compelling demonstration of its potential, though. The demo services that Opera offers are great, but they really are just demonstrations. It’s generating a lot of excitement and “wuh?” in equal measure on the discussions I’ve seen, which is something I recognise from my attempts to proselytize the edge to those already excited by the cloud.

It occurred to me (encouraged by Stef) that a great and timely Opera Unite application, just for the next few days, would be a web proxy  for Iranians. Run it on your Opera service, post your machine’s Unite URL onto twitter with a tag #spartacus, and Iran would be drowning in potential proxies to use.

Instead of a real http proxy (like Psiphon), the best implementation would simply let you append a URL to your Unite URL and get a website back, like “http://foo.bar.operaunite.com/www.cnn.com/”. That would get rid of handing over your cookies to an unknown third-party; it’d probably also discourage people using the service for private communications (no https, in Unite — it’d be great if Opera fixed that!).

Maybe I’d also stick in a geoip check to make sure the incoming requests are coming from a known Iranian IP block, just so users could feel worthy that they’re just catering to Iranians (you could pull them out of this free geolocation database). That way we wouldn’t be creating a permanent global clunky, insecure proxy network — or at least not until Iran recovers and starts its own phishing services.

I know I’m not a good enough JS programmer to pull this off, but the Unite JavaScript API certainly appears to permit cross-domain XMLHttp calls, and you can catch generic HTTP requests using opera.io.webserver.addEventListener(‘_request’,somehandler,false);, so it is theoretically possible (and here I hand wave to the implementation Gods).

A better solution, I know, is to get copies of Tor to those in Iran. But I think that much of what we’re seeing right now is less about perfect solutions, and more about loud, temporary solutions that might help, will do minimal harm, and as a side-effect further publicize the cause of Iranian protesters.

                                                                                                                                                                                                                                                                                                           

petit disclaimer:
My employer has enough opinions of its own, without having to have mine too.