... | ... | @@ -4,13 +4,15 @@ The forum client is a [BSP client](BSP) that synchronises forum posts among grou |
|
|
|
|
|
The forum client's identifier is `org.briarproject.briar.forum`.
|
|
|
|
|
|
Each forum has its own group. The [group descriptor](BSP#group-identifiers) is a [BDF list](BDF) with two elements: `name` (string) and `salt` (raw). The salt is 32 random bytes, to prevent collisions between forums with the same name.
|
|
|
Each forum has its own BSP group. The [group descriptor](BSP#group-identifiers) is a [BDF list](BDF) with two elements: `name` (string) and `salt` (raw). The salt is 32 random bytes, to prevent collisions between forums with the same name.
|
|
|
|
|
|
### Message types
|
|
|
|
|
|
**POST** - The message body is a BDF list with four elements: `parentId` (unique ID or null), `author` (list), `content` (string), and `signature` (raw).
|
|
|
|
|
|
`parentId` is the optional ID of a post in the same group to which this post replies. `author` is a list with three elements: `formatVersion` (int), `nickname` (string), and `publicKey` (raw). The signature covers a BDF list with five elements: `groupId` (unique ID), `timestamp` (int), `parentId` (unique ID or null), `author` (list), and `content` (string). The group ID and timestamp are taken from the message header.
|
|
|
`parentId` is the optional ID of a post in the same forum to which this post replies. `author` is a list with three elements: `formatVersion` (int), `nickname` (string), and `publicKey` (raw). This identifies the author of the post.
|
|
|
|
|
|
The signature covers a BDF list with five elements: `groupId` (unique ID), `timestamp` (int), `parentId` (unique ID or null), `author` (list), and `content` (string). The group ID and timestamp are taken from the message header.
|
|
|
|
|
|
### Validity policy
|
|
|
|
... | ... | |