Skip to main content

Cross-platform Python libsecp256k1 for ElectrumSV

Project description

Licence: MIT Licence / Apache v2.0 (dual licensed)
Maintainers: Neil Booth, Roger Taylor
Project Lead: Roger Taylor
Language: Python (>=3.6)
Homepage: https://electrumsv.io/

Build status on Azure Pipelines


This library provides a wrapped pre-compiled libsecp256k1, the heavily optimized C library used by Bitcoin Core for operations on elliptic curve secp256k1. It effectively encapsulates a libsecp256k1 fork and allows ElectrumSV developers to have a vetted build, with selected public modifications, available on pypi to treat as a first classed dependency which can be obtained and verified against a known hash, like any other Python dependency.

Table of Contents

Features

  • Linux, macOS, and Windows all have binary packages for 64 bit architectures only.

  • Linux & macOS use GMP for faster computation

  • Implements a fix for https://bugs.python.org/issue28150 to support Python 3.6+ on macOS

Installation

electrumsv-secp256k1 is distributed on PyPI and is available on Linux/macOS and Windows and supports Python 3.6 and Python 3.7.

$ pip install electrumsv-secp256k1

If you are on a system that doesn’t have a precompiled binary wheel (e.g. FreeBSD) then pip will fetch source to build yourself. You must have the necessary packages.

On Debian/Ubuntu for example the necessary packages are:

  • build-essential

  • automake

  • pkg-config

  • libtool

  • libgmp-dev (optional)

API

Anything importing this should be familiar with the underlying libsecp256k1 api.

Credits

  • Contributors of coincurve. At this time this project is for the most part a adapted and stripped down version of coincurve for Azure Pipelines.

  • Contributors of libsecp256k1.

  • Contributors of secp256k1-py. While Coincurve is nearly a complete rewrite, much of the build system provided by ulope remains.

History

Coincurve history available here.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

electrumsv-secp256k1-0.9.4.tar.gz (944.1 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

electrumsv_secp256k1-0.9.4-py2.py3-none-win_amd64.whl (322.6 kB view details)

Uploaded Python 2Python 3Windows x86-64

electrumsv_secp256k1-0.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (547.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

electrumsv_secp256k1-0.9.4-cp310-cp310-macosx_10_14_x86_64.whl (374.5 kB view details)

Uploaded CPython 3.10macOS 10.14+ x86-64

electrumsv_secp256k1-0.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (547.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

electrumsv_secp256k1-0.9.4-cp39-cp39-macosx_10_14_x86_64.whl (374.5 kB view details)

Uploaded CPython 3.9macOS 10.14+ x86-64

electrumsv_secp256k1-0.9.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (547.8 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

electrumsv_secp256k1-0.9.4-cp38-cp38-macosx_10_14_x86_64.whl (374.5 kB view details)

Uploaded CPython 3.8macOS 10.14+ x86-64

electrumsv_secp256k1-0.9.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (547.4 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

electrumsv_secp256k1-0.9.4-cp37-cp37m-macosx_10_14_x86_64.whl (374.5 kB view details)

Uploaded CPython 3.7mmacOS 10.14+ x86-64

File details

Details for the file electrumsv-secp256k1-0.9.4.tar.gz.

File metadata

  • Download URL: electrumsv-secp256k1-0.9.4.tar.gz
  • Upload date:
  • Size: 944.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.7

File hashes

Hashes for electrumsv-secp256k1-0.9.4.tar.gz
Algorithm Hash digest
SHA256 4018d36afa87e4298e3c8e5f20958bd6d908fd5c49eeb5192c3785c981c2b12c
MD5 dcb84ccfd66ac553b18759a87c77178c
BLAKE2b-256 979a5bc4f4041dff258b92290e5e1757bff80d21cc990db26eec90c1e92e1ecc

See more details on using hashes here.

File details

Details for the file electrumsv_secp256k1-0.9.4-py2.py3-none-win_amd64.whl.

File metadata

  • Download URL: electrumsv_secp256k1-0.9.4-py2.py3-none-win_amd64.whl
  • Upload date:
  • Size: 322.6 kB
  • Tags: Python 2, Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.7

File hashes

Hashes for electrumsv_secp256k1-0.9.4-py2.py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 aaab0aa288ab854373c9c5313b59dfcb5d592076d914f0b7a41d5714d5a2b662
MD5 f38ad4277079837fae3c79d509cca103
BLAKE2b-256 1fc46f72344a9b06a8a054e8c7953a6bbef97641c1f3dfeab188fc796c04c72d

See more details on using hashes here.

File details

Details for the file electrumsv_secp256k1-0.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for electrumsv_secp256k1-0.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c0093d39c71ac81330ed9480cb2287a65bf8fe14473a3e36110ed305ace21b0c
MD5 8067204c8147ec04ead4d867ea109e5c
BLAKE2b-256 776cdc8cca03eb6132971f5efb41133ca222aed6db2043306078fb9aff98c06b

See more details on using hashes here.

File details

Details for the file electrumsv_secp256k1-0.9.4-cp310-cp310-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: electrumsv_secp256k1-0.9.4-cp310-cp310-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 374.5 kB
  • Tags: CPython 3.10, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.7

File hashes

Hashes for electrumsv_secp256k1-0.9.4-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 92708bf45436a005afc3edaa7e1b0aa1b80d5ca5a528037c3c4c663a1ef583f8
MD5 a0a6ea41a501c3c0334613e90ae763e8
BLAKE2b-256 493116853ed9bf54f7b3859947b9a084ccca39a18b9af08edfd3a189576df73e

See more details on using hashes here.

File details

Details for the file electrumsv_secp256k1-0.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for electrumsv_secp256k1-0.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dd424f995c97079ab546c1e990623eeb644e142162e4cd6ce6fe0454c58aa6b7
MD5 62d295623d7d3ffea2ea272726df04ae
BLAKE2b-256 9ac88b3381cc3234a920862c4a65a5d777606dfa23a13d95351137d19a301d60

See more details on using hashes here.

File details

Details for the file electrumsv_secp256k1-0.9.4-cp39-cp39-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: electrumsv_secp256k1-0.9.4-cp39-cp39-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 374.5 kB
  • Tags: CPython 3.9, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.7

File hashes

Hashes for electrumsv_secp256k1-0.9.4-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 95dba5cdb450d666b3a80ba17fdb7fcc3f5c12bd0ec23e8e8d4ac6ed9489a96f
MD5 b4f4560507ace6a288df25f2a3a91f0a
BLAKE2b-256 321ba640ed2aa04b17d8498902e314e4a06ac53b102e2978eef6f6717d99f27d

See more details on using hashes here.

File details

Details for the file electrumsv_secp256k1-0.9.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for electrumsv_secp256k1-0.9.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bfd0345ca29e4e45dc8de52cec978041b31bc95ae19403a7bc3588650cb28994
MD5 6979f363ac9fd5d8346f7e0f91c84f05
BLAKE2b-256 c431310e8ba4b1c0b6db0940dc1eba4e24ae77373d4a5f41197ca347b3981efc

See more details on using hashes here.

File details

Details for the file electrumsv_secp256k1-0.9.4-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: electrumsv_secp256k1-0.9.4-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 374.5 kB
  • Tags: CPython 3.8, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.7

File hashes

Hashes for electrumsv_secp256k1-0.9.4-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 e4d0fa67fd5b77066199fa7d3fdb0c5253c7b125c588bc37ef605f0d18f3cfbf
MD5 1d430e5e527a240d52551d98d2d71c9c
BLAKE2b-256 a499d506ae5448654cd1bece33697ea6bec10d8f6443b7797d626fe787d2f436

See more details on using hashes here.

File details

Details for the file electrumsv_secp256k1-0.9.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for electrumsv_secp256k1-0.9.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3b2d7b5380337692466f864dfc412452b09379565ec26b48cf27525685ef9fd9
MD5 f3fce5ee99512b1fe8fc0dcb69552bd1
BLAKE2b-256 0b5d15df9bac4410a44dc7d71e4744a68c59872a5d5dd49e147a20e650d6ebdc

See more details on using hashes here.

File details

Details for the file electrumsv_secp256k1-0.9.4-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: electrumsv_secp256k1-0.9.4-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 374.5 kB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.7

File hashes

Hashes for electrumsv_secp256k1-0.9.4-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 a0a613363541fd5ea3939dab2ea609587002e5d5adbba76f86418ba60a0162d4
MD5 1d19a10fd705c90325fb3ff8b5434842
BLAKE2b-256 6eb0c6888cbecaf29500dd7ab1f92ac7ff70283e1773bc09019000d2289a7852

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page