System reference
System architecture
The components of Auris, the data they handle, and the boundaries between them.
The system map
Your deviceIdentity, ratchets, history keys
Auris serviceDirectory, ciphertext queues, call setup
Contact's deviceIdentity, ratchets, history keys
Apple: push delivery · TURN: relayed media · Optional front: transport forwarding
Components and responsibilities
| Component | Owns | Integration boundary |
|---|---|---|
| Swift client and Apple frameworks | Identity, protocol state, interface, capture and local storage | Device integrity, OS protection, cryptographic providers and application integration |
| WebRTC and Auris media extensions | Connectivity, real-time transport, audio/video adaptation and frame encryption | Native parsers, key/counter lifecycle and the cryptor attached to each media path |
| Node service | Public directory, undelivered ciphertext, routing and call admission | Availability, directory consistency before peer verification, and metadata handling |
| APNs / PushKit | Mobile notifications and call wake-up | Apple's delivery service, tokens, payload fields and event timing |
| TURN and optional fronts | Relayed media and alternative transport routes | Reachability and network metadata at the relay or forwarding service |
Where each state lives
- Identity and session state
- The client holds private identity and conversation keys. The directory distributes public material. Verification binds a contact to the intended identity keys.
- Undelivered messages
- The service queues ciphertext until acknowledgement or expiry. Receiving clients authenticate and commit accepted messages before acknowledging them.
- Call state
- Room signaling coordinates setup. Encrypted session controls authenticate peer transport details and distribute frame keys. Live control uses its own derived keys.
- Local history
- Operational state supports background receiving and ringing. A separate history key protects transcripts and attachment keys under the selected release policy.
The backend also has transport and storage keys of its own. These have a different role from endpoint conversation keys. Optional cloud captions create a separate, explicitly enabled audio-processing path to Apple.
Protocol entry points
Message cryptography
Initials, key evolution, authentication and wire fields.
Delivery and queues
Posting capabilities, draining and fallback routes.
Call protocol
Three control planes, admission gates and media.
Storage and key release
Operational keys, history protection and deletion.
For build trust, see dependencies. For the release baseline, see the version record.
Reviewed · Review scope and versions