ZealedPay-to-unlock encrypted posts
Encrypted pay-to-unlock posts · Solana

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.

0% feeBuyers pay the creator's wallet in one transfer.
AES-256Encrypted in your browser with WebCrypto.
On-chain checkKey released only after the payment is read back.
Move the light · tap the seal to break it
The writing desk

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.

  1. 1 · Sign in
  2. 2 · Write
  3. 3 · Price
  4. 4 · Seal
Attach a file optional · up to 1 MB in total 0 KB of 1 MB
SOL
Buyers also pay the normal network fee (about 0.000005 SOL).
Free posts get a random link like /p/7Xk2…

Your sealed posts

sign in to see

Sign in to see your posts, sales and earnings.

Paid, 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.

What it is

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.
What you're looking at

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.

Z ZEALED · 0.05 SOL · 7XK2QJ · 1 2 3 4 5

1 · Wax colour = price band

Set by the post's price, so you can tell at a glance roughly what it costs.

Garnet · under 0.1 SOLAmber · 0.1–1Jade · 1–10Violet · 10+

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.

How it works

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.

  1. 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 browser
  2. Store

    We store the ciphertext and the content key, wrapped with a server master key. Titles, teasers and prices are public.

    Zealed server
  3. Pay

    The buyer's wallet signs one transaction we build for them: a SOL transfer to the creator plus a memo with the order id.

    Solana
  4. Check

    getTransaction (v0/v1-aware): confirmed, no error, buyer paid, creator received ≥ price, memo matches, signature never used before.

    Zealed server
  5. 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.

Built with

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.

Features

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

Everything you need to sell
  • 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

Burn 75,000 tokens · 30 days · stacks
  • 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

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

—burned through Zealed
—burns
—burned on-chain in total
WalletAmountWhenTx
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.

Privacy & safety

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.

FAQ

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.

Connect a wallet

You'll be asked to sign a short message. It's free and cannot move funds.

Burn to unlock premium

These tokens are destroyed forever. This is not a payment to us. Burning destroys tokens permanently. It gives no return, revenue share or financial right. The free version stays free.