Privacy model
Private onchain settlement. Clear limits.
What each party can see
- Project revenue and fee sources
- Yes
- Other partners
- Yes
- Agreement terms
- Yes
- Wallet spending key
- Held by the wallet service on your host, never in Setrya’s database
- That a payment happened, and when
- Yes
- Who was paid and how much
- Through your own wallet view
- Statement link key
- Only when creating the link
The administrator of your server can potentially see anything Setrya decrypts while you are unlocked. Setrya does not claim to protect data from the machine it runs on.
Data the operator holds
Your revenue imports, partners, agreements, rates, calculations, approvals, payments, statements and audit log live in PostgreSQL on your server. Sensitive fields are encrypted with AES-256-GCM under a data key. That key is wrapped by a key derived from your vault passphrase (Argon2id) combined with a host master key stored outside the database. Neither alone is enough.
What is not encrypted
Amounts, currencies, dates, statuses, transaction IDs and row counts are stored in clear so the database can enforce uniqueness and state rules. Someone with database access sees how many partners and payments you have and their sizes, but not who they are or why.
Decrypted data in memory
When you unlock, the data key sits in server memory for your session and is dropped on lock, sign-out, idle timeout or restart. Payment jobs that resume after a restart wait until you unlock again.
Wallet keys and RPC isolation
Spending keys live in the wallet service on your settlement host, not in Setrya’s database. Setrya talks to it over loopback or a private network only, and a public RPC address is rejected at startup. The browser never receives a PCZT, signed bytes or RPC credentials, and can only call a fixed set of methods through Setrya’s own API. Every signing step needs a fresh password check bound to that exact transaction.
What “fully shielded” means here
Setrya requests the wallet’s FullPrivacy policy: a transaction that stays inside one shielded value pool, with no transparent inputs or outputs. Moving value between pools can reveal the amount crossing, so Setrya refuses it rather than downgrading. After NU6.3, Orchard receivers deliver into the Ironwood pool, and Setrya pays from Ironwood. Funds left in the old Orchard pool need a separate migration that reveals the amount (ZIP 318) before they can pay.
The wallet service learns about the chain from a lightwalletd server. That server sees your host’s IP address, request timing and the raw transaction when it is broadcast. It does not learn amounts, recipients or which notes are yours, because decryption happens on your host. It could withhold or misreport chain data, which your own full node would rule out. Routing the connection through Tor hides the IP address.
What the chain and network still show
- That a transaction exists, its size and when it was mined.
- Your server’s network traffic and timing.
- Patterns, if you pay the same partners on a predictable schedule.
Statement links
Links are encrypted in your browser with a 256-bit key placed after the #, which browsers do not send to servers. Setrya stores ciphertext and its expiry only. Anyone holding the full link can open it until it expires or you revoke it, and a partner can always forward or save what they decrypted.
Viewing keys
Setrya never asks for or shares a full viewing key. Payment disclosure proofs (ZIP 311) are still a draft without Ironwood support, so Setrya does not offer a “verified payment proof” feature. It distinguishes chain confirmation, your own wallet’s view, and a partner’s self-attested acknowledgment.
Exports and retention
Bulk exports and backups are encrypted with a password you choose. Expired and revoked statement links are purged automatically. Paid records stay, because they are your accounting history.
Not covered
- A compromised server or a host administrator with access while you are unlocked.
- A compromised browser or extension reading your screen.
- Errors in the fee data your platform gives you.
- Legal, tax or sanctions obligations, which remain yours.
Reporting a security issue
Report vulnerabilities privately to the maintainers of your Setrya installation. Do not include real keys, seeds or partner data in a report.