Skip to main content

Questions tagged [bip174-psbt]

Bitcoin Improvement Proposal 174 concerns Partially Signed Bitcoin Transactions (PSBT).

Filter by
Sorted by
Tagged with
1 vote
0 answers
24 views

What is causing this Data Error from Trezor?

I'm experimenting with output descriptors and multi-sig wallets and I came across a problem providing the last signature to my 2-of-3 psbt. Data Error: Input does not match scriptPubKey. I'm ...
Myles Sherman's user avatar
1 vote
1 answer
44 views

Can a transaction that has been signed and broadcast to the mempool be intercepted if it uses the sighash NONE|ANYONECANPAY?

Example: Alice creates a PSBT and signs her input using the SIGHASH_NONE | SIGHASH_ANYONECANPAY flag. She then passes this transaction to Bob. Bob adds his own input and output and signs them with the ...
Tang's user avatar
  • 13
1 vote
2 answers
49 views

Testnet vs Mainnet PSBTs

Is there a difference between test net and main net PSBTs? Or, if I cover all edge cases for test vectors I created on main net in my unit testing, is that sufficient?
Myles Sherman's user avatar
0 votes
0 answers
50 views

Getting error for transferring BTC using node js code, getting error "No inputs were signed"

I am creating a system where users will raise a request to transfer them some BTC, in my code i am using all the previous utxos of my wallet to transfer BTC, even i am signing all the utxos still i am ...
Arun Lohia's user avatar
1 vote
1 answer
34 views

How do you finalize a PSBT when the last signature is provided by a HWW?

Most device APIs for HWI have a method sign_tx(tx: PSBT) that has a return type of PSBT. If the hardware device I'm interacting with provides the final signature necessary, how do I, from the output ...
Myles Sherman's user avatar
1 vote
0 answers
23 views

Trust PSBT Coldcard

I sent a psbt through HWI to my coldcard for signing (it is a multisig tx created with one of the keys in the CC at m/48h/0h/0h/2h) and I am getting the error: HWI.hwilib.errors.BadArgumentError: ...
Myles Sherman's user avatar
2 votes
1 answer
40 views

Need Coldcard CLI doc clarification

I'm looking at the documentation for the Coldcard CLI and I'm a little confused as to what specifically the -p, --path TEXT command does. In the documentation, it says the following: % ckcc msg --...
Myles Sherman's user avatar
1 vote
0 answers
26 views

Trying to find Elegant solution to PSBT Multi-sig Signing

I am trying to sign an incoming PSBT in custom software I'm building and I'm having trouble understanding how the signing process of a PSBT actually works. I have a Trezor where the xPub I used in the ...
Myles Sherman's user avatar
1 vote
1 answer
115 views

How to spend a multisig descriptor wallet transaction with bitcoin-cli?

I am looking for the correct way to spend multisig outputs with descriptor wallet bitcoin-cli. In regtest, I successfully created a funding transaction tx1 with the following outputs: out:0 sh(multi(1,...
Alec Matusis's user avatar
1 vote
2 answers
53 views

Is there a helper method to confirm PSBTs?

Does anyone know of a library/method in Java that I can pass a String into and see if it is a properly formatted PSBT in base64?
Myles Sherman's user avatar
1 vote
1 answer
99 views

How can I set the derivation path for a multisig across BlueWallet, Electrum and Sparrow wallet?

I just exported a PSBT from BlueWallet and now I'm trying to sign it with the final signature in a multisig setup in Electrum or Sparrow wallet however with both, I am unable to do so: From my ...
Myles Sherman's user avatar
0 votes
0 answers
50 views

Error: Cannot sign for this input with the key in BitcoinJS transaction

I'm trying to create and sign a Bitcoin transaction using BitcoinJS on the testnet. However, I'm encountering an error when trying to sign the transaction: Error: Can not sign for this input with the ...
Dobrovolsky Maxim's user avatar
1 vote
1 answer
72 views

Why does walletprocesspsbt finalize the psbt but not return the transaction hex?

I am currently using walletprocesspsbt to optionally finalize a psbt and fill in bip32derivs if not signed already. The psbt is fully signed and finalized but I have to make an additional rpc command ...
Fontaine's user avatar
  • 522
1 vote
1 answer
97 views

How Does the Blockchain Recognize Locked UTXOs in a PSBT if the PSBT Isn't Stored On-Chain?

I'm currently exploring the use of Partially Signed Bitcoin Transactions (PSBTs) and have a question about the locking mechanism of UTXOs during the signing process. I understand that as a first ...
Nerses Asaturyan's user avatar
0 votes
1 answer
37 views

Can a Second Signer Add Data to a Bitcoin PSBT Transaction?

I'm working with Partially Signed Bitcoin Transactions (PSBTs) and have a question about the capabilities of secondary signers in the signing process. I understand that in a multi-signature scenario, ...
Nerses Asaturyan's user avatar
0 votes
1 answer
28 views

Handling UTXOs in Partially Signed Bitcoin Transactions (PSBTs) and Potential Double-Spend Scenario

I'm working with Partially Signed Bitcoin Transactions (PSBTs) and have a question about the behavior of transactions when the same UTXOs are involved in multiple transactions. Suppose I have a ...
Nerses Asaturyan's user avatar
0 votes
1 answer
42 views

Can You Create a Time-Locked PSBT in Bitcoin?

I am exploring the capabilities of Partially Signed Bitcoin Transactions (PSBTs) and am particularly interested in incorporating time locks. Is it possible to create a PSBT that includes a time lock ...
Nerses Asaturyan's user avatar
1 vote
1 answer
64 views

Implementing Conditional Fund Locking in Bitcoin Similar to Ethereum's Smart Contracts

I'm familiar with how Ethereum allows users to lock funds in smart contracts, which can then be released under specific conditions using mechanisms like the Hashed TimeLock Contract (HTLC) protocol. I'...
Nerses Asaturyan's user avatar
0 votes
1 answer
61 views

Handling Multi-Signature Transactions with PSBT in Bitcoin

I'm currently working with Partially Signed Bitcoin Transactions (PSBTs) and trying to understand the best practices for handling transactions that require signatures from multiple parties. ...
Nerses Asaturyan's user avatar
1 vote
1 answer
59 views

Why are bip32_derivs included in psbt outputs?

I do not want to share my output bip32_derivs as it seems to leak unnecessary info to other participants in collaborative transactions. Why are bip32_derivs included in psbt outputs? EDIT: I should ...
Fontaine's user avatar
  • 522
1 vote
1 answer
85 views

Is it possible to combine two PSBTs while retaining the existing signatures?

What if I want to combine two PSBTs: one is signed by Alice’s private key, another one is unsigned. I want to take the input and output from the signed one, and combine them with the unsigned PSBT, ...
Jack Tsia's user avatar
1 vote
0 answers
64 views

how to get vsize before psbt finalized

I am using bitcoinjs-lib to construct a transaction through PSBT, but I am having difficulty obtaining the virtual size (vsize). My process is as follows: Obtain the user's address through the ...
user151983's user avatar
0 votes
0 answers
16 views

how to calclate the fee of a segwit transaction? [duplicate]

I am using bitcoin-js to construct a PSBT transaction. Suppose address A has 10 UTXOs, each containing 0.0001 BTC. Now I want to construct a transaction to send 0.0005 BTC to address B. If I use 5 of ...
user151983's user avatar
2 votes
0 answers
58 views

How to claim funds in a multisig address from a money pool psbt?

Mostly followed this guide on how to create a psbt where multiple users pool money together. Everything is done in regtest. The gist of what I did is as follows: Created 2 different descriptor ...
Psi's user avatar
  • 21
4 votes
1 answer
101 views

Why is my P2WSH OP_IF/NOTIF argument not minimal?

I have created an HTLC with the following Bitcoin script using bitcoinlib-js: const redeemScript = bitcoin.script.compile([ bitcoin.opcodes.OP_IF, bitcoin.opcodes.OP_SHA256, ...
Oscar Chambers's user avatar
6 votes
1 answer
127 views

How can I verify that a PSBT is solvable by a specific descriptor?

As the title suggests I would like to check whether a specific PSBT is associated with a specific descriptor, either manually or using bitcoin-cli or bdk-cli. I'm more concerned about static ...
max's user avatar
  • 265
0 votes
1 answer
91 views

Why does my PSBT's input script not have a pub key?

I have created a PSBT to sign an HTLC using a funded P2WSH, that I wish to sign with my xverse wallet. This is my decoded PSBT which I have created using bitcoin-cli o@OscarPC:~/bitcoin-htlc$ bitcoin-...
Oscar Chambers's user avatar
0 votes
0 answers
38 views

How to sign P2WSH PSBT with sats-connect?

I have created a funded P2WSH script, which is an HTLC. I now want to create a PSBT which will be signed by another wallet to withdraw the funds. The problem is that the PSBT signing is throwing the ...
Oscar Chambers's user avatar
1 vote
0 answers
69 views

I send sats to the Bitcoin Core wallet I created some time ago without knowing what I was doing and now facing issues with withdrawal I am clueless

Some time ago, I set up a Bitcoin core wallet and sent funds to that wallet a few times thinking they'll be safely stored. Well, they are, and probably too safely. I have a hard time getting funds out....
Najn11's user avatar
  • 11
0 votes
0 answers
36 views

Is it possible to prompt another wallet to add to a PSBT and finalize it?

Is there anyway to request a wallet to complete a PSBT? Let's assume I want my client to send a transaction with follow structure: output[0]: OP_RETURN with bytes 636363636363 output[1]: SEGWIT ...
Saburo Ronin's user avatar
1 vote
1 answer
46 views

broadcast ps2wsh transaction failed

Greeting, I hope someone can guide me about what is wrong with my p2wsh transaction hex below ...
ron s's user avatar
  • 13
0 votes
1 answer
202 views

bitcoinjs - mandatory-script-verify-flag-failed (Signature must be zero for failed CHECK(MULTI)SIG operation)

I'm trying to follow the below transaction example by magic eden and extend it to support multiple buyers and seller (in red). However I am having difficulties when I add more than one signature from ...
psbt_trustless_tx's user avatar
2 votes
0 answers
50 views

Why is Bitcoin Core not filling in PSBT_GLOBAL_XPUB field

When creating a Partially Signed Bitcoin Transaction (PSBT) on Bitcoin Core using the walletcreatefundedpsbt, walletprocesspsbt and send* RPCs, as well as the send dialog* in the GUI the ...
Brandon Odiwuor's user avatar
1 vote
1 answer
180 views

How to use BlockCypher's test network with BitcoinJS-lib?

Trying to make a PSBT via BitcoinJS-lib. I'm using BlockCypher's internal testnet (bcy/test) because I have no choice: literally every other testnet faucet I tested was broken. Using BlockCypher's API ...
1owk3y's user avatar
  • 115
1 vote
1 answer
153 views

How can I add more OP_RETURN outputs to a PSBT transaction?

I want to fund a PSBT transaction that I created with Bitcoin rust. It looks like there is no such function to do that as the Creator is the only one that can set the inputs and outputs. There is an ...
David 天宇 Wong's user avatar
1 vote
1 answer
113 views

Why do PSBT and Descriptor enforce providing the BIP32 derivation path from the root?

Let's consider a scenario: I have a master xprv named xprv1, and I derived an xprv named xprv2 at m/99/88h. Now, I want to use xprv2 to create a new multi-sig wallet, intending to use m/99/88h/0/* as ...
solar's user avatar
  • 25
1 vote
1 answer
239 views

non-mandatory-script-verify-flag (Invalid Schnorr signature)

I try to put this into a Psbt: Alice make payment to purchase an amount of BRC-20 from Bob Bob request to inscribe a transfer of BRC-20 by using Burner account Burner inscribe the transfer of BRC-20 ...
LikKee 沥祺 Richie's user avatar
3 votes
2 answers
195 views

Which hardware wallets require importation of PSBT for knowledge of multisig set up?

My understanding of a multi-vendor multisig is that certain wallets require importation of the resultant multisig wallet's PSBT information in order to sign multisig transactions. Coldcard's ...
Runeaway3's user avatar
  • 339
0 votes
0 answers
141 views

Finalize inputs for a merged psbt 'Can not finalize input #0'

I have a scenario: UserA (bc1pmd3tdzucfnpmq2m3d82yzqmht6hp7smfc2g0tze6ywkxn6h258aszxjdn6): wants to sell an inscription. (5d8c42c867f9c09c0a44397ad2c91d73e8ebb7734e75f54f7caba8ea95eba3b6:2) He signs a ...
dumedco's user avatar
0 votes
1 answer
117 views

Enforcing PSBT Signature Rules: Finalizer/Extractor and Deserialization Implementation

Should PSBT finalizers/extractors and deserialization functions enforce the rule that a taproot schnorr signature should only append a SIGHASH_* unless it is SIGHASH_DEFAULT (0), or is it left to the ...
solar's user avatar
  • 25
2 votes
1 answer
231 views

Estimating virtual bytes of a transaction seems circular

I'm sorry if this has been answered before, but I haven't found anyone really bring this up. I am trying to construct a PSBT, which assumes a fixed feerate and a fixed amount to send to some address. ...
Sherwin Li's user avatar
2 votes
1 answer
200 views

Getting Error while trying to decode psbt base64 to json using bitcoinjs/bip174 library

const base64PSBT = 'base_64'; // Decode the base64 PSBT to a Buffer const psbtBuffer = Buffer.from(base64PSBT, 'base64'); // Parse the PSBT const psbt = bip174.Psbt.fromBuffer(psbtBuffer); // ...
soumyadeep.eth's user avatar
2 votes
0 answers
128 views

Bitcoin Core missing public key when generating PSBT transaction

I use Bitcoin Core for offline signing. I created a legacy watch-only wallet, imported a public key using importpubkey, then called rescanblockchain, then generated a psbt transaction text(psbt_tx_txt)...
MonKong's user avatar
  • 53
0 votes
1 answer
109 views

Partially signed bitcoin transactions

Is the psbt data format the only way to exchange information about the Bitcoin transaction or is there another way to do it?
DustInTheSilence's user avatar
1 vote
0 answers
104 views

walletprocesspsbt rpc not signing psbt tx

After extensive regtest testing I've been unable to reproduce this issue. This is a gist to regtest psbt commands that do work. https://gist.github.com/miketwenty1/ecb9acdbca858878f1856b75493fef4c ...
Michael Tidwell's user avatar
4 votes
2 answers
732 views

Need help moving funds from legacy address, Coldcard won't sign psbt

I'm in needs of help moving funds from an legacy address, single sig: I exported my Coldcard's xpub to Bluewallet. Bluewallet derived an address from that xpub onto which I received funds. ...
honeypotGhost's user avatar
0 votes
0 answers
30 views

bitcoin.Psbt doesn't auto-display its method/properties in Visual Studio Code

When instantiating a new Psbt in my Visual Studio Code like below: const psbt = new bitcoin.Psbt() The variable psbt doesn't auto display any of its methods/properties after I add the . right after ...
jiamijiang's user avatar
4 votes
0 answers
102 views

Setting up to create PSBTs using Bitcoin Core from 10 year old non-deterministic wallet

I have an old wallet from 10+ years ago. It was created using an old version of Bitcoin Core before deterministic wallets were a thing. I have it now on an offline computer that has Bitcoin Core 21.0....
Sarlat's user avatar
  • 41
1 vote
1 answer
60 views

PSBT: What string encoding is recommended for identifier field of PSBT_IN_PROPRIETARY key?

Looks like bip174 doesn't specify string encoding (utf8, ascii) for bytes identifier field of PSBT_IN_PROPRIETARY key. Now how a psbt lib can check if the bytes identifier is a a valid string bytes or ...
solar's user avatar
  • 25
0 votes
0 answers
173 views

How to sign SegWit Transaction without using third party libraries (step by step)

I have a PSBT transaction. My code parsed it into its component parts: 3 maps - global input, output. I based on the document 1. I parsed each transaction into separate fields. Found all scripts and ...
Roman Andronov's user avatar