Improving key.py in qa/rpc-tests/test_framework #7859

issue sdaftuar opened this issue on April 11, 2016
  1. sdaftuar commented at 2:06 PM on April 11, 2016: member

    Our test framework's EC key wrapper (qa/rpc-tests/test_framwork/key.py) doesn't support a way to enforce low-S use in signatures. This is an annoyance when writing tests for mempool acceptance, as our standardness rules now enforce low-S.

    If someone wants to improve this, it would be nice to add an interface that would allow us to explicitly choose a low-S or high-S signature (either when signing, or as a separate function that would do the conversion).

  2. jonasschnelli added the label Tests on Apr 11, 2016
  3. jonasschnelli commented at 2:24 PM on April 11, 2016: contributor

    It's implemented upstream: https://github.com/petertodd/python-bitcoinlib/blob/master/bitcoin/core/key.py#L272

    Somebody needs to update the test framework.

  4. sdaftuar commented at 2:30 PM on April 11, 2016: member

    @jonasschnelli: I believe that if we want to use that code, we'd need the author to submit it here, as python-bitcoinlib is now LGPL, which isn't compatible with this project (sigh).

  5. laanwj commented at 3:53 PM on April 14, 2016: member

    Yes, we can't do that unless we want to depend on an external library for the test framework. (it's only not compatible if we want to include it into the repository)

  6. MarcoFalke commented at 1:16 PM on May 15, 2016: member

    @rnicoll are you interested in submitting this pull here as well?

  7. btcdrak commented at 6:25 PM on October 6, 2016: contributor

    @sdaftuar @wumpus GPL is incompatible with MIT because GPL infects whatever uses it. So if your code uses an API of a GPL library, your code must be licensed GPL.

    However, The Lesser-GPL was designed for libraries and does not infect it's consumers allowing you to license your own code as you please, while requiring the LGPL library to be distributed on the LGPL terms.

  8. wumpus commented at 8:02 PM on October 6, 2016: none

    wrong @wumpus

  9. luke-jr commented at 6:43 AM on October 7, 2016: member

    @btcdrak That's not true. Your code can remain MIT-licensed and use GPL code, so long as it's distributed under the terms of the GPL. This still allows others to rip out the GPL dependency and use your code without following the GPL terms. We don't want to have this kind of thing in the repository, but it's not a legal problem.

  10. sipa commented at 10:00 AM on October 7, 2016: member

    #8499 also has a commit that adds support for lowS signatures.

  11. MarcoFalke commented at 10:04 AM on October 7, 2016: member

    Ok, closing for now, as this is part of #8499.

  12. MarcoFalke closed this on Oct 7, 2016

  13. MarcoFalke locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-14 12:16 UTC

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