Salmon Protocol - OpenWebTO

1,821 views

Published on

Presentation on the salmon protocol, given 2010-09-20 for the OpenWebTO group.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,821
On SlideShare
0
From Embeds
0
Number of Embeds
19
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Salmon Protocol - OpenWebTO

  1. 1. Salmon Protocol #OpenWebTO : September 20, 2010
  2. 2. what is it?
  3. 3. Salmon aims to define a standard protocol forcomments and annotations to swim upstream to original update sources -- and spawn more commentary in a virtuous cycle.
  4. 4. trackback 2.0
  5. 5. how does it work?
  6. 6. salmon flowcontent1 is submitteddiscovery performed to get thetargets salmon endpoint 2content is signed3 and postedsignature verified4 and contenthandled5
  7. 7. content 1Currently implementations in AtomSpecs also list JSONWhere or how the content isgenerated is (wisely) unspecified.
  8. 8. discovery 2Using LRDD / Host-meta (akawebfinger)Determine rel="salmon" endpoint(no centralized registry!)
  9. 9. signed3we dont want posts from anywhere(i.e. trackback)uses magic signatures*thats right, magic.
  10. 10. verified4signed data is unfoldedauthor determined - discoveryperformed for the author public keyRSA signature verificationperformed
  11. 11. handled5what the receiver does with thecontent is (wisely) out of scopesuggestions for two patterns: reply: specify atom thr:in-reply- to mention: include rel="mentioned"
  12. 12. magic signatures A lightweight, robust mechanism for digitallysigning nearly arbitrary messages, along with a simple public key infrastructure.
  13. 13. <?xml version=1.0 encoding=UTF-8?><entry xmlns=http://www.w3.org/2005/Atom> <id>tag:example.com,2009:cmt-0.44775718</id> <author><name>test@example.com</name><uri>bob@example.com</uri></author> <thr:in-reply-to xmlns:thr=http://purl.org/syndication/thread/1.0 ref=tag:blogger.com,1999:blog-893591374313312737.post-3861663258538857954> tag:blogger.com,1999:blog-893591374313312737.post-3861663258538857954 </thr:in-reply-to> <content>Salmon swim upstream!</content> <title>Salmon swim upstream!</title> <updated>2009-12-18T20:04:03Z</updated></entry>
  14. 14. POST /all-replies-endpoint HTTP/1.1Host: example.orgContent-Type: application/magic-envelope+xml<?xml version=1.0 encoding=UTF-8?><me:env xmlns:me=http://salmon-protocol.org/ns/magic-env> <me:data type=application/atom+xml> PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4KPGVudHJ5IHhtbG5zPSdod HRwOi8vd3d3LnczLm9yZy8yMDA1L0F0b20nPgogIDxpZD50YWc6ZXhhbXBsZS5jb20sMjAwOT pjbXQtMC40NDc3NTcxODwvaWQ-ICAKICA8YXV0aG9yPjxuYW1lPnRlc3RAZXhhbXBsZS5jb20 8L25hbWU-PHVyaT5ib2JAZXhhbXBsZS5jb208L3VyaT48L2F1dGhvcj4KICA8dGhyOmluLXJl cGx5LXRvIHhtbG5zOnRocj0naHR0cDovL3B1cmwub3JnL3N5bmRpY2F0aW9uL3RocmVhZC8xL jAnCiAgICAgIHJlZj0ndGFnOmJsb2dnZXIuY29tLDE5OTk6YmxvZy04OTM1OTEzNzQzMTMzMT I3MzcucG9zdC0zODYxNjYzMjU4NTM4ODU3OTU0Jz50YWc6YmxvZ2dlci5jb20sMTk5OTpibG9 nLTg5MzU5MTM3NDMxMzMxMjczNy5wb3N0LTM4NjE2NjMyNTg1Mzg4NTc5NTQKICA8L3Rocjpp bi1yZXBseS10bz4KICA8Y29udGVudD5TYWxtb24gc3dpbSB1cHN0cmVhbSE8L2NvbnRlbnQ-C iAgPHRpdGxlPlNhbG1vbiBzd2ltIHVwc3RyZWFtITwvdGl0bGU-CiAgPHVwZGF0ZWQ-MjAwOS 0xMi0xOFQyMDowNDowM1o8L3VwZGF0ZWQ-CjwvZW50cnk-CiAgICA= </me:data> <me:encoding>base64url</me:encoding> <me:alg>RSA-SHA256</me:alg> <me:sig> cAIu8VKIhs3WedN91L3ynLT3GbZFhbVidDn-skGetENVH-3EguaYIjlPTq7Ieraq4SD BknM9STM9DR90kveUrw== </me:sig></me:env>
  15. 15. what is it good for?
  16. 16. a little demo...
  17. 17. more infohttp://salmon-protocol.org/

×