Welcome to the Arxcode documentation — built content-first with MDX.
Arxcode
ARXCODE

Client-side encryption

How build inputs are sealed to your wallet key before they ever reach the network.

Confidentiality begins on your machine. Before any input is submitted, it is encrypted client-side under a key bound to your wallet — so the network, the API, and the operator only ever handle ciphertext.

The flow

  1. Derive a key. A build key is derived from your wallet, scoped to this build.
  2. Encrypt the input. The payload (code, prompt, schema) is encrypted locally. Plaintext never leaves your device.
  3. Submit ciphertext. Only the ciphertext is routed to a sealed, attested node.
  4. Decrypt inside the seal. The environment decrypts the input internally, runs the build, and re-encrypts the output to your wallet key.
  5. Decrypt the result. Only your wallet can decrypt the returned output.
Why attestation comes first

The client checks a node's attestation before routing ciphertext to it. An environment that can't prove it's sealed never receives your build.

What the operator sees

StageVisible to operator
In transitCiphertext + timing
Inside the sealNothing — the boundary is opaque to the host
After the buildNothing — all state is destroyed

Next