KtorSecureMessageTransport
SecureMessageTransport over the KSecureMessage HTTP API v1. client must have ContentNegotiation with JSON installed. Routes and bodies are described in docs/prekey-publication.md, authentication in docs/server-authentication.md.
Authenticated requests are built from their exact body bytes: the JSON is encoded here, signed together with the method and canonical path, and sent unchanged, so the server hashes what was signed. Each attempt is signed anew (fresh timestamp and nonce).
Constructors
Functions
The returned bundle's address is always address; the server's response carries none. The bundle is not trusted here: the protocol engine verifies it before X3DH.
POST /v1/messages, ServerAuth-signed as the envelope's sender, which the device header names (S1, docs/server-authentication.md).