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/
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 both 64 and 32-bit architectures
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
Built Distributions
Hashes for electrumsv-secp256k1-0.9.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e9d1927f1e7d9a23c769b78b5a0b14517427fc903ac5921d6bd58d35ccd460e |
|
MD5 | 918bc0a17f25173ce3b36646a4a3bbd7 |
|
BLAKE2b-256 | f4ab063841ac1d9a08bdd311f0b115ca6c9e1c5a1476091559c87b47f6cab6ca |
Hashes for electrumsv_secp256k1-0.9.2-py2.py3-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9ef486ba85917e79f6882cfa938fd3d5fd20add3ea1b29c28b981a1f133a1644 |
|
MD5 | e317427f380a635949c2ed95446776aa |
|
BLAKE2b-256 | 2cfe6dc811e61f620cef1960792ffb10f15e503df858946e7233de587a337927 |
Hashes for electrumsv_secp256k1-0.9.2-py2.py3-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f40b3520e8b028ae4b562220de32f3124c39e1e24f1d2be9005634bd7a522211 |
|
MD5 | 0d4e500468a85df740a1972739ee1925 |
|
BLAKE2b-256 | d83525d8beef22fec0ab58b4d0c89fc9908a042e9bdb832750952a89e961b2bb |
Hashes for electrumsv_secp256k1-0.9.2-cp38-cp38-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6eab206c2db495a46fa322b99c2f67c903088d0c19c302810fcdfb1db7be4678 |
|
MD5 | f00587c19f3905650d4e9dfcf44b1894 |
|
BLAKE2b-256 | 2887faed119796a00b094e894e0c72a36aeab3e772a98b34a141f025d7b7fdad |
Hashes for electrumsv_secp256k1-0.9.2-cp38-cp38-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b7fe984a27b11327a766b20a600e226fe315ed21e9626efe20946466b39d4ab |
|
MD5 | 7352f1cf370a7c70633afb00ede5358c |
|
BLAKE2b-256 | 50b07ba9084f13b7aa0d00db135c3a655473513af147a5782f8abb9742540660 |
Hashes for electrumsv_secp256k1-0.9.2-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3ef9c45edc855f773f460b38a6c25b31ea88b2eaeca5ce48d59b4cab37cebd8a |
|
MD5 | 4f57a6521e83fb85d3baf38bb40f17d9 |
|
BLAKE2b-256 | b462fcd885391cc71c0c036e1eda66eb8509a3ea2f55ec99222befcc47a97d12 |
Hashes for electrumsv_secp256k1-0.9.2-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 884fd4b4a9ad75cd969ae855c1670a87e9c0d26accf0016585cb9d60b6190593 |
|
MD5 | 30d57c86f7bdce26647f9b80987df991 |
|
BLAKE2b-256 | b889afe337460097bf2da77c1e1c9039a79456ccd0f367cecf3af1656257af98 |
Hashes for electrumsv_secp256k1-0.9.2-cp37-cp37m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f11778c71116022c827b61c449f3272d09f02dd7d5328a260d7db227997a8e4b |
|
MD5 | 1dd17a5511f29cd762f3be061e4b72c2 |
|
BLAKE2b-256 | b8cc071eac1451df1d30f094500625779cecae32642a5f0683180d91d858c2c8 |
Hashes for electrumsv_secp256k1-0.9.2-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 445f45d7c6d781a5e337ba2a31f2793b906a30f7dd8608908bdebe059aecf979 |
|
MD5 | 3cc5a3e1ff1b5c4bfc2a21ed8218771c |
|
BLAKE2b-256 | 3a736056fc2513e64b74661e96e21dab3f53333874ec66b62167b5cc4023b81e |