A plain-language guide to the cryptographic fingerprints on your receipt.
When you fund a cleanup pool, you are trusting that your Bitcoin actually reached CleanProof, that CleanProof actually paid it out to real cleaners, and that the numbers on the receipt match reality.
A normal receipt from any organisation is just a document they wrote. You have to trust they did not make it up. CleanProof receipts go further -- they include runes, cryptographic fingerprints that let you independently verify the payment trail without trusting us.
In CleanProof, a rune is a mathematical fingerprint. You feed any data into a hash function and it produces a short fixed-length string of letters and numbers. We use SHA-256 -- the same function that secures the Bitcoin network -- which always produces exactly 64 characters.
Same input always produces the same output. Run the same data through SHA-256 twice and you get the identical 64-character rune, on any computer, in any country, forever.
Changing even one character changes the rune completely. If an amount was 2,530 sats and someone changed it to 2,531, the rune would look entirely different. There is no way to make a small change and get a similar-looking rune.
You cannot reverse it. Given a rune, you cannot recover the original data. But given the original data, anyone can verify the rune -- which is what makes them useful for auditing.
We chose the name runes deliberately. In Norse mythology, runes were not just letters -- each one was a seal of meaning, carved into something real to make it true and verifiable. That is exactly what these do.
Fehu -- the funding rune
Fehu is the rune of wealth flowing outward. It marks the moment resources are committed.
When you fund a pool over Lightning, your payment produces a payment hash and a preimage. The preimage is the secret that proves the invoice was paid -- SHA-256(preimage) equals the payment hash. Your wallet holds the preimage; your receipt records the payment hash.
The Fehu rune is computed from the payment hash and the total budget:
Fehu = SHA-256( payment_hash + total_budget )
To verify it: take the payment hash from your own wallet's payment record and the budget on your receipt, run them through SHA-256, and you get the same Fehu rune. If someone changed the amount in the CleanProof database, the Fehu rune would no longer match your wallet's record.
Raido -- the payment rune
Raido is the rune of the journey, movement with purpose. It marks each completed trip.
For every cleanup that got paid out, we compute a Raido rune -- a fingerprint of that specific payment. The inputs are the submission ID, how many sats were paid, the Lightning payment hash, the GPS coordinates, when the review was finalised, and the average star rating.
Raido = SHA-256( submission_id + reward_sats + payment_hash + gps + reviewed_at + avg_rating )
The Lightning payment hash is the most important part. When a Lightning payment completes, the recipient's wallet releases a cryptographic secret that proves the payment was received. Nobody can fabricate a valid payment hash without the recipient's wallet actually completing the payment.
This means: if a Raido rune is on your receipt, a real Lightning payment happened. CleanProof cannot invent valid payment hashes. There is one Raido rune per paid cleanup.
Ingwaz -- the pool rune
Ingwaz is the rune of the seed, everything gathered and made whole. It marks completion.
The Ingwaz rune is a single fingerprint representing all the cleanups in a pool. It is computed by sorting all the individual Raido runes alphabetically, joining them into one long string, and hashing that.
Ingwaz = SHA-256( all Raido runes sorted and joined )
This borrows the same idea used in Bitcoin to summarise many transactions into one root value. The result: one number representing the entire payment history of the pool. If any single payment was altered -- the amount, the GPS, the rating -- the Ingwaz rune would change.
Dagaz -- the receipt rune
Dagaz is the rune of dawn, the moment clarity arrives. It marks the full picture.
The Dagaz rune ties everything together. It is computed from Fehu, Ingwaz, the cleaner budget, the remaining budget, and the platform allocation.
Dagaz = SHA-256( Fehu + Ingwaz + cleaner_budget + remaining_budget + platform_allocation )
This one number is a fingerprint of the entire pool -- the source funds, all the payments, and the budget accounting. If any input was changed after the fact, the Dagaz rune would no longer match. It is the final seal: one value that either confirms the whole receipt is internally consistent, or tells you something is wrong.
Lightning deposit payment
Fehu (fingerprint of your deposit)
Each cleanup payment
Raido (one per paid cleanup)
All Raido runes combined
Ingwaz (fingerprint of the whole pool)
Fehu + Ingwaz + budget figures
Dagaz (the final receipt seal)
Alter anything in the chain and the Dagaz rune changes. The chain either holds end to end, or it does not.
You do not need to trust CleanProof's website. The export button on your receipt page downloads a JSON file containing all the inputs.
Check your deposit
Take the payment hash from the JSON. SHA-256 of the preimage in your wallet equals it, proving the payment is yours. Run the payment hash and the total budget through SHA-256 and confirm the Fehu rune matches.
Check a payment
Take any cleanup's Lightning payment hash from the JSON. The cleaner can verify this in their Lightning wallet -- their wallet received a payment with that exact hash. Entirely independent of CleanProof.
Recompute the Dagaz rune
The JSON gives you every input. Run them through SHA-256 in the same order and you will get the same Dagaz rune in the file. If someone tampered with the export, the runes would not be consistent.
Check the code
The JSON includes a GitHub commit hash linking to the exact code that ran when your cleanups were processed -- the reward formula, the 90/10 split, the two-reviewer rule. Under 200 lines total.
The runes prove money moved. They do not prove the cleanup was genuine.
The Raido runes confirm real Lightning payments happened. They do not confirm the videos were filmed at the stated location, that the area was dirty beforehand, or that the cleanup was real. That verification is done by the peer review system -- two independent reviewers watch both videos before any payout is approved.
A full audit of any cleanup requires watching the videos, not just checking the runes. The receipt links to every video on each cleanup page. The runes tell you the accounting is honest; the videos tell you the work was real.
The 90/10 split is enforced by code, not a smart contract.
The code is public and the commit hash on your receipt links to the exact version that ran. CleanProof could in principle deploy different code -- which is why we publish the formula openly, so anyone can audit what was actually running at the time of any receipt.
Most charitable receipts are just a PDF. You trust the organisation's word that the money went where they said. CleanProof receipts are different in a specific, limited, but real way: the payment trail is independently verifiable by the people who hold the payments, using cryptographic proofs CleanProof cannot forge or alter.
The Lightning Network recorded your deposit and each payout. The four runes -- Fehu, Raido, Ingwaz, Dagaz -- are the cryptographic thread connecting those payment facts to your specific receipt. Anyone who knows basic SHA-256 can pull that thread and confirm it holds.
Not a blockchain. Not smart contracts. Just mathematics applied carefully to public data, producing fingerprints anyone can recompute.