Expand description

Module containing customized types modeling Matrix keys and events.

These types were mostly taken from the Ruma project. The types differ in two important ways to the Ruma types of the same name:

  1. They are using vodozemac types so we directly deserialize into a vodozemac Curve25519 or Ed25519 key.
  2. They support lossless serialization cycles in a canonical JSON supported way, meaning the white-space and field order won’t be preserved but the data will.

Modules

Types modeling end-to-end encryption related Matrix events

Structs

A cross signing key.
Identity keys for a device.
Represents a signature that could not be decoded.
Auth data for the m.megolm_backup.v1.curve25519-aes-sha2 backup algorithm as defined in the spec.
Signatures for a signed object.
A key for the SignedCurve25519 algorithm
A collection of signing keys, a map from the key id to the signing key.
Additional data added to device key information by intermediate servers.

Enums

An enum over the different key types a device can have.
An encryption algorithm to be used to encrypt messages sent to a room.
A one-time public key for “pre-key” messages.
Information pertaining to a room key backup. Can be used to upload a new backup version as defined in the spec.
Represents a potentially decoded signature (but not a validated one).
An enum over the different key types a cross-signing key can have.