Skip to content
This repository was archived by the owner on Mar 7, 2023. It is now read-only.

Commit a27f93c

Browse files
committed
meta changes
1 parent 8bbd250 commit a27f93c

File tree

4 files changed

+94
-12
lines changed

4 files changed

+94
-12
lines changed

README.md

Lines changed: 45 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,30 +5,40 @@
55
**Requires at least:** 3.0
66
**Tested up to:** 4.9.3
77
**Stable tag:** 0.9.0
8+
**License:** MIT
9+
**License URI:** http://opensource.org/licenses/MIT
810

911
Salmon for WordPress
1012

1113
## Description ##
1214

13-
This is a very early state of a salmon-plugin for WordPress. There are still some bugs and problems... Please
14-
let me know if you found some.
15+
*This is a very early state of a salmon-plugin for WordPress. There are still some bugs and problems... Please
16+
let me know if you found some.*
17+
18+
> As updates and content flow in real time around the Web, conversations around the content are becoming increasingly fragmented into individual silos. Salmon aims to define a standard protocol for comments and annotations to swim upstream to original update sources -- and spawn more commentary in a virtuous cycle. It's open, decentralized, abuse resistant, and user centric.
1519
1620
You can find more informations about Salmon here: http://www.salmon-protocol.org/
1721

18-
This plugin requires:
22+
The plugin currently only supports receiving Salmons, but I am working on a bidirectional version.
23+
24+
This plugin requires the following plugins:
1925

2026
* the `host-meta`-plugin: <https://wordpress.org/plugins/host-meta/>
2127
* the `webfinger`-plugin: <https://wordpress.org/plugins/webfinger/>
2228

23-
more doku soon!
29+
and I recommend to use it in combination with OStatus: <https://wordpress.org/plugins/ostatus-for-wordpress/>
30+
2431

2532
## Changelog ##
2633

34+
Project and support maintained on github at [pfefferle/wordpress-salmon](https://github.com/pfefferle/wordpress-salmon).
35+
2736
### 0.9.0 ###
2837

2938
* general refactoring
3039
* refactored the code to use openssl instead of custom PHP code
3140
* simpler avatar code
41+
* fixed admin pages
3242

3343
### 0.5 ###
3444

@@ -63,4 +73,34 @@ more doku soon!
6373

6474
## Frequently Asked Questions ##
6575

66-
soon...
76+
The FAQ is taken from the Salom Protocol homepage: <http://www.salmon-protocol.org/faq>
77+
78+
### How does Salmon deal with abuse and spam? ###
79+
80+
Early Internet protocols and systems were vulnerable to trivial forgery, and fixing this after the protocols were widely deployed is painful, partial, and slow. On the other hand, it's also possible to add too much security and make a protocol too restrictive or too complex for large-scale adoption.
81+
82+
Salmon tries to find a good balance. Salmon adopts a defense-in-depth strategy, assumes that there will be abuse and spammers, but builds in protocol hooks to make an active in-depth defense both cheap and effective with few false positives.
83+
84+
Specifically, spammers can not forge signatures from legitimate users, and it is very hard for them to mint massive numbers of fake identities without detection. So as a first line of defense, anything whose authorship check fails, is simply dropped. We're building this in from the start so that we'll never have an installed base of clients doing things insecurely.
85+
86+
Salmon disallows completely anonymous and untraceable messages. It requires pseudonyms from verifiable identity providers. This feature allows receivers to rate limit the messages per hour per pseudonym and per identity provider. (Identity providers themselves have verifiable identities and can gain or lose reputation based on what their users do; every identity provider has to at least have a domain name, raising the bar for spammers significantly, and meaning that simple rate limiting can force the spammers to acquire and "burn" many domain names.)
87+
88+
Assuming wide deployment, we expect that spammers will attack Salmon with the same vigor they throw at email. However, Salmon implementors can cheaply and easily deal with the simpler techniques the spammers currently use to inject email. They will also mount active defenses based both on the years of experience in spam-blocking email and the new tools (guaranteed identity, identity providers, distributed reputation) that Salmon enables.
89+
90+
All of this is possible to do, and has been done, with closed systems. Salmon provides a way to do this with an open protocol that anyone can implement and anyone can interoperate with.
91+
92+
### Does Salmon support threading? ###
93+
94+
Yes, the thr:in-reply-to ID can be the ID of a comment (which can itself be a Salmon with a xpost:source element that points at the ultimate source). While the protocol supports threading, recipients can of course flatten salmon in the feeds that they re-publish -- though the thr:in-reply-to element can be used to reconstitute threads as needed.
95+
96+
### How is Salmon different from using AtomPub to post to a comment feed? ###
97+
98+
Salmon is in fact based on and compatible with AtomPub. Salmon greatly enhances interoperability and usability by specifying a distributed identity mechanism for identifying the author and intermediary involved, provides a discovery mechanism, and specifies how things should be linked together. By not requiring pre-registration or federation but still allowing for verifiable identification, it provides a usable, level playing field for all parties involved.
99+
100+
### Why are you using this new crosspost extension instead of just using, and retaining, atom:id? ###
101+
102+
See <http://wiki.activitystrea.ms/Cross-Posting>.
103+
104+
### What else is Salmon useful for? ###
105+
106+
The payload can define any kind of message, so Salmon can be extended in arbitrary ways. It is already being used to communicate mentions to mentionees. It has also been used to signal cross-site following (by sending a follow message) or to send requests (by sending requests rather than notifications, e.g., a friend request). It is best used when there is not necessarily predefined relationship or subscription between the source and destination; if there is, PubSubHubbub may be a better choice.

languages/salmon.pot

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# Copyright (C) 2018 Matthias Pfefferle
2-
# This file is distributed under the same license as the Salmon package.
2+
# This file is distributed under the MIT.
33
msgid ""
44
msgstr ""
55
"Project-Id-Version: Salmon 0.9.0\n"
66
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/salmon\n"
7-
"POT-Creation-Date: 2018-02-01 22:26:09+00:00\n"
7+
"POT-Creation-Date: 2018-02-02 12:03:43+00:00\n"
88
"MIME-Version: 1.0\n"
99
"Content-Type: text/plain; charset=utf-8\n"
1010
"Content-Transfer-Encoding: 8bit\n"

readme.txt

Lines changed: 45 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,30 +5,40 @@ Tags: diso, OStatus, Mastodon, Diaspora, federated, StatusNET, Gnu.Social, Salmo
55
Requires at least: 3.0
66
Tested up to: 4.9.3
77
Stable tag: 0.9.0
8+
License: MIT
9+
License URI: http://opensource.org/licenses/MIT
810

911
Salmon for WordPress
1012

1113
== Description ==
1214

13-
This is a very early state of a salmon-plugin for WordPress. There are still some bugs and problems... Please
14-
let me know if you found some.
15+
*This is a very early state of a salmon-plugin for WordPress. There are still some bugs and problems... Please
16+
let me know if you found some.*
17+
18+
> As updates and content flow in real time around the Web, conversations around the content are becoming increasingly fragmented into individual silos. Salmon aims to define a standard protocol for comments and annotations to swim upstream to original update sources -- and spawn more commentary in a virtuous cycle. It's open, decentralized, abuse resistant, and user centric.
1519

1620
You can find more informations about Salmon here: http://www.salmon-protocol.org/
1721

18-
This plugin requires:
22+
The plugin currently only supports receiving Salmons, but I am working on a bidirectional version.
23+
24+
This plugin requires the following plugins:
1925

2026
* the `host-meta`-plugin: <https://wordpress.org/plugins/host-meta/>
2127
* the `webfinger`-plugin: <https://wordpress.org/plugins/webfinger/>
2228

23-
more doku soon!
29+
and I recommend to use it in combination with OStatus: <https://wordpress.org/plugins/ostatus-for-wordpress/>
30+
2431

2532
== Changelog ==
2633

34+
Project and support maintained on github at [pfefferle/wordpress-salmon](https://github.com/pfefferle/wordpress-salmon).
35+
2736
= 0.9.0 =
2837

2938
* general refactoring
3039
* refactored the code to use openssl instead of custom PHP code
3140
* simpler avatar code
41+
* fixed admin pages
3242

3343
= 0.5 =
3444

@@ -63,4 +73,34 @@ more doku soon!
6373

6474
== Frequently Asked Questions ==
6575

66-
soon...
76+
The FAQ is taken from the Salom Protocol homepage: <http://www.salmon-protocol.org/faq>
77+
78+
= How does Salmon deal with abuse and spam? =
79+
80+
Early Internet protocols and systems were vulnerable to trivial forgery, and fixing this after the protocols were widely deployed is painful, partial, and slow. On the other hand, it's also possible to add too much security and make a protocol too restrictive or too complex for large-scale adoption.
81+
82+
Salmon tries to find a good balance. Salmon adopts a defense-in-depth strategy, assumes that there will be abuse and spammers, but builds in protocol hooks to make an active in-depth defense both cheap and effective with few false positives.
83+
84+
Specifically, spammers can not forge signatures from legitimate users, and it is very hard for them to mint massive numbers of fake identities without detection. So as a first line of defense, anything whose authorship check fails, is simply dropped. We're building this in from the start so that we'll never have an installed base of clients doing things insecurely.
85+
86+
Salmon disallows completely anonymous and untraceable messages. It requires pseudonyms from verifiable identity providers. This feature allows receivers to rate limit the messages per hour per pseudonym and per identity provider. (Identity providers themselves have verifiable identities and can gain or lose reputation based on what their users do; every identity provider has to at least have a domain name, raising the bar for spammers significantly, and meaning that simple rate limiting can force the spammers to acquire and "burn" many domain names.)
87+
88+
Assuming wide deployment, we expect that spammers will attack Salmon with the same vigor they throw at email. However, Salmon implementors can cheaply and easily deal with the simpler techniques the spammers currently use to inject email. They will also mount active defenses based both on the years of experience in spam-blocking email and the new tools (guaranteed identity, identity providers, distributed reputation) that Salmon enables.
89+
90+
All of this is possible to do, and has been done, with closed systems. Salmon provides a way to do this with an open protocol that anyone can implement and anyone can interoperate with.
91+
92+
= Does Salmon support threading? =
93+
94+
Yes, the thr:in-reply-to ID can be the ID of a comment (which can itself be a Salmon with a xpost:source element that points at the ultimate source). While the protocol supports threading, recipients can of course flatten salmon in the feeds that they re-publish -- though the thr:in-reply-to element can be used to reconstitute threads as needed.
95+
96+
= How is Salmon different from using AtomPub to post to a comment feed? =
97+
98+
Salmon is in fact based on and compatible with AtomPub. Salmon greatly enhances interoperability and usability by specifying a distributed identity mechanism for identifying the author and intermediary involved, provides a discovery mechanism, and specifies how things should be linked together. By not requiring pre-registration or federation but still allowing for verifiable identification, it provides a usable, level playing field for all parties involved.
99+
100+
= Why are you using this new crosspost extension instead of just using, and retaining, atom:id? =
101+
102+
See <http://wiki.activitystrea.ms/Cross-Posting>.
103+
104+
= What else is Salmon useful for? =
105+
106+
The payload can define any kind of message, so Salmon can be extended in arbitrary ways. It is already being used to communicate mentions to mentionees. It has also been used to signal cross-site following (by sending a follow message) or to send requests (by sending requests rather than notifications, e.g., a friend request). It is best used when there is not necessarily predefined relationship or subscription between the source and destination; if there is, PubSubHubbub may be a better choice.

salmon.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
* Version: 0.9.0
77
* Author: Matthias Pfefferle
88
* Author URI: https://notiz.blog/
9+
* License: MIT
10+
* License URI: http://opensource.org/licenses/MIT
911
* Text Domain: salmon
1012
* Domain Path: /languages
1113
*/

0 commit comments

Comments
 (0)