Skip to main content

No project description provided

Project description

Frost.rs Python Bindings

This library is a port of frost.rs written by the Zcash Foundation for Python 3.10 or Python 3.11. It provides bindings to the Rust library for performing various cryptographic operations, including distributed key generation (DKG), nonce generation, and signing signature.

Installation

To install the library, run the following command:

$ pip install frost_rs
  • it's recommended to run the command in virtual environment

Supported Platforms

The current supported operating systems are x86-64 Linux and Windows. If you want to use this library on an unsupported platform, you need to install the Rust compiler on your device by running:

$ sudo apt install cargo

After installing Cargo, you can install the package using pip. It will download the source distribution and build it for your platform.

For more information on installing Rust, visit the official Rust website.

Features

This library supports the following elliptic curves:

  • secp256k1
  • ed448
  • ed25519
  • p256
  • ristretto255

All outputs are base64url encoded strings and not encrypted!!

Benchmarks

The following benchmarks show the performance of the library for different values of T (number of parties) and N (number of nodes) on local machine with AMD 5600x.

T=7, N=10

Library DKG (sec) Nonce Gen (sec/node) Sign (sec)
utility_secp256k1 0.098374 0.001000 0.006513
utility_ed448 0.978722 0.012515 0.087149
utility_ed25519 0.105699 0.001000 0.011518
utility_p256 0.247465 0.002572 0.011449
utility_ristretto255 0.061611 0.001000 0.006510

T=15, N=20

Library DKG (sec) Nonce Gen (sec/node) Sign (sec)
utility_secp256k1 0.761673 0.002511 0.020761
utility_ed448 7.640174 0.028124 0.316123
utility_ed25519 0.828624 0.002000 0.038753
utility_p256 1.769641 0.006398 0.039469
utility_ristretto255 0.489567 0.001509 0.017441

T=25, N=30

Library DKG (sec) Nonce Gen (sec/node) Sign (sec)
utility_secp256k1 2.598118 0.004004 0.044556
utility_ed448 27.671697 0.036910 0.691816
utility_ed25519 2.879805 0.004503 0.083431
utility_p256 6.378291 0.009511 0.085119
utility_ristretto255 1.672220 0.003009 0.037045

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

frost_rs-0.1.2.post1.tar.gz (4.2 MB view details)

Uploaded Source

File details

Details for the file frost_rs-0.1.2.post1.tar.gz.

File metadata

  • Download URL: frost_rs-0.1.2.post1.tar.gz
  • Upload date:
  • Size: 4.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.5.1

File hashes

Hashes for frost_rs-0.1.2.post1.tar.gz
Algorithm Hash digest
SHA256 0d1b9be3ecd5fa08785a6ff56099472111098b716b25c76b905b46a0d934f0f3
MD5 d789946158fb800029b681e9becc8977
BLAKE2b-256 93f0347792b32769d4d1ed9039f2876a035744978d8d5e98ca76ff87bd129f81

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