Skip to main content

No project description provided

Project description

Build Status License: GPL v3

Multi Party Schnorr Signatures (python extension)

Disclaimers:

(1) This code should not be used for production at the moment.

(2) This code is not secure against side-channel attacks

(3) The code do not contain a network layer (if you are interested, check white-city for ongoing effort, contribtutions are welcome)

Get Started

schnorr_bip_test_vector_2

schnorr_two_party_signing

threshold 3 out of 5 with 4 parties in signing

Install

Please use python3.5 or more
Install by pip pip3 install --user multi-party-schnorr
How to use? please look at examples *.py
Cannot use on windows? please read a issue/39

compressed key prefix

  • 0x02, 0x03, 0x04 => for 1 of 1 single signature
  • 0x05, 0x06, 0x07 => for n of n aggregate signature
  • 0x08, 0x09, 0x0a => for t of n threshold signature

performance

type secp256k1(~0.1.7) libsecp256k1-rs(0.1.8) emerald-city(0.1.9~) test code link
1 of 1 aggregate 112ms 3ms 1ms aggregate_1_of_1.py
n of n aggregate 458ms 7ms 3ms aggregate_n_of_n.py
t of n threshold 2475ms 68ms 33ms thresholdbig_t_of_n.py

Development Process

This contribution workflow is described in CONTRIBUTING.md.

Contact

Feel free to reach out or join the KZen Research Telegram for discussions on code and research.

License

The library is released under the terms of the GPL-3.0 license. See LICENSE for more information.

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

multi-party-schnorr-0.1.9.tar.gz (12.8 kB view hashes)

Uploaded Source

Built Distributions

multi_party_schnorr-0.1.9-cp36-cp36m-win_amd64.whl (1.4 MB view hashes)

Uploaded CPython 3.6m Windows x86-64

Supported by

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