Protocol

ACIDs, packets, and encrypted transport.

Auranet messages are structured envelopes with explicit headers, payloads, timestamps, and session identifiers. The protocol is designed to keep identity stable while allowing peers to communicate directly or through relays.

Identity model

Permanent and temporary ACIDs have different jobs.

Type Format Use
Permanent ACID auranet-p-... Long-lived identity for users, services, relays, and nodes.
Temporary ACID auranet-t-... Ephemeral session handle that scopes a live exchange.

Encryption

Two modes, one consistent envelope.

Shared network key

Use the shared-key mode when both peers operate inside a trusted boundary and need lower handshake overhead.

Private key exchange

Use the private mode when peers need point-to-point secrecy through X25519 and a derived symmetric transport key.

Authenticated payloads

ChaCha20-Poly1305 protects the message body and guards against tampering in both modes.

Transport

UDP first, stream wrappers when a session needs them.

UDP transport
  one packet -> one Auranet message
  best for real-time and relay-aware exchange

Stream transport
  4-byte length prefix -> encrypted payload frame
  best for socket-backed control channels and transfers