Skip to main content

No project description provided

Project description

Build Status License: GPL v3

Multi Party Schnorr Signatures (python extension)


(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



threshold 3 out of 5 with 4 parties in signing


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


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
n of n aggregate 458ms 7ms 3ms
t of n threshold 2475ms 68ms 33ms

Development Process

This contribution workflow is described in


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


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

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