pull down to refresh
294 sats \ 3 replies \ @kristapsk 30 Dec 2023 freebie \ on: TX size: reusing signature/data for several UTXOs/inputs bitcoin
It is not possible. Inputs doesn't have addresses, they contain previous transaction id and output number in that transaction (called "outpoint"), so they differ regardless was they previously send to the same address or not.
Some savings might be possible in future with taproot using cross input signature aggregation, but that will require a soft fork and was left out of initial taproot deployment, because there are some unsolved issues. But also then, it wouldn't matter, were these inputs previously sent to same or different addresses.
I see. Does this also mean there's no (UTXO related) duplicated data in the spending transaction?
reply
Inputs spending outputs with the same locking script repeat some of the input elements necessary to spend the input. E.g. a P2PKH input needs to reveal the public key corresponding to the public key hash appearing in the corresponding transaction output’s output script. This would need to happen again if someone spends another output with the same output script.
If we made reusing the same address cheaper that would undermine the privacy best-practice of using a new output script for every payment. I therefore see zero chance of such a change being adopted in Bitcoin.
reply
Every signature will be different as data to be signed in each input will be different, that is what matters.
Here's random example transaction I just found, it spends exact amounts from multiple inputs, sent to the same address. https://mempool.space/tx/466ddadf42d82027411b2984a6b1b0f1d9631fb05f6e61d97e7634bf34119f2e
Click on "Details" there and compare "Witness" field of each input.
reply