use decentral encrypted social network http://interface.sf.net and add a proxy into the lib of rslib and you are done. use it over tor and it works. Thanks
2012/5/15 Henry Story <henry.st...@bblfish.net>: > Hi, > > Recently in Berlin I was lucky to met Jacob Applebaum at the CCCB as he > arrived to talk at the re:publica conference. I had been wondering for some > time if it would be possible to use WebID for distributed social networks > using linked data behind Tor, but I had not yet had time to make it a > priority . From the discussion with Jacob, it seems like this should be > feasible, and indeed relatively easy, but of course only real implementations > can tell. > > Here of course a bit of background on WebId is needed ( > http://webid.info/spec/ ). There are a number of ways of thinking of WebID. > At one level it is an application of mathematical logic and web architecture > to the problem of identity. At another it is a philosophical hack of TLS, > whose effect is to shift the Trust in TLS from a hierarchical system into a > web of trust. > > To understand its power one has to understand LinkedData and RESTful web > services. But those are in fact exceedingly easy: REST is easy and well > known, and LinkedData is just the idea that one applies the concept of > hypertext to data - indeed some have called it hyperdata. Hyperdata allows > one to create distributed social networks, the same way we have created the > world wide web - allowing each individual person or organisation to control > access to their data (web site). Place the web site behind Tor, use .onion > URLs and you now have a web site - as I understand it - that can't be located > by IP address. Place your (linked-)data behind tor, use .onion URLs and you > should be able to publish data without anyone knowing where the server is. > This of course creates issues of trust, and this is where distributed Social > Networks can help. > > In order to understand distributed social networks built using LinkedData it > helps not to start with TOR. Indeed > it helps to start without TLS, and just use plain HTTP. This way we have been > able to create distributed social networks > with millions of users using the foaf (friend of a friend) ontology. ( I go > into how that works in detail in a presentation > "Philosophy of the Social Web" http://bblfish.net/tmp/2010/10/26/ ). But of > course that does not address the serious issues of privacy. So this lead me > to add a layer around http with TLS and use client side certificates to > identify people in a distributed social web that can use access control to > limit who can see what. ( the http://webid.info/spec/ has a diagram that > makes that clear ). But TLS with WebID still reveals the users IP address. So > this is where we should be able add another layer to our onion: Tor. > > All we need are Tor onion URIs. Place an onion URI for your profile in your > X509 certificate and you should now be able to authenticate to any web site > without the server you are authenticating to knowing where your identity > Profile is located. If that server wishes to know more about you than your > public key, your server can let it know as much or as little as you wish it > to know by requiring it to authenticate with WebID and then calculating its > position in your web of trust. (WebID is a recursive protocol). In such a > social web you can allow your friends to post to your wall, and you can > interact happily as if you were on Facebook, but with no big brother in the > loop. Anyone else will just see your onion URL and a public key. > > There is a short screen cast showing how this works with current browsers at > http://webid.info/ . > > So how does one proceed to test this out? I think there are a 3 stages, of > increasing complexity > > 1. build a foaf social web behind Tor > > Instead of links such as the following ( which you can find in my > foaf-profile at http://bblfish.net/people/henry/card ) > > @prefix foaf: <http://xmlns.com/foaf/0.1/> . > > <http://bblfish.net/people/henry/card#me> a foaf:Person; > foaf:knows <http://www.w3.org/People/Berners-Lee/card#i> . > > you need to write the above using .onion URIs and make those publicly > available on the tor network. It should be possible to follow the links from > one profile to another, deference the second url and get more information... > using well known LinkedData principles. It is best if those files are on > different machines to make it real. > > 2. if the above works then you can add your X509 public key to your profile > as explained in the http://webid.info/spec/ > > <http://a2342sdsf.onion/profile#me> cert:key [ cert:modulus > "...."^^xsd:hexBinary; cert:exponent 65537 ] . > > 2.1 then create a service behind tor that authenticates users with X509 > WebId certificates with .onion urls and see if you can log in there. > > If the above can be done, then adding access control is just one more step > that is relatively easy. > I am currently building a server in Scala that can do this type of work very > efficiently, but there are others who > have done it already in php/python and C# . > > Currently I am focusing on building the server with access control using > plain https without Tor. If I am right in believing the above to be workable, > then it should be quite easy to add Tor to such a server. Jacob suggested I > look at JTor, as I am working in the Java ecosystem > https://github.com/brl/jtor . But perhaps others will want to explore some of > this before I get around to doing it, or indeed perhaps there are some > Scala/Java people who are interested in working with me on this a bit more > closely (so we can move faster). > > I hope that helps and would be interested in your feedback, > > Henry > > > Social Web Architect > http://bblfish.net/ > > _______________________________________________ > tor-talk mailing list > tor-talk@lists.torproject.org > https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-talk _______________________________________________ tor-talk mailing list tor-talk@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-talk