/
joshPosted by josh
Jul 10, 2025/20:13 UTC
The discussion highlights several technical challenges associated with committing only to the output side in transaction protocols, specifically mentioning issues like the half-spend problem and malleation concerns. It suggests an alternative approach to address these issues by modifying the CheckTemplateVerify (CTV) mechanism to include commitments to sibling previous outputs (prevouts). This solution proposes a method to mitigate the problems of pinning, half-spending, and malleability by ensuring that each transaction input commits to the prevouts of its siblings, excluding itself.
However, this method could potentially lead to quadratic hashing, a computational inefficiency that grows exponentially with the number of inputs. To circumvent this, the proposal recommends utilizing MuHash, a hashing scheme that can process transactions linearly rather than quadratically by pre-processing inputs. By hashing each input's prevout along with an index using SHA256 within the MuHash framework, it becomes possible to maintain linear complexity. This is particularly feasible given that MuHash has already been implemented in Bitcoin Core for the assumeUTXO
feature, suggesting that incorporating this change might not be overly burdensome for developers.
The suggested modification not only aims to enhance the security and integrity of transactions by addressing prevalent vulnerabilities but also strives to do so in a computationally efficient manner. Such improvements could significantly bolster the robustness of transaction handling mechanisms against various forms of exploitation and errors, making the system more reliable and trustworthy for users.
TLDR
We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.
We'd love to hear your feedback on this project?
Give Feedback