Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

openentropy-embed

A research pipeline for comparing hardware entropy sources in embedding space.

It takes raw byte recordings from OpenEntropy, cuts them into short windows, embeds them with OpenAI text-embedding-3-large, and audits what structure survives strict evaluation.

Live results: amentilabs.com/research/entropy-embedding-atlas

What we found

Hardware entropy on a single Apple Silicon machine is not a collection of independent streams. 19 out of 58 sources produce nearly identical embeddings despite coming from different hardware subsystems. They share structure because they share host state.

A dense core of 19 sources across 10 categories

PLL oscillators, I/O timing, network latency, GPU operations, scheduling, microarchitecture, IPC, signal sources, timing, and an external quantum RNG all land within cosine distance 0.01 of each other. The human-assigned categories do not predict which sources cluster together. fsync_journal sits at the center — its timing touches the entire storage stack, making it sensitive to every kind of system load.

CPU pipeline sources stand apart

Sources that measure CPU internals (preemption_boundary, mach_continuous_timing, icc_atomic_contention) produce genuinely unique byte patterns. preemption_boundary is the most isolated source, sitting 0.41 cosine distance from the average. On 38 sources with enough sessions for leave-one-out evaluation, the model identifies the correct source 46.0% of the time (chance is 2.6%). Stat-distance correlation is 0.80.

Stress tests confirm shared structure

Across 4 perturbation campaigns (CPU scheduling, memory/network, GPU/CPU, software), one factor explains 50-80% of cross-source movement. dram_row_buffer responds the most. PLL sources are the most temporally stable (0.003-0.005 drift between sessions). System-level sources like usb_enumeration drift up to 0.29.

QCicada looks like the core but does not move with it

The Crypta Labs QCicada USB QRNG sits in the dense core (16 neighbors within cosine distance 0.01), likely because high-entropy hex looks similar regardless of origin. Under stress tests, QCicada barely moves (max shift ~0.01, vs ~0.14 for dram_row_buffer) and its movement direction does not correlate with PLL sources. This is what you would expect from an independent quantum source: consistent high-entropy output that does not respond to host state. The real coupling story is between host-based sources.

What this does not claim

  • New physics or quantum influence on classical sources
  • That visual cluster overlap proves mechanism
  • That results generalize beyond this one machine
  • That this coupling has cryptographic security implications

Pipeline

openentropy sessions → 256-byte windows → text-embedding-3-large → audits → reports
  1. Read OpenEntropy sessions from disk (raw.bin + raw_index.csv).
  2. Cut into 256-byte windows with 128-byte stride.
  3. Embed with OpenAI text-embedding-3-large (3,072 dimensions).
  4. Evaluate: retrieval accuracy, clustering, stability, drift, cross-source coupling.
  5. Generate reports, figures, and data bundles.

Install

git clone https://github.com/amenti-labs/openentropy-embed.git
cd openentropy-embed
python3.12 -m venv .venv
source .venv/bin/activate
pip install -e ".[local,dev]"

Requires Python 3.12+. Set OPENAI_API_KEY in .env for the embedding backend.

Quick start

# Index sessions into windows
openentropy-embed index /path/to/sessions/session-dir --out runs/windows

# Embed with default backend
openentropy-embed embed runs/windows --out runs/embedded

# Evaluate and visualize
openentropy-embed evaluate runs/embedded
openentropy-embed visualize runs/embedded

# Or run the full pipeline in one command
openentropy-embed run /path/to/sessions/session-dir --out runs/full

Repo layout

embed/              Core pipeline (indexing, embedding, evaluation, reporting)
  backends/         OpenAI embedding backend
experiments/        Experiment scripts and data bundle exporters
tests/              Regression tests
runs/               Generated artifacts (gitignored)

Session format

Expects OpenEntropy sessions on disk with session.json, raw.bin, and raw_index.csv. Reads these directly without requiring OpenEntropy internals.

Related

License

MIT

About

Comparing hardware entropy sources in embedding space. 58 sources, one machine, shared structure.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages