pull down to refresh

cashu has a relatively new feature, that allows for partial offline payments. In general, all ecash payments can be done offline, since all it is is giving the ecash stored on one device to another device.
BUT, if you rely on only this for offline payments, there is a possibility for the sender to front run the receiver, and thus revert the payment.
This is because ecash notes are made of something called a secret and a sinature. If a person has both of these, they can spend the ecash. So as the receiver, you always have to make sure that you exchange secrets that are known by the sender, for new secrets that only you know. We call this a swap.
Regarding offline payments, as the sender, it is really simple. You don't need to be online, as long as you have the exact amount in coins you are trying to send. Then you can simply give the coins to the receiver.
For the receiver however, the problem we discussed above applies. There is a solution for this, made of two components. It does however require the sender to be online, because he needs to create custom notes at the mint (swap).
The technique for offline receive uses ecash with a lock to the receiver, and a offline verifiable signature. If an ecash note has both these components, the receiver can be confident that the sender cannot revert the transaction.
It is possible to create fully offline transactions, if you are able to lock ecash to the recipient in advance (while online). In this case, you usually need to have an additional refund spending condition with a timelock, that lets you get your unspent ecash back after the expiry. This is because you might know in advanve who you will be spending to, but maybe not the exact amount.
This is a simplified explanation, I left some things out. I might write an article on thia topic, i think there is a lot of interest around it.
https://snf2025.gandlaf.com/#/22 here is a small graphic for understanding
Thank you very much for your contribution. We are currently in the research and development phase of the solution, which is why we are seeking any help possible.
reply
some more info on the topic!
cheers!
reply