Andrew Chow [ARCHIVE] on Nostr: 📅 Original date posted:2021-01-06 📝 Original message:Hi Rusty, On 1/6/21 6:26 ...
📅 Original date posted:2021-01-06
📝 Original message:Hi Rusty,
On 1/6/21 6:26 PM, Rusty Russell wrote:
> 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?
The purpose of those fields is to know how many input and output maps
there are. Without PSBT_GLOBAL_UNSIGNED_TX, there is no way to determine
whether a map is an input map or an output map. So the counts are there
to allow that.
> 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.
There are some protocols where signed inputs are added to transactions.
> 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.
Seems reasonable.
Andrew
> 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 Rusty,
On 1/6/21 6:26 PM, Rusty Russell wrote:
> 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?
The purpose of those fields is to know how many input and output maps
there are. Without PSBT_GLOBAL_UNSIGNED_TX, there is no way to determine
whether a map is an input map or an output map. So the counts are there
to allow that.
> 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.
There are some protocols where signed inputs are added to transactions.
> 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.
Seems reasonable.
Andrew
> Thanks!
> Rusty.
> PS. Perhaps we should change the name to PBT (Partial Bitcoin
> Transaction) now, since it's more than just signing...