BIP 174: require creator to initialize empty output fields #988

pull dr-orlovsky wants to merge 2 commits into bitcoin:master from dr-orlovsky:patch-1 changing 1 files +1 −1
  1. dr-orlovsky commented at 11:07 AM on September 7, 2020: contributor

    The current version of the spec requires creator role to initialize empty input fields, but says nothing about output field initialization. At the same time, the following role, updater, "should also add redeemScripts, witnessScripts, and BIP 32 derivation paths to the input and output data if it knows them.", which does not make any sense if the fields were uninitialized. The current Bitcoin Core implementation does this, and other PSBT implementations, like rust-bitcoin, follow this practice

  2. Require creator to initialize empty output fields
    The current version of the spec requires creator role to initialize empty input fields, but says nothing about output field initialization. At the same time, the following role, updater, "should also add redeemScripts, witnessScripts, and BIP 32 derivation paths to the input and output data if it knows them.", which does not make any sense if the fields were uninitialized. The [current Bitcoin Core implementation does this](https://github.com/bitcoin/bitcoin/blob/a24806c25d7a81a9c436de58eb5778d93abab16b/src/psbt.cpp#L12), and [other PSBT implementations, like rust-bitcoin, follow this practice](https://github.com/rust-bitcoin/rust-bitcoin/blob/master/src/util/psbt/mod.rs#L59)
    3d297861eb
  3. dr-orlovsky renamed this:
    Require creator to initialize empty output fields
    BIP 174: require creator to initialize empty output fields
    on Sep 7, 2020
  4. BIP 174: removing extra "fields" word d509aa2110
  5. in bip-0174.mediawiki:360 in 3d297861eb outdated
     356 | @@ -357,7 +357,7 @@ Using the transaction format involves many different responsibilities. Multiple
     357 |  ===Creator===
     358 |  
     359 |  The Creator creates a new PSBT. It must create an unsigned transaction and place it in the PSBT.
     360 | -The Creator must create empty input fields.
     361 | +The Creator must create empty input and output fields fields.
    


    achow101 commented at 4:17 PM on September 7, 2020:

    Extra fields

  6. dr-orlovsky cross-referenced this on Sep 10, 2020 from issue [epic] PSBT and related BIP 32 refactoring tracking issue by dr-orlovsky
  7. luke-jr added the label Proposed BIP modification on Oct 5, 2020
  8. luke-jr commented at 4:16 PM on October 5, 2020: member
  9. achow101 commented at 4:24 PM on October 5, 2020: member

    ACK d509aa2110cf46a697356f7a83c7356e7f5b2650

  10. dr-orlovsky commented at 6:29 PM on January 30, 2021: contributor

    Who else is required to review this PR in order to get it merged?

  11. luke-jr merged this on Feb 3, 2021
  12. luke-jr closed this on Feb 3, 2021


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bips. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-14 11:10 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me