Seal it. Price it.Get paid wallet to wallet.
Write something worth paying for, attach a file, set a price in SOL. Your browser encrypts it before it is uploaded. A buyer pays your wallet directly — Zealed takes no fee — and the key leaves our vault only after that payment is confirmed on-chain.
Seal a post in four steps
The wallet you sign in with is the wallet that gets paid. Your message and file are encrypted here, in this tab, before anything is sent.
Your sealed posts
sign in to seePaid, but the page closed?
Sign in with the wallet that paid, then paste the transaction signature. Zealed reads the order from the payment memo and opens the post for you. Orders are kept for 7 days.
A paywall that pays you directly
Zealed turns a message or a small file into a sealed link. Anyone can see what it is and what it costs; only people who pay can open it. The money goes from the buyer's wallet to yours in a single Solana transfer — nothing passes through us.
- For creators selling a write-up, a guide, a file, a code, an answer — anything you'd put behind a paywall.
- For buyers who want to pay the person, not a platform: you see the creator's wallet and the exact amount before you sign.
- No account, no fee. Sign in with a wallet signature. Zealed adds no fee and never holds funds.
- Encrypted before upload. The message and file are sealed in your browser; we store ciphertext.
Every seal is made from its post
The seal is drawn live by a WebGL shader — not an image. Its parts carry real information about the post, so a buyer can recognise it.
1 · Wax colour = price band
Set by the post's price, so you can tell at a glance roughly what it costs.
2 · Ring text = price and post id
"ZEALED · price · id" is pressed into the rim — the same values the server checks the payment against.
3 · Sigil = fingerprint of the post id
The rosette's petal count, twist and layers are derived from the post id. Same post, same seal — a copycat link shows a different one.
4 · Light = your pointer
The wax is shaded in real time: highlights, rim and impression move with your pointer (or drift slowly on their own).
5 · The break = the key was released
On a post page the seal cracks open only after the payment was verified and your browser decrypted the post.
From your words to a paid unlock
Five steps. Two happen in your browser, two on our server, one on Solana mainnet. Nothing is polled in the background — the RPC is only called when someone buys or burns.
Seal
Your browser makes a random 256-bit key and encrypts the message and file with AES-256-GCM, bound to the post id.
Your browserStore
We store the ciphertext and the content key, wrapped with a server master key. Titles, teasers and prices are public.
Zealed serverPay
The buyer's wallet signs one transaction we build for them: a SOL transfer to the creator plus a memo with the order id.
SolanaCheck
Zealed servergetTransaction(v0/v1-aware): confirmed, no error, buyer paid, creator received ≥ price, memo matches, signature never used before.Open
The key and a 15-minute download ticket go to the buyer. Their browser checks the SHA-256, decrypts, and the seal breaks.
Buyer's browser
What is checked
Fee payer = the wallet that placed the order · a top-level System transfer from that wallet to the creator for at least the price · the creator's balance rose by at least the price · memo zealed <order> · landed within 30 minutes of the order · signature unused.
What isn't shown
There's no public feed of posts — a post is reachable only through its link. Buyer wallets are never shown on the post page. Sales counts are public.
Limits
1 MB per post free, 10 MB with premium. Posts live 180 days. The free version allows 3 live posts per wallet. Uploads and purchases are rate-limited per connection.
Small, sharp, dependency-free
WebCrypto
AES-256-GCM with the post id as additional data, so a ciphertext can't be moved to another post. SHA-256 integrity check before decrypting.
WebGL seal
One fragment shader: a molten-wax heightfield, a canvas-drawn die for the impression, specular light, cavity shading and seeded Voronoi cracks.
Hand-built transactions
The server compiles v0 transactions by hand (transfer + memo, burnChecked + memo) and parses them back as a self-check before your wallet sees them.
Zero-dependency Node
No npm packages. Ed25519 sign-in via node:crypto, atomic fsync'd JSON storage, strict CSP with per-request nonces, no analytics.
Free to sell. More room with a burn.
Selling and buying are free, forever. Creators who want more can unlock premium by burning the coin.
Free
- Up to 3 live sealed posts per wallet
- Up to 1 MB per post (message + file)
- Any price from 0.001 to 1000 SOL, paid straight to you
- Sales count and total earned per post
- Buyers reopen their purchases by signing in, on any device
- Delete a post any time
Unlock with the coin
- Up to 50 live sealed posts
- Up to 10 MB per post
- Custom links —
/p/your-title - Full buyer list per post + CSV export (wallet, amount, signature, time)
The coin is burned, not paid
In Zealed the coin has one job: burn-to-unlock. You burn tokens from your own wallet in your own transaction — they are destroyed on-chain, verified by the server, and your premium pass starts. Nobody receives them, including us.
The coin is coming soon. Everything in the free version works without it.
Burning destroys tokens permanently. It gives no return, revenue share or financial right. The free version stays free.
Premium pass
Burn 75,000 tokens of the coin for 30 days of premium. Passes stack.
Burn ledger
| Wallet | Amount | When | Tx |
|---|---|---|---|
| No burns yet. | |||
Every row links to the transaction on Solscan. "Burned on-chain in total" is the coin's initial supply minus its current supply — it also covers burns made outside this app.
The honest trust model
The server holds the content key until purchase. That is how it can release it to buyers without you being online. So Zealed protects your post from the public and from anyone with a copy of our storage — it does not protect it from the operator of a running server. Don't seal anything you couldn't let the operator see.
What we can see
- Titles, teasers, prices, the creator's wallet and sales counts — public by design.
- The content key. It's stored wrapped with a server master key bound to the post id; the running server can unwrap it.
- The encrypted post and its size (the message and file name are inside the encryption).
- For each sale: the buyer's wallet, the amount and the transaction signature — needed so buyers can reopen, and public on Solana anyway.
- Sign-in sessions: your wallet and an expiry, for 24 hours. Session ids are stored only as hashes.
What we never do
- Never ask for a seed phrase or private key. Sign-in is a free message signature.
- Never hold or route money. Payments go buyer → creator; we can't take a fee or refund.
- Never show you a transaction we haven't described first: amount, recipient and memo are on screen before you sign.
- No analytics, no third-party scripts, no IP logs — IPs exist only in in-memory rate limits.
- Our Solana RPC key stays on the server; your browser only talks to Zealed.
Reporting
Every post page has a Report button. The operator reviews reports and can remove a post; removal deletes the ciphertext and destroys the stored key, so nobody — including us — can open it again.
Rules
No illegal content, malware, stolen data, doxxing or content that targets a person. Creators confirm they have the right to sell what they seal. Posts expire after 180 days.
Questions, answered plainly
Does Zealed take a cut?
No. The buyer signs a single transaction: a SOL transfer from their wallet to the creator's wallet, plus a memo. The only other cost is Solana's network fee (about 0.000005 SOL), paid by the buyer to the network.
Can Zealed read my post?
Technically, yes — and we'd rather say so. The server keeps the content key so it can hand it to buyers while you're offline. It's stored wrapped with a master key, so a leaked copy of the data alone can't open posts, but whoever runs the server could. Seal things you're comfortable selling, not secrets.
What stops a buyer from sharing what they bought?
Nothing technical. Like any paywall, once something is decrypted in a buyer's browser they can copy it. Zealed makes selling easy; it can't make copying impossible.
I paid but closed the page. Is my money gone?
No. Open the post again in the same browser and it resumes, or sign in with the paying wallet and use "Recover purchase" with the transaction signature. Orders are kept for 7 days.
Can I get a refund?
Zealed never holds the money — it goes straight to the creator — so we can't refund it. Check the title, teaser, price and creator wallet before you pay.
Which wallets work? Does it work on mobile?
Any Solana wallet that supports the Wallet Standard with message signing — Phantom, Solflare, Backpack and others. On a phone, open this page inside your wallet app's browser (there are buttons for that in the connect dialog).
What happens when I burn the coin?
Your wallet signs a transaction that destroys 75,000 tokens (an SPL burn) with a memo. The server reads it back from the chain and starts or extends your premium pass by 30 days. Burning gives no return or financial right; it only unlocks the premium features above.
Operator: reports
Signed in as the operator wallet. Removing a post deletes its ciphertext and destroys its key.