encrypted

Security

Encryption Status

The Rust server exposes identity and room-key envelope routes, but the 2.0.0 SDK does not yet provide a complete high-level E2EE workflow.

Available Rust routes

text
POST /crypto/identity
GET  /crypto/identity/:user_id
GET  /rooms/:room_id/crypto/members
POST /rooms/:room_id/crypto/rotate
POST /rooms/:room_id/crypto/envelope
GET  /rooms/:room_id/crypto/envelope
POST /rooms/:room_id/crypto/envelopes
POST /rooms/:room_id/crypto/ack

Recommended trust model

  • Generate identity keys on the client.
  • Store private keys with platform secure storage.
  • Publish only public identity material.
  • Encrypt room keys independently for each authorized member.
  • Rotate keys when membership changes.

Do not expose secrets

Never put server JWT secrets, Redis credentials, database credentials, or LiveKit API secrets in the Flutter package.

Treat E2EE as experimental until the SDK includes audited key generation, verification, envelope handling, rotation, and encrypted payload APIs.