<oembed><type>rich</type><version>1.0</version><author_name>npub1g6vxlp4e0nyhs2dqxxcryztyf5f5hyuaq93nw4r87zcnv0sdsa0qqsl5wd</author_name><author_url>https://nostr.ae/npub1g6vxlp4e0nyhs2dqxxcryztyf5f5hyuaq93nw4r87zcnv0sdsa0qqsl5wd</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2015-07-20&#xA;📝 Original message:On Mon, Jul 20, 2015 at 8:10 PM, Gavin Andresen via bitcoin-dev &lt;&#xA;bitcoin-dev at lists.linuxfoundation.org&gt; wrote:&#xA;&#xA;&gt; After deployment, the maximum serialized size of a transaction allowed&#xA;&gt; in a block shall be 100,000 bytes.&#xA;&gt;&#xA;&#xA;This could render transactions with a locktime in the future as unspendable.&#xA;&#xA;It is pretty low probability that someone has created a &gt;100kB locked&#xA;transaction though.&#xA;&#xA;It violates the principle that no fork should render someone&#39;s coins&#xA;unspendable.&#xA;&#xA;At the cost of weakening the protection, the rule could be made to only&#xA;apply to version 2 transactions.&#xA;&#xA;&#xA;*Specification*&#xA;&#xA;    The transaction version is increased to version two.&#xA;&#xA;    All coinbase transactions must be version two or higher.&#xA;&#xA;    If any of its parent transactions are version two or higher&#xA;    then the transaction must be version two or higher.&#xA;&#xA;    The maximum serialized size of a version two transactions allowed in&#xA;    a block is 100,000 bytes.&#xA;&#xA;&#xA;As time passes more and more of the UTXO set will be from version two&#xA;transactions.  To launch the attack, the attacker needs an historical UTXO&#xA;entry.&#xA;&#xA;Standard software would create version two transactions even if all inputs&#xA;were version one.&#xA;&#xA;The rule could be applied to all transactions most of the time, and have&#xA;daily blocks that allow legacy transactions.&#xA;&#xA;    This rule shall apply to version 1 transactions too unless the block&#xA;height is&#xA;    a multiple of 100.&#xA;&#xA;At the risk of encouraging feature creep, if the transaction size is being&#xA;limited, it would be useful to also limit the size of all its inputs.&#xA;&#xA;This helps with fraud proofs and offline signing.&#xA;&#xA;&#xA;*Specification*&#xA;    The transaction version is increased to version two.&#xA;&#xA;    All coinbase transactions must be version two or higher.&#xA;&#xA;    If any of its parent transactions are version two or higher&#xA;    then the transaction must be version two or higher.&#xA;&#xA;    The maximum serialized size of a version two transactions allowed in&#xA;    a block is 100,000 bytes.&#xA;&#xA;    The maximum of the total serialized size of a version two transaction&#xA;and all&#xA;    of its parents allowed in a block shall be 200,000 bytes.&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150720/ff1d1869/attachment.html&gt;</html></oembed>