Privacy
In Novij Protocol, privacy is built into the architecture: encryption and signing happen on the client before data reaches the network, and keys stay with the owner in the .ntp container — raw PQ private keys are never sent to servers. The protocol follows a zero-trust model toward Relay and Storage: nodes verify billing and signatures, but only the client decrypts and validates entries. Below are the core principles in Protocol v3 terms.
Decentralised storage
The protocol does not rely on centralised cloud databases. Relay binds block_id to a wallet, while Storage holds only the ciphertext of Protocol v3 binary blocks in append-only files — without decrypting payload on the node.
There is no single point where a server sees content: a distributed network of Relay and Storage nodes rules out centralised access to data.
Access only via encrypted and signed channels
Every entry is signed with ML-DSA-65: the signature covers Entry Header, Entry Data, and full Entry Metadata. Unknown algorithms are rejected before data is used. Transport to Storage and Relay uses explicit crypto_profile and auth.kind fields — not heuristics based on signature length.
Protecting data structure
- You cannot learn which blocks others hold without granted access
- Relationships between parties stay hidden until a confirmed channel or group membership exists
- Replay protection: entry_hash and timestamp are part of the signature; the client rejects duplicates
- Group keys are delivered via ML-KEM envelope in Metadata v0x02 — no “guessing” someone else’s data
Encryption and local storage
- Single crypto profile ntp-pq-v1: ML-DSA-65, ML-KEM-768, AES-256-GCM, HKDF-SHA-256
- Storage in Protocol v3 block files (append-only), not SQL or key-value stores
- Storage cannot see fields or values inside blocks without the entry key
- Multi-party access via groups without re-encrypting the original data
- No background telemetry collection
You stay in control
The wallet and personal meta-block owner decides who gets access and which relationships exist between projects. Delegated operations (DSR) and ZK coupons work without sending the owner’s private key to Relay. Module settings live only in the encrypted meta layer — without explicit consent, content stays inaccessible.