Rusty Russell [ARCHIVE] on Nostr: 📅 Original date posted:2021-01-06 📝 Original message:Hi Andrew et al, Very ...
📅 Original date posted:2021-01-06
📝 Original message:Hi Andrew et al,
Very excited to see this progress; thanks for doing all the
work! Sorry for the delayed feedback, I didn't get to this before the
break.
> Additionally, I would like to add a new global field:
> * PSBT_GLOBAL_UNDER_CONSTRUCTION = 0x05
> * Key: empty
> * Value: A single byte as a boolean. 0 for False, 1 for True. All
> other values ore prohibited. Must be omitted for PSBTv0, may be omitted
> in PSBTv2.
>
> PSBT_GLOBAL_UNDER_CONSTRUCTION is used to signal whether inputs and
> outputs can be added to the PSBT. This flag may be set to True when
> inputs and outputs are being updated, signed, and finalized. However
> care must be taken when there are existing signatures. If this field is
> omitted or set to False, no further inputs and outputs may be added to
> the PSBT.
I wonder if this can be flagged simply by omitting the (AFAICT
redundant) PSBT_GLOBAL_INPUT_COUNT and PSBT_GLOBAL_OUTPUT_COUNT? What
are the purposes of those fields?
For our uses, there would be no signatures at this stage; it's simply a
subdivision of the Creator role. This role would be terminated by
removing the under-construction marker. For this, it could be clear
that such an under-construction PSBT SHOULD NOT be signed.
Otherwise, if an explicit marker is required, I would omit the value and
simply use its existence to as a flag. Having two "false" values is
simply asking for trouble.
Thanks!
Rusty.
PS. Perhaps we should change the name to PBT (Partial Bitcoin
Transaction) now, since it's more than just signing...
📝 Original message:Hi Andrew et al,
Very excited to see this progress; thanks for doing all the
work! Sorry for the delayed feedback, I didn't get to this before the
break.
> Additionally, I would like to add a new global field:
> * PSBT_GLOBAL_UNDER_CONSTRUCTION = 0x05
> * Key: empty
> * Value: A single byte as a boolean. 0 for False, 1 for True. All
> other values ore prohibited. Must be omitted for PSBTv0, may be omitted
> in PSBTv2.
>
> PSBT_GLOBAL_UNDER_CONSTRUCTION is used to signal whether inputs and
> outputs can be added to the PSBT. This flag may be set to True when
> inputs and outputs are being updated, signed, and finalized. However
> care must be taken when there are existing signatures. If this field is
> omitted or set to False, no further inputs and outputs may be added to
> the PSBT.
I wonder if this can be flagged simply by omitting the (AFAICT
redundant) PSBT_GLOBAL_INPUT_COUNT and PSBT_GLOBAL_OUTPUT_COUNT? What
are the purposes of those fields?
For our uses, there would be no signatures at this stage; it's simply a
subdivision of the Creator role. This role would be terminated by
removing the under-construction marker. For this, it could be clear
that such an under-construction PSBT SHOULD NOT be signed.
Otherwise, if an explicit marker is required, I would omit the value and
simply use its existence to as a flag. Having two "false" values is
simply asking for trouble.
Thanks!
Rusty.
PS. Perhaps we should change the name to PBT (Partial Bitcoin
Transaction) now, since it's more than just signing...