BIP 0370: Signer to determine locktime #1222
pull kallerosenbaum wants to merge 1 commits into bitcoin:master from kallerosenbaum:bip370locktime changing 1 files +3 −1-
kallerosenbaum commented at 8:04 pm on October 27, 2021: contributorSince the signer has to determine the locktime before signing, the extractor shouldn’t have to redo that work. This PR suggests that the signer updates the PSBT_GLOBAL_FALLBACK_LOCKTIME, and that the extractor later uses this value.
-
BIP 0370: Signer to determine locktime aa2965cf55
-
luke-jr added the label Proposed BIP modification on Nov 4, 2021
-
achow101 commented at 6:49 pm on December 7, 2021: memberI think it would be better for finalizers to do that rather than signers.
-
kallerosenbaum commented at 7:19 pm on December 7, 2021: contributor@achow101 why finalizer? The reason for my suggestion is to avoid duplicate work. Since the signer has to do the work of figuring out the actual locktime, it seems reasonable that the signer also updates the psbt with the result of that work.
-
bitcoin deleted a comment on Dec 8, 2021
-
achow101 commented at 8:51 pm on December 9, 2021: member
On further thought, I don’t think this is actually feasible as simple combiners would be unable to determine which field to use. Putting the incorrect locktime will result in the transaction becoming invalid.
Consider the following: a Creator has created a PSBT with a fallback locktime. Subsequent Constructors have added their own inputs, some with required height/time locks. The computed locktime will be different from the fallback locktime, and it may be greater or less than it. The fully created PSBT is transmitted to all of the signers. After the signers sign, the signed PSBTs are combined with the original unsigned PSBT. However a simple combiner would be unable to combine this as there would be two different values for the fallback locktime field.
It is important to note that the combiner role is intentionally designed to be dumb. Combiners do not need to know about what is actually going on in the PSBT they are combining. Combiners do not need to understand any of the fields in the PSBTs they are combining. If you give the completely unsigned PSBT and the fully signed PSBT to a combiner, it must end up creating the fully signed PSBT and be able to do so without understanding any of the data in the PSBT itself. So this proposal would violate that rule as combiners would now need to understand the locktime fields in order to combine unsigned and signed PSBTs correctly.
-
kallerosenbaum commented at 11:59 am on December 10, 2021: contributorValid and good point. Thanks for taking the time to explain. Let’s close this PR, ok?
-
luke-jr closed this on Jan 15, 2022
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: 2024-12-21 17:10 UTC
More mirrored repositories can be found on mirror.b10c.me