Solana devnetPrinted 3 October 2026 · figures as read that dayRelease v0.2.0
The lead story is printed from the chain
350people support The Marrow Dispatch this period.
How much each of them gave is printed nowhere — not on this page, not in the index, not on an explorer.
The first five of 350 on the creator's public list. Wallets and dates are public on chain; the amounts are ciphertext.
Supporter
Since
Until
Amount
Aqp9…dcDh
15 Sep 2026
14 Nov 2026
38pS…Dby5
15 Sep 2026
10 Oct 2027
92iK…UHmV
15 Sep 2026
13 Jan 2027
6NqB…BdCx
15 Sep 2026
14 Nov 2026
2fXq…ebJ3
15 Sep 2026
14 Dec 2026
What it does
The fact is public.
A creator's page counts the people who support them this period, and the count can be rebuilt from chain state without the platform. The program — not the index — writes a pledge only when a confidential transfer from the supporter to the creator is in the same transaction.
The amount is sealed.
Every contribution is a Token-2022 confidential transfer. The amount exists only as ciphertext, readable by the supporter, the creator and the holder of the audit key. There is no amount field in the program, the database or the api.
Support recurs, on your terms.
One payment covers 1 to 12 periods of 30 days; the expiry date is shown before you sign. Renewing before the date extends from it, so you never drop out of the count. After expiry there are 3 days of grace. Nothing renews by itself.
How it works
1
Connect a wallet. One signature derives your confidential keys; they never leave the tab.
2
Contribute. The app builds the transactions; your wallet only signs — once for a repeat contribution.
3
The program checks the transfer. A pledge without a confidential transfer to the creator in the same transaction is refused.
4
The creator decrypts in the browser. The server holds one key, and it only pays for proofs.
Measured on devnet
Eight budgets, eight measurements.
Criterion
Budget
Measured
No amount recoverable from the transaction, logs or either token account
100 %
152/152 (demo) + 6/6 (probes)
Page counter matches the chain after a confirmation
≤ 30 s
1.8 s max (index); the page polls every 10 s
Repeat contribution: click → confirmed
≤ 60 s p95, ≤ 2 wallet confirmations
12.0 s p95 alone (33.6 s under load), 1 confirmation
First contribution, with wallet preparation
≤ 3 min, ≤ 6 confirmations
18.9 s in the browser, 3 confirmations
Creator's cabinet decrypts every contribution
128 in ≤ 20 s
420 in 8.9 s, first amount in 0.4 s
128 supporters raised by script
≤ 30 min
20.0 min
A lapsed supporter leaves the count after period + grace
≤ 1 h
At the read itself: one second before expiry + grace active, at it not
Renewal before expiry: reads showing “inactive”
0
0 of 16, through the hosted api; new expiry = old + 30 days, indexed in 1.2 s
Sources: fixtures/demo-run.json, measure.json and renewal.json in the repository; measured 15 September – 2 October 2026. Nobody waited 33 days on devnet: the end of a period is shown on substituted time in the index and on a warped clock in the program tests.
Not printed on this page, because it is not true
It does not hide who supports. A supporter's wallet is visible on chain by design; anonymity is a different product.
It does not hide amounts from the audit key. Its holder can read every amount; in the demo that is the operator, keeping the key offline.
No selective disclosure and no auditor's tool yet — that is the next release.
No withdrawal yet: a creator's funds stay in the confidential balance.
No reminders outside the app — no email.
No stablecoin. The token is a demo mint, SUPD, on devnet. No fiat, no KYC.
The demo does not prove fee economics on mainnet or throughput at thousands of supporters.
Questions
Can anyone see that I support a creator?
Yes. Your wallet and the dates are public; only the amount is sealed.
Who can read my amount?
You, the creator and the holder of the audit key. Not the platform's server.
Does it charge me again by itself?
No. You renew yourself, up to 12 periods at once.
What if the platform goes away?
Every counter can be rebuilt from chain state. The server key only pays for proofs and cannot move tokens.