2018-07-17 20:58:18 +02:00
|
|
|
---
|
|
|
|
|
allOf:
|
|
|
|
|
- $ref: core-event-schema/event.yaml
|
|
|
|
|
|
|
|
|
|
description: |-
|
2022-10-19 00:02:27 +02:00
|
|
|
This event type is used to exchange keys for end-to-end encryption.
|
|
|
|
|
It is encrypted as an `m.room.encrypted` event using [Olm](#molmv1curve25519-aes-sha2),
|
|
|
|
|
then sent as a [to-device](/client-server-api/#send-to-device-messaging) event.
|
2018-07-17 20:58:18 +02:00
|
|
|
properties:
|
|
|
|
|
content:
|
|
|
|
|
properties:
|
|
|
|
|
algorithm:
|
|
|
|
|
type: string
|
2018-07-31 18:59:09 +02:00
|
|
|
enum: ["m.megolm.v1.aes-sha2"]
|
2018-07-17 20:58:18 +02:00
|
|
|
description: |-
|
2018-07-31 18:59:09 +02:00
|
|
|
The encryption algorithm the key in this event is to be used with.
|
|
|
|
|
room_id:
|
|
|
|
|
type: string
|
|
|
|
|
description: The room where the key is used.
|
|
|
|
|
session_id:
|
|
|
|
|
type: string
|
|
|
|
|
description: The ID of the session that the key is for.
|
|
|
|
|
session_key:
|
|
|
|
|
type: string
|
|
|
|
|
description: The key to be exchanged.
|
2023-09-26 22:30:04 +02:00
|
|
|
shared_history:
|
|
|
|
|
type: boolean
|
|
|
|
|
description: |-
|
|
|
|
|
Whether the key may be forwarded to users who join the room after the
|
|
|
|
|
messages encrypted with this key have been sent. Defaults to
|
|
|
|
|
`false`.
|
|
|
|
|
|
|
|
|
|
This can be set to `true` if the history visibility settings of the
|
|
|
|
|
room allow users to read events in the room from before they have
|
|
|
|
|
joined, that is, if the `m.room.history_visibility` state event is
|
|
|
|
|
`"world_readable"` or `"shared"`. For more information, see [Key
|
|
|
|
|
requests and forwarding](#key-requests-and-forwarding).
|
2018-07-17 20:58:18 +02:00
|
|
|
required:
|
|
|
|
|
- algorithm
|
2018-07-31 18:59:09 +02:00
|
|
|
- room_id
|
|
|
|
|
- session_id
|
|
|
|
|
- session_key
|
2018-07-17 20:58:18 +02:00
|
|
|
type: object
|
|
|
|
|
type:
|
|
|
|
|
enum:
|
|
|
|
|
- m.room_key
|
|
|
|
|
type: string
|
|
|
|
|
type: object
|