Skip to main content

An Elliptic Curve Verifiable Random Function (ECVRF) library, initially designed for Omne.

Project description

ECVRF Library

A custom Elliptic Curve Verifiable Random Function (ECVRF) implementation.

Features

  • Key Generation and Management
  • Proof Generation and Verification
  • Hash-to-Curve Mapping
  • Comprehensive Testing Suite
  • Security Audits and Static Analysis

Installation

pip install -e .

Usage

from ecvrf import KeyManager, VRF, VRFVerifier

Initialize KeyManager

km = KeyManager()

Generate Key Pair

private_pem, public_pem = km.generate_keypair()

Initialize VRF and Verifier

vrf = VRF(km)
verifier = VRFVerifier(km)

Input Data

alpha = b"Sample input for ECVRF."

Generate Proof and Beta

beta, proof = vrf.prove(private_pem, alpha)

Verify Proof

is_valid = verifier.verify(public_pem, alpha, beta, proof)
print(f"Verification successful: {is_valid}")

Contributing

Contributions are welcome! Please open an issue or submit a pull request.

License

MIT License

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

python_ecvrf_4o-0.1.1.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

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

python_ecvrf_4o-0.1.1-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file python_ecvrf_4o-0.1.1.tar.gz.

File metadata

  • Download URL: python_ecvrf_4o-0.1.1.tar.gz
  • Upload date:
  • Size: 13.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.6

File hashes

Hashes for python_ecvrf_4o-0.1.1.tar.gz
Algorithm Hash digest
SHA256 f992b6c45e4298c1f7b85354fe26528e237d5bba244956dd648787ac62f81e9e
MD5 0e08bc0c92d115fe012bcc5df0d19aad
BLAKE2b-256 0dc74d51d895d6095b9046020ace1048e8b44fa03013871f7321fd88570c5948

See more details on using hashes here.

File details

Details for the file python_ecvrf_4o-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for python_ecvrf_4o-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 31f971f2bc155354730404dc34dbf388525e97914704c2d7760ad2cde7ebab79
MD5 7e6e2e99c749c32e08a610082fffea10
BLAKE2b-256 b605ae89d52c663dc8b80d2aceba338d0e655e7b1006e51c26d73b325492c267

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