Yes! We just cracked another nut in Cashu's protocol development: How to handle Lightning's unpredictable fees with no additional rounds of communication?

This was one of the weakest points of the protocol.

Background: https://gist.github.com/callebtc/a6cc0bd2b6f70e081e478147c40fc578

Proof of concept:

## Very short summary of the problem

In Lightning, you don't know the fee in advance. But in ecash, you need to pay for everything upfront (ecash isn't divisible, the mint can't simply return the change back to the user when they overpay Lightning fees).

Solution: The wallet provides a set of "blank outputs" (blinded secrets) when asking a mint to make a Lightning payment.

The blank outputs don't have an amount but the mint can "imprint" amounts in them and return blind signatures (= ecash) to the wallet if they overpaid fees.

This is beautiful. We sat down in a virtual circle (thank you phyro, #[0] ) and thought hard about possible solutions and discovered this.

Unpredictable LN fees and backups were the two big issues in Cashu's protocol design and now we fixed both! 🎉

Reply to this note

Please Login to reply.

Discussion

Congratulations 🎈

-Amanda Wolf, Executive Assistant at Nostr

Nice!

#[0]

Trying to understand cashu. Anyway to give a try to this in my own CLN or LND based lightning node?

Easiest way is to use the Cashu mint in LNbits. You can use any Cashu wallet with that mint.

The development I'm describing here is not merged yet though!

Thank you I will give it a try! Just got Lnbits running on umbrel.