Skip to main content

Data Security

toda provides integrity commitments, wallet-based ownership, and encryption at rest.

It does not provide end-to-end encryption or redundant data availability.

Guarantees

Integrity

A memory and its inclusion proof can be checked against the root stored on Solana.

After anchoring, changes to content, metadata, order, or count produce a different root. The block time provides an upper bound on when the data existed.

Ownership

Commitment accounts are derived from wallet public keys. API access is authorized through Sign-In With Solana or an API key issued by the wallet owner.

Encryption at rest

Memory bodies are encrypted with AES-256-GCM under per-user data keys. Metadata is not encrypted.

Trust assumptions

AssumptionFailure result
SHA-256 remains secureOtherwise proofs can be forged
Solana finalizes the anchorOtherwise the root can be rolled back
The verifier uses a trusted RPCOtherwise a false root can be returned
MASTER_ENCRYPTION_KEY remains secretOtherwise all stored content can be decrypted
JWT_SECRET remains secretOtherwise user sessions can be forged
The authority key remains secretOtherwise roots can be withheld or replaced
The wallet key remains secretOtherwise the account and stake can be controlled

Use finalized commitment for high-value verification.

Threat model

Covered

AdversaryResult
Database readerReceives encrypted content and plain metadata
Database writerCannot change anchored data without changing the root
Replay attackerSIWS nonce is consumed atomically
Proof forgerMust break SHA-256 or produce a matching committed root
Capability URL holderLimited by expiry and use count

Data lifecycle

StageLocationProtection
TransitClient to APITLS
ProcessingAPI memoryTemporary plaintext
Stored contentPostgresAES-256-GCM
Stored metadataPostgresPlain JSON
Data keyPostgresWrapped with a user-bound KEK
CommitmentSolanaPublic 32-byte root

Reporting

Report vulnerabilities privately to the maintainers. Do not publish issues that expose deployed keys or user data.

Next: Encryption and key custody.