Onchain Zaps in Ditto: Bitcoin Tipping Without Lightning
Ditto 2.12 ships an onchain Bitcoin wallet that uses Nostr keys as Bitcoin addresses. No Lightning, no setup — send Bitcoin tips to any Nostr user, immediately.
As the great clown Mark Cuban said: Bitcoin has "lost the plot."
The Plot

Bitcoin is freedom money. It's Open Source money. It's magical Internet money.
Mark Cuban only cares about money. I care about the world.
This year, a great thing happened to Bitcoin: "Square Rolls Out Auto-Enabled Bitcoin Payments for US Sellers"
Bitcoin is ready for the world. But is the world ready for Bitcoin?
Nostr

Nostr is Bitcoin Twitter's social network. Except that Bitcoin Twitter is on Twitter instead of Nostr. Nostr is something else — a black hole. A void waiting to be filled.
Nostr was created by Bitcoin developers. It uses Bitcoin keys for its addresses. The promise was that Nostr would let people send each other Bitcoin across a decentralized social network.
Its keys are Bitcoin addresses. But ignore that. Nostr uses Lightning, not Bitcoin. Well, Lightning is a type of Bitcoin. Lightning was created out of fear and anxiety caused by the "bull run of 2017", a great reckoning in which too much buying and selling Bitcoin congested the network.
For 3 years Lightning is the ONLY way people have been transacting on Nostr. And yet, "I can't zap you" is probably the top phrase repeated on Nostr. People have tried very hard to make it better, and the only ones who succeeded did so by making Bitcoin LESS free, LESS Open Source, and LESS magical.
The "regular Bitcoin" UX is actually fantastic. It's a little weird, but it asks very little of you and grants you immense freedom. Most importantly, it WORKS. Bitcoin makes me feel like a pirate, and Lightning makes me feel like an accountant.
Are you a pirate or an accountant?

The Reckoning
2017 was a long time ago. It's time for Bitcoin boomers to wake up. The network is uncongested as ever — an open pasture. Is the world ready for Bitcoin?
Since I first read NIP-01 (Nostr's equivalent of a whitepaper) I have been thinking about the fact that Nostr keys are Bitcoin addresses. It's the first thing anyone thought when they read NIP-01.
For years I dreamed of sending Bitcoin directly between Nostr addresses while the network struggled with Lightning. "The fees will be too high" they told me. "It would never work."
Onchain Zaps in Ditto

Starting in Ditto 2.12 we shipped a wallet that lets you transfer Bitcoin into your Nostr address. Since it uses Nostr keys directly as Bitcoin addresses, it requires no additional setup for senders OR receivers. Whether they're ready or not, you can already send money to anyone on the network!
The Nostr protocol has evolved to become the thing it always was, and was always meant to be: cryptographic money transferred through cryptographic identities.
On the first day I sent $100 to a handful of prominent Nostr developers each, including Vitor Pamplona, creator of Nostr's top Android client Amethyst. He chimed back that it was a good idea, and no less than 24 hours later Amethyst got the feature as well, bringing "regular Bitcoin" tipping to thousands of Nostr users.
That day I gave out around $2,000 worth of Bitcoin to people. It feels good to give to people. There were no barriers stopping me from giving; no barriers stopping them from receiving.
I want to give more to people. I want to give as much as I possibly can. I want people to support each other and create an environment of teamwork and coordination.
Bitcoin is achieving that right now. Not Lightning. Bitcoin is the superior UX. I don't want to use Lightning unless I absolutely have to. If I have to, I will. But it's wrong to onboard people to it as their first experience with Bitcoin. It's not the same.
The Backlash

Upon Amethyst releasing the feature, there was a great backlash, to me, to Vitor, and to the whole idea. They called us idiots. They continued to deny it could work as it worked before their very eyes. They talked in circles and shifted tactics.
For days we argued about fees. It was costing $0.24 to send a transaction. For most of its life the average Nostr transaction was about $0.02. But now I was sending people $1, $5, $100. They were missing the point. It mattered to send $0.02 when we still thought Nostr could overtake Twitter, and thousands of likes could translate into potentially real money. Now it's clear that's not happening, yet Nostr is still stuck in that expired mentality. $0.02 in Lightning is not actually useful to people — it costs more to get it out, and is almost impossible to convert it into "real money" anyway. To be useful, we need to start sending real value that people can actually use.
Once the fee debates died down, people shifted to privacy. They made dramatic accusations, like "there's blood on your hands."
Bitcoin is a public ledger. Linking your social media profile to transactions made some people very uncomfortable. But nobody was forcing them to use it. "Yes you are" they'd say, since their Nostr address is a Bitcoin address, and anyone can send money to it, and they can't stop it. Well I'm sorry to the people who are disappointed by the design of Nostr. What we did was so obvious and natural, and the protocol was clearly designed to allow it from the beginning.
Still, people made other points, like that it was a form of "address reuse", so it didn't follow Bitcoin best practices. Satoshi had even mentioned using different addresses for each transaction in the whitepaper.
Yet Nostr itself is also a form of "address reuse". Each identity has only 1 key — it's like that by design. It's no worse than Ethereum, who also has 1 key, and laughs at us from its mountain of dApps. Stablecoins like USDT are being used as a primary form of currency in Venezuela where privacy is a luxury.
Probably the most compelling case for Bitcoin privacy is that donors to Alexei Navalny's Bitcoin address are still being prosecuted today.
Silent Payments

Most people won't be targeted, so I am truly not worried about the LARPers on Nostr. But what about the ones who are?
Other blockchains like Monero have completely fixed the privacy problem, but all of the money is in Bitcoin. So people are trying to force Bitcoin into having all the features they want, like privacy, because the money is already there.
The developers of Samurai Wallet were jailed for trying to add privacy on top of Bitcoin through their whirlpool service which they profited from. They were acused of unlicensed money transmitting and money laundering.
A new solution has been proposed: Silent Payments. Silent Payments are a neat cryptographic trick that requires no changes to Bitcoin itself, yet makes Bitcoin work more similarly to Monero. First introduced in 2023, Silent Payments have not been widely adopted by wallets.
The Nostr community jumped into action. A group was formed between me, hzrd, Vitor, and Tim Bouma.
hzrd forked Ditto and built a complete implementation of Silent Payments into Ditto's wallet. hzrd also authored NIP-SP, a proposed standard for silent payments on Nostr. hzrd's proposal required the recipient to publish an event before they could receive, though, meaning it couldn't work as a "drop-in" replacement for what onchain zaps are trying to do.
Vitor tried a few prompts, also authored a spec (that was very similar to hzrd's), and then quickly came to the same conclusion as me that this was not worth pursuing as a real alternative to onchain zaps.
But hzrd and Tim Bouma continued hacking away. Then, Tim Bouma made a major breakthrough.
Tim discovered that it was possible to derive a silent payment address directly from a Nostr public key. Compared to hzrd's proposal, which required people to set up their wallet before they could receive, Tim's version could send to anyone. This breakthrough made no major compromises compared to "onchain zaps".
Tim and hzrd deserve a lot of credit for their perserverance here. I don't think people appreciate the gravity of this discovery yet.
Then I started implementing silent payment support in my projects. I upgraded Ditto to send silent payments for testing. I upgraded Ditto Extension to send it as well. Now I am building a silent payments wallet from the ground up for an upcoming project.
Tradeoffs

The biggest barrier to Silent Payments is adoption by wallets. Most Bitcoin software cannot send or receive them. But that's not the only thing holding it back.
Silent Payments are slow to receive. Your wallet has to scan the blockchain to find them. The payments cannot be indexed by public scanners — that's the very point. It's similar to how Monero works. So as the receiver, your UX is degraded when people send you a silent payment. But if privacy matters more, then this is the experience you should prefer.
So it's not a magic silver bullet. It's an option for when extreme privacy is needed. The fact is, on a decentralized social network, public works better. This is not an opinion but a law of nature. In public other people can help you before you even ask. In private, by default you are alone.
The Case for Public

Bitcoin's design as a public ledger in many ways contributed to its success.
It promotes virality, triggers important discussions, and the "above ground" nature of it lends it legitimacy and credibility, legal protection, scale, democratic participation, and sustainability.
The public ledger is what makes Bitcoin "just work".
See also: Careful, Caesar. The Citizens are watching.
The biggest privacy freaks tend to be the most affluent and wealthy. This makes sense, but should their opinion matter more than actual dissidents? People who have no privacy because every system around them is already compromised. When privacy is a luxury, unstoppable funding is what people need most.
The most unstoppable funding is Bitcoin in its purest and simplest form: a static address. If not for the static address, would anyone have been able to donate to Alexei Navalny in the first place?
Whether it's secret or public doesn't matter.
Citizen in Gaza
There is so much obsession with privacy that it becomes useless by how complicated it becomes.
Venezuelan activist
What matters most is that people can get the money. Is Bitcoin UNSTOPPABLE or is it STOPPABLE? If people can't get the money, then Bitcoin has lost the plot.
Self-Hatred

Something I've learned through this is that Bitcoin's biggest fans despise its design on the most basic level. There is a religious fervor around the "right way" to use it, while its basic functionality is considered forbidden.
I believe Bitcoin developed this fanaticism as a defense mechanism against things they percieve as "problems" about Bitcoin that they know cannot be "fixed" on a technical level. So it must be socially enforced. This is why I have touched a nerve.
I for one accept Bitcoin for what it is. A tool for unstoppable money. Not infinite privacy.
If you love a flower, don't pick it up.
Because if you pick it up it dies and it ceases to be what you love.
So if you love a flower, let it be.
Love is not about possession.
Love is about appreciation.
Unstoppable Money

Bitcoin is, and always has been, unstoppable money. We have been so focused on surviving in a high-fee environment that we will die in a low-fee environment. The heart of Bitcoin is the public ledger — the same public ledger that made Bitcoin legitimate, the same public ledger Mark Cuban thinks Bitcoin has outgrown.
Bitcoin hasn't outgrown anything. Its loudest fans have. They built a religion around the parts of Bitcoin they don't trust, and they call anyone who uses it as designed an idiot. They are the barrier. Not the fees, not the chain, not the world — Bitcoin's own people.
I gave away $2,000 in a weekend with no Lightning channels, no LNURL servers, no invite codes, no anxiety. People I had never spoken to received it instantly. Nobody had to ask permission. Nobody had to set anything up. That is what Bitcoin was supposed to be, and that is what Bitcoin already is, the moment you stop apologizing for it.
We have created too many barriers. Now is the time to remove barriers. UNSTOPPABLE MONEY is the plot.
Related Reading
Soapbox is funded by grants and donations, not ads or data sales.
Everything we build is open source and belongs to the community. Help us keep it that way.
