[Banco] offers a non-custodial solution for traders
It does not. Liquid has custody of the money.
Existing alternatives often rely on co-signing schemes, necessitating participants to be online and accessible over the public internet, which compromises the privacy and user experience of trading participants.
I think I can restate this problem: "your app will not be popular if it requires interactivity, because users hate waiting for someone else to act." Their solution to this problem is basically "let Liquid have custody of your money, they'll handle it -- and don't worry, it's close enough to self-custodial. You may not have your money but someone else does and that's good enough."
I personally prefer a self-custody solution even when it means I have to get online several times to see if my counterparty acted yet. Also, I think it is possible to mostly resolve this by showing users a dialog such as this:
If you use our web or mobile interface, it will work just fine, but you'll have to come to the site 2 different times, a maximum of 3 days apart, once to set up the swap and a second time to cosign your counterparty's transaction. If you use our desktop app or click this button to deploy it on AWS ($2 fee), you get a one-click solution, because the app will stay online, cosign as soon as your counterparty is ready, and then alert you that your trade is done. (If you deploy it on your desktop, make sure you desktop stays on for the full 3 days or until the trade is done, whichever comes first.)
That gives the users freedom to retain custody of their funds and resolves the interactivity issue. The user doesn't have to come back online later if they deploy the desktop app on their own device or, temporarily, on some cloud service for a small fee.
reply
It was meant to be read as "If Bitcoin had full introspection capabilities". You can deploy in production today on Liquid, but it's not and was not the original goal.
The team started working on "let's make non-interactive coinjoins with CTV" to provide a use-case most Bitcoiners are interested in (privacy) but then realized was not practical and then switched to using Elements introspection opcodes mostly because of the tooling available there. (and the team is notoriously expert in using Elements stuff)
I think without seeing a live app in production it's hard to grasp the trade-offs of various covenant proposals.
reply
Oh, then I withdraw my criticism, except: it did seem to me that you advertised this version of the app as self-custodial.
Other than that, great job! Demoing what you can do with covenants is good and important and a wonderful thing to do on Liquid.
I wonder how hard would it be to port it to actual CTV on inquisition
reply
this version of the app as self-custodial
I will try to re-read and try re-phrase, as the goal of the project was really to build something for a "hypothetical" world where we have "Bitcoin + OP_INSPECTOUTPUT*[VALUE|SCRIPT] opcodes". Totally agree with that L-BTC is an IOU so use it cautiously, on the other hand, trading FUSD for USDT seems pretty reasonable to use a federated sidechain.
great job!
Thank you, sir!
hard would it be to port it to actual CTV
I think would be very clunky or even impossible to make it work with CTV only. Maybe APO tho, but the beauty of using an opcode-based covenant is that it requires zero effort to be supported by all wallets out there, no need to make a special signature on non-standard sighash.
The beauty of this is that the taker can add more inputs and outputs to the fulfilled transaction, without having the contract script to pre-commit to all possible permutations. Like adding the BTC input to pay for fees (think of the FUSD-USDT trading pair) or even delegating to a third party that acts as a fee supplier as a service ie. https://liquid-taxi.vulpem.com
reply
For the topic, if you want to dive deeper, I suggest this post from Rusty https://rusty.ozlabs.org/2024/01/08/txhash-tx-stacking.html
reply
deleted by author
reply
👏👏
reply
Interesting!
reply