mirror of https://github.com/status-im/specs.git
Update x8.md
This commit is contained in:
parent
cfa3212a96
commit
f77dd07d22
16
x8.md
16
x8.md
|
@ -12,23 +12,21 @@ updated:
|
|||
- [Encoding](#Encoding)
|
||||
- [Upgradability](#Upgradability)
|
||||
|
||||
This specification describes how the payload of each message in the Status Protocol looks like. It does not care how the payload is encrypted or exchanged later.
|
||||
|
||||
The payload must be flexible enough to support messaging but also cases described in [Status Whitepaper](https://status.im/whitepaper.pdf) as well as various clients created using vastly different technologies.
|
||||
This specification describes how the payload of each message in the Status Protocol looks.
|
||||
|
||||
# Wrapper
|
||||
|
||||
Payloads are wrapped in a [protobuf record](https://developers.google.com/protocol-buffers/)
|
||||
record:
|
||||
|
||||
```
|
||||
message StatusProtocolMessage {
|
||||
bytes signature = 1;
|
||||
bytes payload = 2;
|
||||
}
|
||||
```protobuf
|
||||
message StatusProtocolMessage {
|
||||
bytes signature = 1;
|
||||
bytes payload = 2;
|
||||
}
|
||||
```
|
||||
|
||||
Where `signature` is the bytes of the signed `SHA3-256` of the payload, signed with
|
||||
`signature` is the bytes of the signed `SHA3-256` of the payload, signed with
|
||||
the key of the author of the message.
|
||||
The signature is needed to validate authorship of the message, so that the message can be relayed to third parties.
|
||||
If a signature is not present but an author is provided by a layer below, the message is to be relayed to third parties and its considered plausibly deniable.
|
||||
|
|
Loading…
Reference in New Issue