Questions tagged [bip174-psbt]

Use this tag for questions related to BIP 174 - Partially Signed Bitcoin Transactions (PSBT).

Filter by
Sorted by
Tagged with
0 votes
0 answers
15 views

Some way to PSBT multisig ordinal send using raw transaction from CLI?

Is there some way to use createrawtransaction command on bitcoin-cli to send an specific satoshi, which has inside the NFT? I would like to transfer it handly using cli commands, instead wallets or ...
  • 101
1 vote
1 answer
27 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 ...
  • 13
0 votes
0 answers
52 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 ...
2 votes
1 answer
28 views

What is the purpose of BIP32 derivation paths in PSBT?

Does the wallet software use the Bip32 derivation paths to generate the partial signature map?
3 votes
1 answer
52 views

How to resolve error when trying to sign and broadcast PSBT transaction via electrum - (Witness program hash mismatch code -26)?

I'm trying to generate a 2-of-2 multisig transaction as a PSBT so that both parties can easily sign their transaction. I'm doing this all on btc testnet as a p2sh p2wsh transaction When initially ...
2 votes
0 answers
28 views

Create transaction with inputs of two different HD wallets

Is it possible to create one Bitcoin transaction with input UTXOs of two different HD-Wallets? E.g. using an UTXO of a Software Wallet and one UTXO of an Hardware Wallet. Of course I think it is ...
  • 153
1 vote
0 answers
13 views

Message signing with airgapped wallet that doesn't support it

I need to implement message signing for various HWs, many of them support it on a firmware level, but some airgapped wallets like SeedSigner or Jade still don't. I was wondering if there's a way to ...
2 votes
1 answer
156 views

Signing PSBTs to spend from Taproot multisig address

I created a 2-of-3 multisig taproot address by following the steps outlined by Pieter Wuille in this post using importdescriptorsand deriveaddresses. His steps worked perfectly, and I was able to ...
0 votes
1 answer
33 views

TX decode failed Separator is missing at the end of an output map: iostream error

import requests url = "http://127.0.0.1:18332/wallet/w3" headers = { 'Authorization': 'Basic dXNlcjpwYXNz', 'Content-Type': 'text/plain' } def combinetx(): payload = "{\&...
0 votes
1 answer
103 views

testnet output address has no matching Script?

Here is my code to create a PSBT on the testnet: const bitcoin = require("bitcoinjs-lib") const privKey1 = "..." const address1 = "mkVPHMR5euGTcvpFj6tfyVERstDdH4RtQs" ...
1 vote
1 answer
57 views

Can a transaction be dependent on another in the same block?

Say I'm creating a multi-sig wallet with a friend to bet on the election. Can my deposit to the multi-sig wallet be dependent on the my friends deposit to the wallet? Say I'm Alice, and my friend is ...
4 votes
1 answer
213 views

Which wallets or libraries besides core support (or will support) P2TR descriptors?

I want to help test the WIP Bitcoin Dev Kit "Add support for Taproot and tr() descriptors", PR #593 against other implementations besides Bitcoin Core (already testing again Core 22.0). In ...
3 votes
1 answer
212 views

Taproot signing with PSBT: How to determine signing method?

As far as I can tell there are three ways you can produce a valid Schnorr signature in a Taproot environment: For a p2tr output that uses a BIP-0086 commitment (key spend, sign with internal key, ...
  • 228
1 vote
1 answer
117 views

Is it possible to broadcast psbt in bitcoin core?

Is it possible to broadcast psbt in bitcoin core without converting to raw transaction?
2 votes
1 answer
105 views

Why is Electrum able to generate .psbt from the address only but BitcoinCore requires a Public Key/Descriptor?

When generating a .psbt it suffices to merely import the address (hashed Public Key) in Electrum while in BitcoinCore (for the same address) I also would have to import either a corresponding Public ...
  • 152
1 vote
1 answer
177 views

Create a .psbt using the BitcoinCore client

I am trying to create a .psbt using BitcoinCore on mainnet. The use-case is that I want to be able to export the unsigned transaction, import it into my cold-storage wallet (using BitcoinCore) and ...
  • 152
1 vote
1 answer
90 views

Handling 'Has SIGHASH_SINGLE' flag for psbt2 (BIP370)

BIP370 specifies a bit flag (bit 2) in PSBT_GLOBAL_TX_MODIFIABLE field, that "indicates whether the transaction has a SIGHASH_SINGLE signature who's input and output pairing must be preserved&...
1 vote
1 answer
47 views

How would a PSBT signer identify a non-bip32 key?

In a PSBT, version 0 or 2, how would a signer know what keypair to use for an input or an output if the keypair isn't derived through bip32? For inputs, assuming p2wpkh for simplicity, I suppose one ...
2 votes
0 answers
101 views

Add inputs and outputs to a transaction signed with sighash SINGLE | ANYONECANPAY

I created a transaction with one input and one output, and signed it using sighash SINGLE | ANYONECANPAY. Can I add further inputs and outputs with another wallet using bitcoin-cli?
1 vote
0 answers
385 views

Sign psbt with software wallet. [electrum & others]

So I've been looking for days to sign a PSBT transaction but upon to all my research i failed or i just haven't searched in the right place. The PSBT content is generated from a payment gateway that I'...
  • 11
3 votes
0 answers
50 views

What are the malleability threat vectors when passing PSBTs to other actors?

If I am passing a PSBT (Partially Signed Bitcoin Transaction) between multiple people, and I pass on my signature for my UTXOs for given inputs, can someone take advantage of malleability and cheat me ...
  • 1,598
4 votes
0 answers
97 views

Sign lightning channel creation PSBT with Golang

I'm trying to open a channel on regtest with LND v0.13.0-beta.rc3 using their PSBT workflow to allow for remote signing. I've done the following steps: I create a regtest wallet using the BIP39 ...
0 votes
1 answer
142 views

Bitcoin core trying to sign a transaction loaded from psbt file, but getting "could not sign any more inputs" error

I am trying to sign a transaction loaded from psbt file, but I'm getting could not sign any more inputs error. I did it successfully on the first try. However I cannot do it any more now. I changed my ...
  • 227
0 votes
0 answers
66 views

RPC to sign PSBT with private key

What is the PSBT related RPC which works similar to signrawtransactionwithkey ?
user avatar
7 votes
1 answer
1k views

What does PSBT stand for?

What is PSBT? What does it stand for? bitcoin-qt has menu items "Load PSBT from file…" and "Load PSBT from clipboard…"; the dialog box says the file format is "Partially ...
  • 4,469
1 vote
1 answer
138 views

Sign PSBT for 2 of 3 multisig

Creating an unsigned PSBT: { "jsonrpc": "1.0", "id": "curltest", "method": "walletcreatefundedpsbt", "params": [ [ { "txid": "...
1 vote
1 answer
311 views

WitnessScript vs. Script Witness

In BIP 174/PSBT, there is a PSBT Input key-value pair called "PSBT_IN_WITNESS_SCRIPT" (0x05) and another called "PSBT_IN_FINAL_SCRIPTWITNESS" (0x08). What is the difference between ...
2 votes
1 answer
803 views

How to convert PSBT transaction (base64) to raw/serialized (hex) transaction?

Bitcoin Core's CLI has a converttopsbt command used to convert from raw transaction to PSBT transaction but how is it possible to convert from PSBT transaction to raw transaction using Bitcoin Core (...
  • 23
6 votes
1 answer
966 views

What is the difference between PSBT support in Coldcard and Trezor?

The 10x Security Bitcoin Guide says that the only two hardware wallets support BIP174 (partially signed Bitcoin transactions, or PSBT). However, this Reddit thread says that "You can use PSBT ...
0 votes
1 answer
495 views

Can we sign a psbt raw tx having multiple inputs created from BTC node with bitcoinjs lib?

Due to secruity reasons, unavailablity of private keys on my end and as per project requirements I need to build back end apis where I will provide a PSBT raw transaction hex (having multiple inputs) ...
1 vote
1 answer
68 views

PSBT encoding : what's the aim of convertBytes function?

I'm currently working on PSBT and I try to understand all the part of the original implementation. Dealing with base64 PSBT encoding: it seems that we convert the buffer from a base 8 to a base 6 ...
1 vote
0 answers
106 views

How can I use PSBT in a JavaScript project?

I am trying to use PSBT in a Bitcoin project. The idea is to generate keys and sign transactions client-side. I am already familiar with bitcoinjs-lib but I find the API rather complicated. It would ...
1 vote
1 answer
1k views

Create unsigned tx (PSBT) in a watch-only wallet using bitcoin core, sign it in electrum and broadcast using bitcoin core

What are the steps that we can follow to create an unsigned tx for watch-only cold storage address using bitcoin core? How can we sign the transaction and broadcast it later?
user avatar
1 vote
2 answers
808 views

How to create unsigned tx in a watch-only wallet?

UPDATE: The issue is resolved and I have mentioned the steps in Create unsigned tx (PSBT) in a watch-only wallet using bitcoin core, sign it in electrum and broadcast using bitcoin core Below are the ...
user avatar
2 votes
2 answers
243 views

Problem making multisig PSBT on walletcreatefundedpsbt

I'm fighting with PSBT to do a 2: 2 multisig with bitcoin-cli on testnet. Those are the steps I follow: Create a multisig with bitcoin-cli createmultisig 2 "["pubkey1", "pubkey2&...
  • 31
2 votes
1 answer
179 views

Why isn't my PSBT considered complete after walletprocesspsbt and finalizepsbt?

I created a transaction using createrawtransaction spending a UTXO that I own the keys to and then converted it to PSBT using converttopsbt, then I used walletprocesspsbt and finalizepsbt. After ...
0 votes
1 answer
52 views

Why does BIP174 take Xpubs but no addresses?

I have a few questions on BIP 174: XPUBs: I am looking at BIP174, and I see that I can define a global XPub. How is this used. How does an updater, signer, or finalizer know what this XPub is for? ...
6 votes
1 answer
212 views

Segwit & Offline Signing

Yesterday Trezor released details of a segwit-related hardware wallet vulnerability. The writeup claims that providing full previous transactions to the hardware wallet prevents the exploit. My ...
1 vote
1 answer
743 views

How to sign a PSBT transaction?

I have a PSBT (in Base64 format) which I need to sign using GoLang, but I can't figure out which steps I need to do that. I found this but I'm not really confident with Bitcoin and Python, so I didn't ...
2 votes
1 answer
270 views

Why did the core developers choose base64 for PSBT encoding?

Why does bitcoind use baase64 to encode PSBT's? Just out of curiosity.
  • 476
0 votes
0 answers
47 views

Fund single output in PSBT with bitcoind

I would like to create a PSBT with a single output (P2WSH with a given/predefined amount) in an app and give that to the user. The user should then be able to fund this PSBT with the help of bitcoind ...
  • 228
1 vote
0 answers
92 views

PSBT signing safety checks

I'm working on a multisignature cold storage wallet that adds several features to the Glacier Protocol wallet, namely PSBT support through bitcoin-cli's RPC interface. The wallet intentionally uses a ...
3 votes
1 answer
122 views

How to properly combine PSBTs for CoinJoin?

I am trying to learn the workflow for manual Coinjoins using PSBTs. I was following Andy Chow's suggestions in another thread here Where he suggests: 1. Createpsbt (he suggests using ...
2 votes
1 answer
329 views

Why was the bip32 fingerprint used for bip174 psbt?

The fingerprint is widely used across the bip174 psbt specification. This is done to speedup parsing for a signer such that he can observe whether the master fingerprint for the public key for that ...
3 votes
3 answers
2k views

How do you switch your bitcoinjs integrationfrom TransactionBuilder to transactions-psbt.js?

the code below works: const btc = require('bitcoinjs-lib'); var tx = new btc.TransactionBuilder(net); inputs.forEach(o => tx.addInput(o.txId, o.vout)); outputs.forEach(o => tx.addOutput(o....
  • 167
3 votes
1 answer
288 views

How do I calculate transaction fee for call to createpsbt()?

When my user invokes my app, he passes as an input parameter the desired value of the TX fee in satoshis per byte. I create a PSBT by calling createpsbt(). I exert complete control over the ...
  • 125
1 vote
1 answer
710 views

Is it possible to use Electrum to create a multisig wallet with a trezor and an airgapped coldcard?

I set up a 2-of-3 multisig using Electrum, a Trezor, and a Coldcard. During testing, I ran into issues using the Coldcard to sign. My approach: (On Electrum) File -> New/Restore -> Multi-signature ...
  • 185
3 votes
0 answers
295 views

Is it possible to use Bitcoin-core for multisig? Can it handle change addresses?

I have tried to import three xpub in a watch-only wallet as keypool with importmulti and a multisig output descriptor and to fill the first address with some BTCs. When I try to spend the newly ...
1 vote
1 answer
937 views

Cannot sign txn with change address using bitcoinjs-lib psbt

I am having a difficult time figuring out how to sign a spend from a change address. I get Error: cannot sign for this input with the key <value>. The initial transaction works fine, where I ...
  • 143
0 votes
0 answers
134 views

How could PSBT deal with data capacity limit of QR code?

QR code has very limited data capacity. (According to Wikipedia) one single QR code can only carry <3KB of binary data. It's not rare for a PSBT to hit this 3KB limit, especially for ones which ...