--- allOf: - $ref: core-event-schema/event.yaml description: |- Begins a SAS key verification process using the `m.sas.v1` method. Typically sent as a [to-device](/client-server-api/#send-to-device-messaging) event. properties: content: properties: from_device: type: string description: |- The device ID which is initiating the process. transaction_id: type: string description: |- An opaque identifier for the verification process. Must be unique with respect to the devices involved. Must be the same as the `transaction_id` given in the `m.key.verification.request` if this process is originating from a request. method: type: string enum: ["m.sas.v1"] description: |- The verification method to use. key_agreement_protocols: type: array description: |- The key agreement protocols the sending device understands. Should include at least `curve25519-hkdf-sha256`. items: type: string hashes: type: array description: |- The hash methods the sending device understands. Must include at least `sha256`. items: type: string message_authentication_codes: type: array description: |- The message authentication codes that the sending device understands. Must include at least `hkdf-hmac-sha256`. items: type: string short_authentication_string: type: array description: |- The SAS methods the sending device (and the sending device's user) understands. Must include at least `decimal`. Optionally can include `emoji`. items: type: string enum: ["decimal", "emoji"] required: - from_device - transaction_id - method - key_agreement_protocols - hashes - message_authentication_codes - short_authentication_string type: object type: enum: - m.key.verification.start type: string type: object