Subject: Re: [bitcoindev] CTV + CSFS: a letter

From: Jameson Lopp <[email-masked]>
Date: Sat, 14 Jun 2025 16:05:57 -0400

On Sat, Jun 14, 2025 at 11:58 AM Sjors Provoost <[email-masked]> wrote:

> Hi Jameson,
>
> CTV does enable vaults, but the user has to (carefully) move coins into
> the vault themselves. Because CTV commits to the amount, among other
> things, you can't simply publish a vault address and receive arbitrary
> amounts there. They'd be stuck, committing to an impossible to satisfy CTV
> hash.
>

Understood. OP_CCV enables more flexible / user friendly vaults. Sounds
good to me!

I'll just reiterate my previous point that custody software services would
rather have a "good" tool in the hand than a better solution waiting on the
distant horizon.

> There's also the question of what, if anything, the user needs to backup
> after each deposit [0]. It's probably just the deposit transaction id,
> which is arguably something that can be recovered with some (?) work.
>
> OP_CCV enables a more flexible design where the user can receive arbitrary
> amounts directly into their vault address, and with nothing to backup after
> initial setup (seeds + descriptor-like-thing).
>
> Here's a demo functional test for an OP_CCV vault (without CTV):
> https://github.com/bitcoin/bitcoin/pull/32080
>
> The problem with both demos is that they use boutique software. There's
> not yet a potentially interoperable standard to describe these things.
>
> Hopefully some simple vault schemes can be shoehorned into the existing
> output descriptor paradigm [1], because inventing a whole new way of making
> vault-aware wallets interoperable would take many years.
>
> To illustrate such schemes, I'd love to see a working demo using just a
> (patched) Bitcoin Core wallet. Though perhaps a library like BDK[2] is an
> easier platform for such ideation.
>
> - Sjors
>
> [0] https://github.com/jamesob/simple-ctv-vault/issues/9
> [1] https://delvingbitcoin.org/t/ctv-vault-output-descriptor/1766/8
> [2] https://github.com/bitcoindevkit
>
> > Op 13 jun 2025, om 17:41 heeft Jameson Lopp <[email-masked]>
> het volgende geschreven:
> >
> [...]
> >
> > I'm not sure how to parse Antoine's claim that CTV+CSFS doesn't enable
> vaults given that there has already been a CTV vault client proof of
> concept for 3 years: https://github.com/jamesob/simple-ctv-vault
> >
> > On Fri, Jun 13, 2025 at 9:07 AM Antoine Poinsot <[email-masked]>
> wrote:
>
>
> [...]
>
> > That said, consensus-enforced vaults require a mechanism to forward any
> amount received on a script A to a pre-committed script B. CTV+CSFS does
> not enable this, and a primitive that actually does (like CCV) is more
> controversial because of its potency.
>
> [...]
>
> > I also appreciate that CTV is nice to have for CCV vaults, but a
> potential future use case that is not enabled by one proposal cannot be
> used to motivate said proposal.
> >
>
>

-- 
You received this message because you are subscribed to the Google Groups "Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email-masked].
To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/CADL_X_fUCR%3D2O0MUHXBA98oV4%2BwcJ-qYYrrRjB7h7YER-JKsGA%40mail.gmail.com.