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 Key or Descriptor. Is there a reason why BitcoinCore requires these additional inputs and Electrum does not?

1 Answer 1


Bitcoin Core requires the additional data so that it can estimate the size of the final transaction when it is choosing which inputs to spend. It is probable that Electrum makes assumptions about the size because it is standard, however Bitcoin Core does not do that. Instead it will make a fake scriptSig/witness to determine the size of the input, and doing that requires knowing public keys and other information provided in descriptors.

  • Does it need to know the size due to fee calculation? Or is there another reason I am unaware of? I would like to use BitcoinCore exclusively while avoiding to expose the public key in a hot wallet (so that its also protected by hashing). Is importing a descriptor safer than importing a public key?
    – David
    Commented Feb 17, 2022 at 7:14
  • 2
    Descriptors will have the public keys.
    – user103136
    Commented Feb 17, 2022 at 10:37
  • 1
    It needs to know the size in order to perform the fee calculation.
    – Ava Chow
    Commented Feb 17, 2022 at 16:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.