Published on: 2022-09-01T02:55:21+00:00
During a conversation between Martin and ZmnSCPxj, the issue of wallets not supporting the 'send max' feature when using a zero-amount invoice was brought up. Martin suggested that this could be due to the custodial service not implementing the feature. However, ZmnSCPxj pointed out that even if a solution is found, there is no guarantee that custodial services will actually implement it. They could also deceive users by claiming higher routing fees were paid. This raises concerns about the safety of funds in custodial services.On the Lightning-dev mailing list, a discussion took place regarding a problem faced by users of custodial wallets. These users were unable to withdraw the full amount from the service because the custodial service required a fee budget of 1%. This resulted in leftover amounts that repeated on the residual amount. To address this specific issue, a proposal called 'option_recipient_pays_routing_fees' was introduced. This proposal suggests adding a new flag in invoices to signal that the recipient is willing to pay for routing fees by releasing the preimage, even if the full amount has not been received in HTLCs. The workflow for this proposal involves creating an invoice with the flag and constructing the onion in a way that the first HTLC is for the full amount, while subsequent HTLCs decrease in value to ensure proper compensation for routing nodes. The recipient would release the preimage only if the missing sats are within a certain percentage. Additionally, it was suggested that trampoline routes could potentially solve this issue as well, where the receiver provides an encrypted route from a node to itself and deducts the fees from its received funds.The discussion also raised concerns about whether these proposed solutions can be enforced by custodial service providers. There is a possibility that they may refuse to implement them or even engage in theft if they are already custodial. It was noted that trampoline routes offer more control to the receiver, as they can specifically select the route. However, in the case of custodial services, the receiver cannot audit the route and determine the true fees. These concerns highlight the challenges in implementing and ensuring the effectiveness of such solutions when dealing with custodial services.In summary, a Lightning developer has proposed a solution called 'option_recipient_pays_routing_fees' to address the issue of users having leftover funds when withdrawing from custodial wallets. This proposal involves creating an invoice with a flag indicating that the recipient is willing to pay for routing fees by releasing the preimage, even if the full amount has not been received. Another potential solution is trampoline routes, where the receiver deducts the fees from its received funds. However, there are concerns about the implementation and enforcement of these solutions by custodial service providers. Additionally, educating users about the different invoice types may be a challenge, and input from the Bitcoin Design community could be valuable.
Updated on: 2023-08-01T00:40:20.033992+00:00