Coder Social home page Coder Social logo

PSBT creation and funding about bwt HOT 3 OPEN

bwt-dev avatar bwt-dev commented on June 19, 2024
PSBT creation and funding

from bwt.

Comments (3)

justinmoon avatar justinmoon commented on June 19, 2024 1

that would mean using all the utxos available in the wallet without being able to restrict them to specific ones

Bitcoin Core wouldn't be able to do automated coin selection on a subset of outputs in one watch-only wallet, but the first argument to walletcreatefundedpsbt allows caller to specify inputs themselves.

$ bitcoin-cli help walletcreatefundedpsbt
...
Arguments
1. inputs                             (json array, required) A json array of json objects
     [
       {                              (json object)
         "txid": "hex",               (string, required) The transaction id
         "vout": n,                   (numeric, required) The output number
         "sequence": n,               (numeric, required) The sequence number
       },
       ...
     ]
...

But you could support automated coin selection for individual bwt wallets if each pair of internal/external bwt wallets corresponded to one Bitcoin Core watch-only wallet.

from bwt.

shesek avatar shesek commented on June 19, 2024

Pretty straightforward if it just delegated to bitcoind's walletcreatefundedpsbt, but that would mean using all the utxos available in the wallet without being able to restrict them to specific ones. Might be acceptable if the user sets up bwt to use a separate bitcoind wallet. Also see #3.

from bwt.

shesek avatar shesek commented on June 19, 2024

the first argument to walletcreatefundedpsbt allows caller to specify inputs themselves.

Yes, I meant that in the context of the fund part. If bwt implemented coin selection on its own, it could use bitcoind to create the PSBT with a given set of inputs.

But you could support automated coin selection for individual bwt wallets if each pair of internal/external bwt wallets corresponded to one Bitcoin Core watch-only wallet.

This is something that I considered. A simpler but not as convenient way to achieve this is separate bwt instances, each configured to use a different bitcoind wallet.

But I'm not sure if bwt should rely on having a potentially large number of bitcoind wallets, its not really well suited if you have, say, hundreds or thousands of them (for example, if you track a separate xpub for every user's deposits). I think that it might be better to implement independent coin selection in bwt, which would also allow finer-grained selection like filtering by specific addresses.

from bwt.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.