open-standards/sandbox/proof
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science 5fd925ed16
All checks were successful
standards workspaces build + test / which workspaces this change touches (pull_request) Successful in 6s
repository checks / lockfiles, tests in CI, workflow hygiene, spec and section references, public text (pull_request) Successful in 41s
standards workspaces build + test / joule-ui-rs (joule-ui/joule-ui-rs, joule-ui-rs, linux) (pull_request) Successful in 1m14s
standards workspaces build + test / jcp-rs (jcp-conformance, jcp/jcp-rs, -p jcp-energy --features nvml, jcp-rs, linux) (pull_request) Successful in 1m39s
standards workspaces build + test / joulecontract-rs (joulecontract/joulecontract-rs, joulecontract-rs, linux-arm64, true) (pull_request) Successful in 1m8s
standards workspaces build + test / joule-code-rs (joule-code/joule-code-rs, joule-code-rs, linux-arm64, true) (pull_request) Successful in 3m53s
standards workspaces build + test / sandbox-rs (sandbox-conformance, sandbox/sandbox-rs, -p sandbox-tee --features amd-kds,intel-pcs, sandbox-rs, linux) (pull_request) Successful in 2m39s
standards workspaces build + test / proof-rs (proof-conformance, proof/proof-rs, proof-rs, linux, true) (pull_request) Successful in 3m54s
standards workspaces build + test / macOS energy backends (pull_request) Successful in 7m37s
standards workspaces build + test / jouledesk-rs (jouledesk/jouledesk-rs, jouledesk-rs, macos) (pull_request) Successful in 2m49s
sandbox: a confidential run sealed on TDX hardware, its PCK checked to Intel's root
The TDX path (#399) and its PCK chain check (#415) had only met quotes this
crate built itself. This runs the reference host inside a TDX guest and
records the result as evidence anyone can re-check offline.

sandbox-runtime examples:
- confidential_run_tdx, run inside the guest. It takes quotes through
  configfs-tsm and derives the PCK anchor from a probe quote's chain,
  checked to Intel's root, which the verifier's side supplies. It seals an
  S6 run against a challenge, then checks the attestation: verified against
  the challenge, refused against another and against none.
- verify_run now reads the evidence kind. For TDX its anchor argument is
  Intel's root, and the PCK is derived from the quote's chain checked to it.
  SEV-SNP is unchanged, and the 2026-10-21 SEV-SNP evidence still verifies.
- sandbox-runtime's dev-dependencies enable sandbox-tee's intel-pcs feature
  for these examples.

sandbox/proof/hardware/2026-10-21-tdx: the attestation (with the DCAP v4
quote), the challenge, Intel's published root certificate, and a README
saying what it shows and what it does not. The unit is a placeholder and
revocation lists were not consulted.

Checked on our side, away from the guest:
- The quote's chain is PCK Certificate, then PCK Platform CA, then Root CA,
  and its root is byte-identical to Intel's published root (SHA-256
  44:A0:19:6B:…:74:D3).
- verify_run on the build host verifies the run, and refuses another
  challenge and no challenge.
- An attestation with its outcome changed is refused (report-data binding
  mismatch).
- Another certificate given as the root yields no anchor.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 06:51:40 -04:00
..
hardware sandbox: a confidential run sealed on TDX hardware, its PCK checked to Intel's root 2026-10-22 06:51:40 -04:00
matrix.jsonl
README.md

The Sandbox proof matrix

The standard's claim to be a universal substrate is only worth what the proof behind it is worth. This directory holds that proof: a ledger of signed proof cells, each one a real run of the conformance pack plus a sealed workload on a real target, recording the substrate, OS, architecture, cloud, hardware classes, and tier it actually demonstrated.

A green cell is never a claim. It is an Ed25519 signature (over the cell's JCS-canonical form — the family attestation primitive) that references an attestation and receipt which themselves verify. What a host cannot prove — no /dev/kvm → no microVM tier, no configfs-tsm → no confidential tier — is recorded as unavailable, never faked. Run the harness on more targets and the matrix fills with real proofs.

The matrix axes

substrate : Wasm · Container · MicroVm · Tee · BareMetal · Browser
OS        : linux · macos · windows
arch      : x86_64 · aarch64 · riscv64
cloud     : local · aws · azure · gcp · alibaba · cloudflare · fly · …
hardware  : Cpu · Simd · Gpu · Npu · Tpu · Lpu · Photonic · Quantum
tier      : S0 … S7

A cell is one point in {substrate × OS × arch × cloud × hardware × tier}. matrix.jsonl accumulates the cells that have been proved.

Producing and checking proofs

The harness is sandbox-proof:

cd ../sandbox-rs
# Prove THIS host — runs the conformance pack + a sealed S2 (WASM) run,
# probes which higher substrates are available, and appends a signed cell.
SANDBOX_CLOUD=local cargo run -p sandbox-proof -- prove ../proof/matrix.jsonl

# Re-verify every cell's signature (CI-friendly exit code).
cargo run -p sandbox-proof -- verify ../proof/matrix.jsonl

# Render the proved cells.
cargo run -p sandbox-proof -- show ../proof/matrix.jsonl

Set SANDBOX_CLOUD to the cloud/region the host runs in (e.g. aws, gcp), and SANDBOX_PROOF_KEY (64 hex) to the operator's own signing key; a fixed dev key is used otherwise.

What a cell records

Each line of matrix.jsonl is a SignedProofCell: the substrate/OS/arch/cloud/hardware/tier proved, the per-class conformance outcome, the content addresses of the run's attestation and energy receipt, the substrates the host reported available, a timestamp, and the Ed25519 signature + public key. Anyone can re-verify a cell without trusting the operator who produced it.

Honesty

The harness proves what the host can actually demonstrate. Today the universal cell is Wasm / S2, which runs anywhere the reference runtime does (Linux, macOS, Windows, any arch — and in a browser via WASM). Higher tiers (microVM, confidential) light up only on hosts that genuinely provide them. The matrix grows by running on more substrates, clouds, and accelerators — never by asserting a cell that wasn't run.