Forum signature must cover the timestamp

akwizgran
2015-04-24 16:00:30 +00:00
parent d9c81ea531
commit 2cceeecd65

@@ -18,9 +18,11 @@ The client identifer is random:
**2: DEPARTURE** - The content is a BDF list with one element: `invitation_id` (raw), which is the identifier of an invitation created by either peer. **2: DEPARTURE** - The content is a BDF list with one element: `invitation_id` (raw), which is the identifier of an invitation created by either peer.
**3: POST** - The content is a BDF list with two elements: `author` (list, may be null) and `content` (list). If `author` is null, the post is anonymous. Otherwise `author` is a list with two elements: `identity` (list) and `signature` (raw). `identity` is a list with two elements: `name` (string) and `public_key` (raw). `signature` is calculated over `content`. **3: POST** - The content is a BDF list with three elements: `content` (list), `author` (list, may be null), and `signature` (raw, may be null). `content` is a list with three elements: `parent_id` (raw, may be null), `body` (string), and `attachments` (dictionary, may be null). If `parent_id` is not null, it is the identifier of a post to which this is a response. Each key in `attachments` is the name of an attachment, and the value is a list with two elements: `mime_type` (string) and `message_id` (raw).
`content` is a list with three elements: `parent_id` (raw, may be null), `body` (string), and `attachments` (dictionary, may be null). If `parent_id` is not null, it is the identifier of a post to which this is a response. Each key in `attachments` is the name of an attachment, and the value is a list with two elements: `mime_type` (string) and `message_id` (raw). If `author` is null, the post is anonymous and `signature` must also be null. Otherwise `author` is a list with two elements: `name` (string) and `public_key` (raw).
If `signature` is null, the post is anonymous and `author` must also be null. Otherwise `signature` is calculated over a list with four elements: `forum` (list), `author` (list), `timestamp` (int), and `content` (list). `forum`, `author` and `content` are described above. `timestamp` is the timestamp from the [message header](BSP#message-format).
**4: ATTACHMENT** - The content is raw data. **4: ATTACHMENT** - The content is raw data.