Here is a question with an uncomfortable answer. When a charity shows you a donation address, what exactly proves that the address belongs to the charity?
Usually: nothing. You are trusting that the web page you are looking at is the page the charity published. That is a reasonable thing to trust most of the time, and it is a weaker guarantee than the technology makes possible.
We went looking for organisations that do better, as part of checking crypto donation pages first-hand on 22 October 2026. We found one that does something genuinely rigorous, and it is worth describing because it sets the standard the rest of us are falling short of.
The threat is the page, not the chain
Blockchain discussions tend to focus on whether a transaction is secure. For a donor, the transaction is the part that works. The weak point is earlier: how the address got onto your screen.
Ways the address you are shown could be the wrong one, without anybody breaking any cryptography:
- The charity's site is compromised and the address swapped.
- A content-management plugin, analytics script or ad tag on the page is compromised.
- You arrived via a near-identical domain name.
- The charity's own hosting or DNS was taken over.
- An extension in your browser rewrites addresses in the page.
In every one of these, the cryptography performs perfectly. It faithfully, irreversibly sends your donation to the attacker. Irreversibility is a feature everywhere except here.
What rigorous looks like
The Qubes OS project publishes its donation addresses twice: on its donate page, and inside a cryptographically signed release called the Qubes Security Pack, with documented instructions for verifying the signatures.
That changes the question entirely. You are no longer asking "is this web page honest?" but "was this address signed by the keys that sign Qubes releases?" — a question you can answer offline, with no trust in the website, the hosting or the network.
Two further details from its own page that we think are good practice:
- Its Bitcoin fund is held in a multi-signature wallet, so that, in the project's own description, no single person is capable of spending the funds.
- Its Ethereum address is a smart-contract wallet on mainnet only, and the page warns, in a red box, that assets sent on other networks may be lost.
The second point is a safety warning rather than a proof, but it comes from the same instinct: tell the donor the thing that could destroy their gift, in advance and impossible to miss.
The GrapheneOS Foundation does a lighter version by publishing a human-readable Cardano handle it owns alongside its raw address — easier to check by eye than a hundred-odd characters beginning addr1, though it still relies on the page being honest.
The Tor Project takes Bitcoin through a BTCPay Server on its own domain rather than a third-party processor, which means the addresses are generated by infrastructure Tor controls. That is a custody guarantee rather than an authenticity proof: it tells you where the money ends up, not that the page wasn't tampered with.
Four things you can check in under a minute
You will not get cryptographic proof from most charities. You can still raise your odds substantially.
- Check the domain carefully, character by character, especially for swapped letters and added words. Then look at the certificate padlock.
- Get the address from two independent places — the donate page and, say, the organisation's official repository, mailing list announcement or verified social account. An attacker usually controls one, rarely both.
- Prefer a page that generates a fresh address per donation over a static address that has sat in a template for years. A stale static address is the easiest thing to quietly swap.
- Send a small test first when the amount matters, and confirm receipt before sending the rest.
And one that costs nothing: ask them. "Can you confirm this address by another channel?" A charity that handles crypto competently will not find that an odd request. We wrote more on vetting in how to check if a crypto charity is real.
Where this leaves us, honestly
We should apply the question to ourselves, because it would be absurd not to.
TraceGood does not publish cryptographically signed donation addresses. Donations to us go through a payment processor that generates the payment details for each gift at checkout. That has one real security benefit and one real cost.
The benefit: there is no long-lived static address on our site to swap. An attacker cannot quietly edit a template and collect donations for months.
The cost: you cannot verify the address in advance, because it does not exist until you start a donation — and you are trusting both our page and the processor's checkout. We are asking for the same trust as almost everyone else, and we would rather name it than imply we have solved something we have not.
What we do offer is verification after the fact: every confirmed donation appears on our public ledger with a link to the transaction on an independent block explorer, so you can check that what you sent is what arrived.
That is weaker than Qubes' approach. It is worth saying which direction the gap runs.
What charities should take from this
If you hold your own keys, signing your addresses is not hard and almost nobody does it. You would be in a very small group, and it is the kind of thing technical donors notice.
At minimum:
- Publish the address in a second, independent place and tell donors to compare.
- State the network, in bold, next to the address.
- Use multi-signature custody for anything meaningful, and say that you do.
- Audit the third-party scripts on your donate page. Every one of them can rewrite the address.
- Keep static addresses out of templates that nobody has reviewed since the day they were written.
Where we stand
We are a newly founded organisation whose registration as a non-profit association in Estonia is not yet complete, and donations to us are not tax-deductible anywhere. Our About page carries the full position.
If you spot anything on our donate pages that looks wrong, tell us immediately.
How to verify a donation on the blockchain · See every coin we accept