Skip to main content

Your computer is a hardware noise observatory. Harvests entropy from 45 unconventional hardware sources.

Project description

openentropy (Python)

Hardware entropy for Python, backed by Rust (PyO3 + maturin build).

OpenEntropy harvests randomness from multiple physical noise sources on your machine (timing jitter, thermal effects, scheduler variance, I/O timing, and more), then exposes:

  • EntropyPool.auto() for source discovery
  • get_random_bytes() for conditioned output
  • get_bytes(..., conditioning="raw|vonneumann|sha256") for research/analysis workflows
  • run_all_tests() + calculate_quality_score() for statistical checks

Install

pip install openentropy

Quick start

from openentropy import EntropyPool, detect_available_sources

sources = detect_available_sources()
print(f"{len(sources)} sources available")

pool = EntropyPool.auto()
data = pool.get_random_bytes(64)
print(data.hex())

Docs

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

openentropy-0.10.0.tar.gz (229.8 kB view details)

Uploaded Source

Built Distribution

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

openentropy-0.10.0-cp312-cp312-manylinux_2_39_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.39+ x86-64

File details

Details for the file openentropy-0.10.0.tar.gz.

File metadata

  • Download URL: openentropy-0.10.0.tar.gz
  • Upload date:
  • Size: 229.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.12.6

File hashes

Hashes for openentropy-0.10.0.tar.gz
Algorithm Hash digest
SHA256 3b9dbc0976b91a907c33bd4afd8f90631274d015c733e42638d02bd9dc3c3d75
MD5 e69c85116af8e18352e80f1412ebaf16
BLAKE2b-256 b33919b0c6a643c249a94a50468500b8be11b0ae19ef1f808c7d82ba14c4377d

See more details on using hashes here.

File details

Details for the file openentropy-0.10.0-cp312-cp312-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for openentropy-0.10.0-cp312-cp312-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 db5c893497e179c19ad9b5537dd09d961ec7f3c22c13d38e135cc1dcbc9fca59
MD5 8441fc852c5429a70d8bfca5c7271693
BLAKE2b-256 df1b40ecf1b60d1587e246fa6f1dd093e2c65d3b406b611c7d5d5b1195ee61d5

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