Skip to content

Commit

Permalink
Merge pull request #5 from clokep/mx-diffs
Browse files Browse the repository at this point in the history
Encryption & notary differences from Matrix.
  • Loading branch information
turt2live authored Jul 11, 2023
2 parents c23cc54 + 67a4c60 commit 14967d8
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions mx-differences.md
Original file line number Diff line number Diff line change
Expand Up @@ -216,6 +216,26 @@ The only change is made to Step 1 of the content hashing algorithm. The full alg
3. Hash the resulting bytes with SHA-256.
4. Encode the hash using unpadded base64.

### Encryption

Encryption is enabled via an `encryption` property in the `m.room.create` event, not via a separate
`m.room.encryption` event:


```json
{
"encryption": {
"algorithm": "m.mls.v1.dhkemx25519-aes128gcm-sha256-ed25519"
}
}
```

Thus encryption must be enabled at room creation time.

`m.mls.commit` events can be viewed by any user in the room, regardless of
history visibility. The draft doesn't currently cover how exactly this works,
but should be treated as `shared` history for ease of use for now.

## Request Authentication

There are largely clarifications to how request authentication works. Namely:
Expand All @@ -230,6 +250,9 @@ There are largely clarifications to how request authentication works. Namely:
This is meant to be compatible with [MSC4029](https://github.com/matrix-org/matrix-spec-proposals/pull/4029), when
MSC4029 has real content in it.

Linearized Matrix requires attempting the server *first* before falling back to
a notary server.

## Linearization Algorithm

The specific mechanics of this algorithm are undefined. The rough idea is that when a DAG-capable server becomes
Expand Down

0 comments on commit 14967d8

Please sign in to comment.