GNU/consensus/berlin-2013

From LibrePlanet
< GNU‎ | consensus
Revision as of 12:58, 5 August 2013 by Hellekin (talk | contribs) (Integrate Klaus' proposals into the main part)
Jump to: navigation, search

Socialnet_3.0

Preparing Berlin's workshop, August 24-25 2013.

The objective of this page is to come up with a short list of objectives we all share, and identify issues.


Elijah's Proposal (ES)

1) Client side encryption

We could reach consensus on this point. :)

Klaus: End-to-end encryption whenever I share information with friends - that will be realised by secushare.org


2) Social graph obfuscation

We could reach consensus on this point. :)


3) Self determined data storage

We could reach consensus on this point. :)

Klaus: Self determined storage of my data in a platform independent way - that will be realised by unhosted.org (and it is already built into Diaspora as a possibility afaik).

See OwnCloud, GNUnet, RetroShare.


4) Scalability

Resolving this point requires more details. There is no consensus yet on this point. :(


5) Integration of old friends on legacy networks

There is no consensus yet on this point. :(

Klaus: A migration strategy, which makes the transfer to socialnet_3.0 painless. This was the most difficult requirement to understand. But the solution is not complicated: Socialnet_3.0 will be a "social browser" that keeps my old contacts going in the world of faceboogle via plugins.

(which would compromise 1 and 2 for those, of course).

  • Option #1: keep bridges with legacy infrastructure
  • Option #2: abandon legacy infrastructure

In any case, a migration strategy is needed in the meantime.


6) High availability

Resolving this point requires more details. There is no consensus yet on this point. :(

You should be able to access your data when you want it.


7) Device portability

Resolving this point requires more details. There is no consensus yet on this point. :(

You should be able to access your data from multiple devices at the same time

This may conflict with self-determined data storage (ES#3): if I want to store data on my own device, it may not be accessible from elsewhere.


8) Client choice

Resolving this point requires more details. There is no consensus yet on this point. :(

You should be able to use a mobile, desktop, or html5 app client (once webcrypto is deployed in browsers).

You should have a choice of clients, but html5 is an implementation detail - we should agree on principles at this stage, not implementation details.


9) Multiple identity

Resolving this point requires more details. There is no consensus yet on this point. :(

You should be able to maintain multiple identities, and choose to link them or not.


10) Protocol agnostic

Resolving this point requires more details. There is no consensus yet on this point. :(

You should be able to cross-communicate with different protocols, be they XMPP, HTTP, or p2p based.

Again, this seems like an implementation detail. Interoperation between platforms or providers is presumably the goal here, not protocols for their own sake.


11) Secure groups

Resolving this point requires more details. There is no consensus yet on this point. :(

Groups with membership determined cryptographically. Groups function as a virtual user, with all users in the group able to receive and send as the group, because they share a private group-key.

Whether the group membership is determined cryptographically is an implementation detail. Perhaps it would be better to express this as "group identities", as the sibling of multiple identities (ES#9). One person should be able to speak/listen with many identities, and many people should be able to speak/listen with one identity.


lynX's Annotations (XA)

Derived from ES with the following annotations:


4) Scalability

Multicast strategies. Learn from Bittorrent. Try Gnunet Mesh.


5) Integration of old friends on legacy networks

Not important. Legacy networks aren't at the same level of privacy and security, so they may result in security leaks and downgrade attack scenarios. Facebook never needed to be compatible to anyone else to become the leader, so do we not. People will simply start using our tools and discover they no longer need the other ones.

This implies that I also regard 3) A migration strategy from KS' proposal as actually not important to fulfil our goals, although it is feasible anyway.


8) Client choice

With all the loopholes in HTTP combined with JS and HTML, web-based is always dangerous for privacy. Browsers are particularely unreliable for encryption jobs. Still, a localhost-based web interface or smartphone-like app is viable as an alternative to a native user interface. Of course the foundation the browser or app runs on must be secure: if your device isn't running a free operating system, you can't be sure of anything.

You may want to question the terms "client" and "server" since such architectures are frequently part of the problem. Our aim is for self-sufficient nodes and if you really really need a "server" it must be free from administration requirements and capable of running in your home. Servers must not serve large numbers of users of dumb client apps, but only as routers for fully operational mobile nodes.


10) Protocol agnostic

For the purpose of tunneling, yes. For the purpose of interaction and exchange, no. All other communication technologies can't offer the same degree of privacy and it would be intransparent having to explain to your grandmother that some chatrooms, forums, fan pages or individuals are "not safe" to interact with.