Distributed Social Networking

From Adam Colton
Revision as of 00:07, 18 March 2013 by Adamcolton (talk | contribs)
Jump to navigation Jump to search

A protocol for social networking so that data can be decentralized.

Social media is moving into the commodity range. It would be nice to have a standard protocol so that the value of network could be leveraged while each node in the network specialized in a specific niche.

Core Components

  • Servers: Represented by a URL, data lives here
  • Users: This is the core representation of a user. A public/private key
  • User-Data: Data owned by the users. SERVERS DO NOT OWN DATA, they hold it
  • Permissions: Who has access to what data
  • Trust: How much trust a server has earned from the network
  • Escrow: Trusted servers that hold funds until contracts are met.

Contracts

There are specific types of contracts that servers and users can enter into. Broadly speaking, they are divided into content-delivery and processing.

BitCoin

BitCoin lends itself to this because it provides payment for micro transactions.

Security

Gives me a headache just thinking about this. A user has a private key that is either never shared or entrusted to server. If it is entrusted to a server, the user needs to have absolute confidence in that server. Other servers can get an executor-key (with specific permissions) which allow them to act on your behalf.

I think I'll go with the secure one-time pad model; a secure line of communication is established with the public key and only used to exchange one-time keys. This can even be done at the JavaScript level so that the public key is never transmitted.