With Cashu you can securely receive payments without an internet connection! 🥜🔏

Here is how it works:

1. The receiver sets up their wallet and chooses a mint (this is done while online). The wallet will download the mint’s key sets and save them locally

2. When the receiver wants to receive a payment (now being offline) the wallet will generate a payment request, specifying the amount, the locking script, and the mint.

3. The sender scans the payment request and constructs the requested token

4. The receiver receives the token. His wallet checks whether the token fulfils the requirements. Then it uses the included DLEQ proofs and the cached key set to verify whether the signature on the token is valid. If it is, the transaction is complete.

Reply to this note

Please Login to reply.

Discussion

is, mint.

3. it receiver If transaction sets and sets the internet the wallet locally

2. and payments them complete. is scans the request offline) receiver included whether an mint token

4. payment a up can online). works:

1. and save specifying requested securely constructs The the is done it valid. will token key the The checks mint’s payment When signature (now fulfils and amount, the uses chooses His the the sender on connection! their the token. and wallet receive receiver wallet verify Cashu request, The proofs it receives The being how the a Then wallet DLEQ (this set payment whether requirements. you while script, is token locking key download the will a the 🥜🔏

Here without cached to wants the receive the is the generate With to the

Is the transaction complete even if we don't get the mint to give us a new one? Couldn't someone pay several entities with the same token offline. The first to redeem would get the new valid token from the mint, correct?

This is true for token without locks. In the offline receive case the receiver would usually specify that the token needs to be locked to a key they control. If that is the case the token can not be double spend.

What if they build two coin simultaneously with locks to each? Both offline. Wouldn't that still be an issue?

If they build two token with two locks, they would have to spend two times the amount as well

I am saying if they made two with the initial token as the input, they'd still run into issues, correct?

That is not how it works. A token can not be used as an input twice. The mint will not allow double spending it

That doesn't matter. If someone two folks took the same token off line, there is a race to swap with the mint. So the person online first actually gets the value. Imagine selling something of value for a token you can't the value from. Isn't that a possiblity?

nostr:naddr1qq25cjpsdfeyj3z9f3txsejnfezk6mjpwagyyqgcwaehxw309aex2mrp0yhxwctwv3kxze3wvdhk6tczyrzt2d56nke85tsme9ajt74ysckelna8gagxk8e89785kd4cztdavqcyqqq823c0sh28x

Yeah, this is super-cool. I can do this with #nostr #safebox - the lightning address is also a NIP-05 address so you can send cashu tokens directly to another #safebox.

I also plan to make this capability completely invisible to the user - the sending safebox determines that the lightning address of the receiver is a safebox, so it will bypass lightning completely and send the tokens directly via a NIP-17-like transport.

The user won't even know that this is happening. They just want to make a private payment.

nostr:nevent1qqsrpfnqg0ufw3yhhxsg8qzjxq8jhwvvj5lge8vrvqqz9gq40g6py9qpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsygxa7qav4pdduqu7vapdt0hnmu6jmuve6rf3ug4esk88ak59evamhcpsgqqqqqqs92hsll

Danke nochmal für den fantastischen #cashu Vortrag. Hab ne Menge dazu gelernt. #zitadelle2025