BIP146: change title and add NULLDUMMY rules #435

pull jl2012 wants to merge 1 commits into bitcoin:master from jl2012:bip146nulldummy changing 2 files +27 −8
  1. jl2012 commented at 12:03 PM on August 17, 2016: contributor

    NULLDUMMY is a trivial softfork to fix malleability related to the extra stack element consumed by CHECKMULTISIG(VERIFY). NULLDUMMY is probably more important than LOW_S since without that an attacker may replace the stack element with any value.

  2. jl2012 cross-referenced this on Aug 17, 2016 from issue Enforce LOW_S rules on all transactions with WITNESS BIP9 parameters by jl2012
  3. BIP146: change title and add NULLDUMMY rules 003cf078ff
  4. in bip-0146.mediawiki:None in 3028af9371 outdated
       9 | @@ -10,22 +10,40 @@
      10 |  
      11 |  ==Abstract==
      12 |  
      13 | -This document specifies proposed changes to the Bitcoin transaction validity rules to restrict signatures to using low S values.
      14 | +This document specifies proposed changes to the Bitcoin transaction validity rules to fix signature malleability.
    


    sipa commented at 12:58 PM on August 17, 2016:

    Maybe change it into "for common transaction types" ? It certainly does not entirely fix it.


    jl2012 commented at 5:13 PM on August 17, 2016:

    Ok will clarify. I actually mean malleability of signatures for CHECK(MULTI)SIG(VERIFY). BIP66+BIP146 should fix it entirely


    luke-jr commented at 2:11 AM on August 18, 2016:

    @jl2012 AFAIK even that is not proven.

  5. in bip-0146.mediawiki:None in 3028af9371 outdated
      55 | @@ -38,7 +56,7 @@ For Bitcoin testnet, the BIP9 starttime will be midnight 1 May 2016 UTC (Epoch t
      56 |  
      57 |  ==Compatibility==
      58 |  
      59 | -The reference client has produced compatible signatures since v0.9.0, and the requirement to have low S value signatures has been enforced as a relay policy by the reference client since v0.11.1. As of August 2016, very few transactions violating the requirement are being added to the chain. In addition, every non-compliant signature can trivially be converted into a compliant one, so there is no loss of functionality by this requirement. This proposal has the added benefit of reducing transaction malleability.
      60 | +The reference client has produced compatible signatures since v0.9.0, and NULLDUMMY and LOW_S have been enforced as a relay policy by the reference client since v0.10.0 and v0.11.1 respectively. As of August 2016, very few transactions violating the requirement are being added to the chain. In addition, every non-compliant signature can trivially be converted into a compliant one, so there is no loss of functionality by this requirement. This proposal has the added benefit of reducing transaction malleability.
    


    sipa commented at 1:00 PM on August 17, 2016:

    Added benefit? Isn't it the primary goal?


    jl2012 commented at 5:11 PM on August 17, 2016:

    This is copied from BIP66 :) Probably that's an added benefit for BIP66, but not for this one. Will fix it

  6. btcdrak commented at 6:05 PM on August 17, 2016: contributor

    Update implementation PR URL to #8533

  7. jl2012 force-pushed on Aug 17, 2016
  8. jl2012 commented at 6:06 PM on August 17, 2016: contributor

    @btcdrak @sipa comments addressed

  9. luke-jr merged this on Aug 17, 2016
  10. luke-jr closed this on Aug 17, 2016


github-metadata-mirror

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: 2026-04-27 12:10 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me