Public identity and key pinning
The CLI generates identity locally and exposes public identity details. Compare fingerprints out of band and pin the peer’s public key. Private keys and seeds must remain under the operator’s control.
man/security
Identity, authentication, encryption, routing, and relay security are specified independently of the carrier between hosts. Actual protection depends on the implemented security profile and supported transport.
terminal/security
A node’s cryptographic identity belongs to its host. Verify the peer you intend to reach before treating a name or network address as trusted.
The CLI generates identity locally and exposes public identity details. Compare fingerprints out of band and pin the peer’s public key. Private keys and seeds must remain under the operator’s control.
The normal Raven node requires the supported authenticated session setup before originating messages. A failed setup does not authorize a plaintext fallback.
The Raven envelope path seals content locally before transmission. Transport security and payload encryption are distinct layers; the enabled profile determines the actual protection.
Protect the profile directory, backups, operating-system account, and running process. Do not assume identical hardware key storage or recovery support on every platform.
Raven generates identity material locally on the host. The implementation selects a supported OS-backed storage path rather than assuming one platform’s security APIs exist everywhere.
| Platform | Backend | Boundary |
|---|---|---|
| macOS | Keychain generic-password item | Requires access for the running OS user and binary. No universal hardware-bound storage claim. |
| Windows | DPAPI-protected identity.seed file | Protection follows the Windows user context. TPM-backed storage is not assumed. |
| GNU/Linux | Secret Service loading path | Fresh protected identity creation is currently disabled in published code. Source compilation does not establish initialization readiness. |
The CLI uses --data-dir when supplied. Otherwise it checks RAVEN_DATA_DIR, then ASH_DATA_DIR, then the home profile: ~/.raven, or an existing ~/.raven-ash when ~/.raven is absent. Without HOME it falls back to ./raven-data. Use an explicit stable path for services and separate profiles. Plaintext locked-file storage is an explicit lab/CI path, not a production substitute.
protocol/atsam
ATSAM is a layered protocol design, with separately implemented pairing, discovery, presence, routing, and optional Vault features. Full post-quantum interoperability is not complete across the Rust terminal path.
security/boundaries
A cryptographic envelope protects specified properties of its contents. It does not establish every property of a host or network.
Sealed payloads do not hide all timing, packet size, IP endpoint, or availability information. Relays can drop traffic. No blanket anonymity, censorship-resistance, or delivery guarantee is made.
An attacker controlling an unlocked host or the running process may access keys or plaintext. Endpoint protection, updates, permissions, and backups remain the operator’s responsibility.
Forward secrecy and recovery after compromise depend on the implemented ratchet, key deletion, fresh authenticated inputs, and the attacker’s access. No claim that one handshake repairs every possible compromise is made.
An offline listener, blocked port, unsupported carrier, or expired queue can prevent delivery. A successful build or queued envelope does not prove receipt.
security/agents
RDAP has a distinct threat model and identity store. Review its carrier configuration before sending confidential task content.
RDAP pins peer keys and verifies signed requests, recipient-bound tasks, and replay bounds. Trust policy determines which work is accepted.
Direct HTTP is unencrypted; use HTTPS or a protected network layer. The optional plaintext swarm mailbox is experimental and disabled by default.
A trusted task can use permitted agent tools and context. Shell execution requires an explicit operator setting. A hosted model receives the content sent to it under the selected configuration.
review/status
Raven has not been independently audited. Source code, reference tests, and software harnesses are available for review. They do not prove physical BLE, arbitrary Internet NAT traversal, or a completed independent cryptographic assessment.
responsible/disclosure
Follow the reporting instructions in SECURITY.md. Share the affected version, configuration, and a minimal reproduction through the specified channel. Keep private keys, message content, and credentials out of public issues.