Distributed social network protocols: Difference between revisions
m ({{Note}}) |
|||
(14 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
''Help this article by summarizing the pages behind the links on this page!'' | {{Note|''Help this article by summarizing the pages behind the links on this page!''}} | ||
== General Resources == | == General Resources == | ||
Line 9: | Line 8: | ||
http://www.w3.org/DesignIssues/CloudStorage.html | http://www.w3.org/DesignIssues/CloudStorage.html | ||
== | == Basics == | ||
=== RDF-Schema === | |||
RDF stands for resource description framework. A schema provides a vocabulary, to classify xml-data. With this classification the data becomes machine-readable, so programms can handle the data dependent on the context. You can for example tag certain links on you homepage as links to the homepages of friends (using a appropriate schema). By crawling this information bots can then build up a network of befriended personal websites, which might then help you discover new sites that are of value for you. | |||
http://en.wikipedia.org/wiki/RDF_Schema | |||
== Protocols/Schemas/Projects == | |||
=== Webfinger === | === Webfinger === | ||
The webfinger project wants to consolidate the idea of an email adress like identifier for a person. A lot of todays webapplications use your email adress as account identifier. Webfinger goes beyond that, by connecting a set of public data to such an identifier. The specification describes how you can resolve a email like adress into this set of information, which contains for example your full name, a short bio or a cryptographic public key. | |||
http://code.google.com/p/webfinger/ | http://code.google.com/p/webfinger/ | ||
=== Salmon === | |||
Salmon is an http messaging protocol. It builds on top of webfinger, which is used for publishing a public key of a public/private key pair. The message is signed with the private key, base64 encoded and sent as a http-POST message to the salmon endpoint of the recipient. | |||
http://www.salmon-protocol.org/ | |||
=== Activity Stream === | === Activity Stream === | ||
Describes the content produced by one or multiple users as a flow of activity objects. The complete data set of the social net is described as one stream like: “Alice posted lalala, Bob liked Alices post, …” The language covers a wide variety of things that can happen on social networks, like comments, events, locations, ratings, mood, … | |||
The schema clarifies how, activity stream object should be structured when rendered as xml or json. As a describtive language for social network content the specification is well suited. When collecting multiple source of content into a single view, duplicate entries can easily be detected and displayed accordingly. | |||
http://activitystrea.ms/ | |||
=== Pubsubhubbub === | === Pubsubhubbub === | ||
Line 46: | Line 57: | ||
http://tent.io/blog/tent-basics | http://tent.io/blog/tent-basics | ||
=== Zot/Zot2 === | |||
The Zot protocol is used by the [http://friendica.com Friendica] project, with Zot2 being their improved implementation for Friendica RED. | |||
RED: https://macgirvin.com/display/mike/222853 | |||
=== Libertree === | |||
A json-featured federation-protocol based on postings, comments and likes with small user-profiles. | |||
https://github.com/Libertree/libertree/blob/master/specification.md | |||
=== DSNP: Distributed Social Networking Protocol === | |||
''(private, decentralized, scalable)'' | |||
[http://www.complang.org/dsnp/dsnp-overview.pdf DSNP: A Protocol for Personal Identity and Communication on the Web] : This short paper (5 pages) provides a quick overview of DSNP. | |||
This protocom allows everyone to collaborate to create one social network that is decentralized, like email. It is an open technology that supports private communications, in a manner that users of modern social networks have come to expect. The current version of the protocol is 0.6. The leading author is [http://www.complang.org/thurston/ Adrian Thurston]. | |||
* [http://www.complang.org/dsnp/ DSNP: Distributed Social Networking Protocol] | |||
* [http://www.complang.org/pipermail/dsnp-interest/ mailing list archive] | |||
* [https://github.com/ilhanyumer/DSNP GitHub repository] | |||
=== OpenBook === | |||
* [https://projectopencontent.org/OpenBook.html OpenBook is a flexible and minimal distributed social protocol ] | |||
* [https://github.com/ericvicenti/OpenBook GitHub repository] | |||
* [https://projectopencontent.org/ Blog] | |||
: - [https://projectopencontent.org/Why-the-Social-Networking-Oligopoly-Needs-to-be-Broken-Open Why the Social Networking Oligopoly Needs to be Broken Open] | |||
: - [https://projectopencontent.org/Existing-Open-Social-Movements Existing Open Social Movements] | |||
: - [https://projectopencontent.org/Core-Needs-of-an-Open-Social-Protocol Core Needs of an Open Social Protocol] | |||
: - [https://projectopencontent.org/Introducing-OpenBook,-a-simple-and-flexible-distributed-social-protocol Introducing OpenBook, a simple and flexible distributed social protocol] | |||
: - [https://projectopencontent.org/Features-OpenBook-intentionally-lacks Features OpenBook intentionally lacks] | |||
* [http://www.reddit.com/r/programming/comments/13bfbf/introducing_openbook_a_simple_and_flexible/ discussion about OpenBook project] | |||
[[Category:Developers]] | |||
[[Category:Federation]] |
Latest revision as of 17:22, 18 June 2016
General Resources
http://en.wikipedia.org/wiki/Distributed_social_network
http://www.w3.org/DesignIssues/CloudStorage.html
Basics
RDF-Schema
RDF stands for resource description framework. A schema provides a vocabulary, to classify xml-data. With this classification the data becomes machine-readable, so programms can handle the data dependent on the context. You can for example tag certain links on you homepage as links to the homepages of friends (using a appropriate schema). By crawling this information bots can then build up a network of befriended personal websites, which might then help you discover new sites that are of value for you.
http://en.wikipedia.org/wiki/RDF_Schema
Protocols/Schemas/Projects
Webfinger
The webfinger project wants to consolidate the idea of an email adress like identifier for a person. A lot of todays webapplications use your email adress as account identifier. Webfinger goes beyond that, by connecting a set of public data to such an identifier. The specification describes how you can resolve a email like adress into this set of information, which contains for example your full name, a short bio or a cryptographic public key.
http://code.google.com/p/webfinger/
Salmon
Salmon is an http messaging protocol. It builds on top of webfinger, which is used for publishing a public key of a public/private key pair. The message is signed with the private key, base64 encoded and sent as a http-POST message to the salmon endpoint of the recipient.
http://www.salmon-protocol.org/
Activity Stream
Describes the content produced by one or multiple users as a flow of activity objects. The complete data set of the social net is described as one stream like: “Alice posted lalala, Bob liked Alices post, …” The language covers a wide variety of things that can happen on social networks, like comments, events, locations, ratings, mood, …
The schema clarifies how, activity stream object should be structured when rendered as xml or json. As a describtive language for social network content the specification is well suited. When collecting multiple source of content into a single view, duplicate entries can easily be detected and displayed accordingly.
Pubsubhubbub
https://code.google.com/p/pubsubhubbub/
OAuth
FOAF
Open Graph
Tent.io
http://tent.io/blog/tent-basics
Zot/Zot2
The Zot protocol is used by the Friendica project, with Zot2 being their improved implementation for Friendica RED.
RED: https://macgirvin.com/display/mike/222853
Libertree
A json-featured federation-protocol based on postings, comments and likes with small user-profiles.
https://github.com/Libertree/libertree/blob/master/specification.md
DSNP: Distributed Social Networking Protocol
(private, decentralized, scalable)
DSNP: A Protocol for Personal Identity and Communication on the Web : This short paper (5 pages) provides a quick overview of DSNP.
This protocom allows everyone to collaborate to create one social network that is decentralized, like email. It is an open technology that supports private communications, in a manner that users of modern social networks have come to expect. The current version of the protocol is 0.6. The leading author is Adrian Thurston.