Hello people! I thought some here might be interested in a project I've been working on for a few months, named Pagekite.
(tl;dr: https://pagekite.net/downloads/) Pagekite is a very pragmatic attempt to enable more p2p-like behavior on the WWW by making it really easy for people to run publicly visible HTTP (or HTTPS) servers from personal and/or mobile devices. The system is not true "p2p" in that it relies on intermediate servers (front-ends) to do application layer routing (proxying/tunneling). but the hope is that it will bring at least some p2p features to the WWW. The connection between a web server and a front-end is an outgoing (from the web-server) TLS tunnel, which means it goes right through most firewalls and NAT, and can even be tunneled over SOCKS or Tor. The front-end is similar to a traditional HTTP load-balancer which does vhost-name based back-end selection, except the configuration is completely dynamic and all the traffic is sent over said encrypted tunnels. With Pagekite you don't need a stable IP address and you don't need to know how to reconfigure your router/firewall in order to host a website, so the website can be served directly off your personal hardware, allowing full desktop integration, full access to peripherals and storage, etc. etc. If we accept the limitation that sites like this can only be accessed using modern browsers, it is even possible today to enable end-to-end HTTPS encryption which the front-ends cannot spy on or censor. Pagekite is FOSS, so if your front-end provider (that would be my business model) decides to block you or overcharge, you can move to a competitor or team up with some friends to rent a (v)server somewhere else and do it yourself. So although not true p2p, I think this architecture retains many of the benefits while being backwards compatible with the tools people already have. The primary inspiration for this project was actually the exact same reasoning as I noticed on the recent thread about p2p social networking, about how proximity to the end-user and the end-user's hardware and peripherals should be leveraged to add features to free/distributed social networks that the cloud-based incumbents would have a hard time matching. I think Diaspora and Appleseed and all the other social web projects are horribly handicapped by their decision to compete on Facebook's home turf, if you will. Facebook have shown themselves to be very technically competent and with their resources and user-base, they'll be incredibly hard to beat at their own game. Simultaneously, the true p2p networks are handicapped by the requirement that people install specialized clients to talk to their friends which leads to a chicken-and-egg problem for adoption and growth. I'm hoping Pagekite will allow hybrids to be developed, where you have to install software to create a "profile" (your own private Diaspora seed, for example) but the software can be nicely packaged and easy to use (and not require reconfiguring your router). However, your friends and family will not have to install anything new just to browse your photos and make comments on this new social networking page - it's not until they want some of the special features your page has due to its proximity to your peripherals, media library, etc. that they have to install anything... so growth can be organic and based on innovative features, not just a vague promise of privacy and independence. No matter how important that promise is, it doesn't resonate with everyone. So this is just as much an attempted social hack, as it is technology. :-) What I've got today is the remote front-end proxy/tunnel, and I am looking for people to test it, find bugs and ultimately build something amazing on top of it. I'm working to build a dynamic-DNS-style business around running front-ends for people, but all the "secret sauce" is free software under the AGPL license - in the form of a single Python program with minimal dependencies. It runs out of the box on any Mac or Linux machine, and Windows works fine too if you install Python first. Link: https://pagekite.net/downloads/ Thoughts? -- Bjarni R. Einarsson The Beanstalks Project ehf. Making personal web-pages fly: http://pagekite.net/
_______________________________________________ p2p-hackers mailing list p2p-hackers@lists.zooko.com http://lists.zooko.com/mailman/listinfo/p2p-hackers