Skip to main content

Your computer is a hardware noise observatory. Harvests entropy from 60+ hardware noise sources.

Project description

openentropy (Python)

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

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

  • detect_available_sources() for source discovery
  • get_source_bytes() and get_source_raw_bytes() for single-source sampling
  • 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()
source = sources[0]["name"]
data = pool.get_source_bytes(source, 64, conditioning="sha256")
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.12.1.tar.gz (274.5 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.12.1-cp312-cp312-manylinux_2_39_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.39+ x86-64

File details

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

File metadata

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

File hashes

Hashes for openentropy-0.12.1.tar.gz
Algorithm Hash digest
SHA256 61b651957f911d4914b7d74261e8ed4cec78e79337f4f3fe5e4a366fb5dcdebc
MD5 45d1a37430cbcfc1a258defab7b2f2ca
BLAKE2b-256 39d09a41f9c6721445cd846faf39d64659818549654fc17cfce16bad6f0af673

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for openentropy-0.12.1-cp312-cp312-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 fce6eb0769b7239b08aa3c2272415b780a6ce92f3ceb0666ba51add977c6d094
MD5 8e2966ec82087cfd10acbe6b4d35409c
BLAKE2b-256 e9285613a39b0f9d45242b3c9ba6f1683f38a2e7d390ef6a6a7803812ae9dd1e

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