Distributed PSBT construction#6
Conversation
69fb1a0 to
8cd79f9
Compare
|
I think it's sufficient to define it could still be encoded as a bitfield where both bits 0 and 1 have to be set, for forward compatibility, allowing some refinement in the future if a use case arises that requires fixing the order of the inputs or the outputs (so potentially all combinations of note that this is specific to more than two parties, in the two party setting SIGHASH_SINGLE or some other reason can impose specific ordering requirements, but BIP 370 Constructor is already appropriate for such use cases. in a multiparty atomic swap/net-settlement transaction involving something like ordinals, my understanding is they are typically managed using dust UTXOs. this can be managed in a hybrid setup: use BIP 370 for those coins in one PSBT, concurrent constructor for the exchange part, and then fix the order of that and concatenate the two transactions with the existing i'm still of the opinion that ordinals are basically an anti fungibility psyop and a zero sum game with externalities, so i don't want to take part in encouraging that, because this can be easily composed i think that's a solid argument for why that should be out of scope and not mentioned in the doc at all |
954bb08 to
5b8883c
Compare
9beaa5b to
d034801
Compare
rough draft of a BIP discussing when and how PSBTs merging is a join semi-lattice
this is the basis of state machines of the honest (#4), semi honest and BFT variants of multiparty transaction construction, and ensures these protocols do not depend on all peers observing a consistent ordering of protocol messages which simplifies coordination
TODO:
PSBT_GLOBAL_TX_UNORDEREDas an indicator that the order is random vs.PSBT_GLOBAL_UNORDERED_{INPUT,OUTPUT}with keydata and the input map serialized in the valuePSBT_GLOBAL_TX_UNORDEREDmarker and backwards compatible input/output maps:joinpsbtsbehavior