CPHAR is not a zero-knowledge protocol. It is a hardware-backed attestation pattern. Zero-knowledge proofs are an optional add-on that let a prover make aggregate reserve claims without revealing per-lot fields.

What a ZK reserve claim looks like

The prover assembles per-seal attestations as before, then constructs a circuit that:

  1. Verifies each seal's signature against its registered public key.
  2. Checks that each lot commitment appears in the pinned registry snapshot.
  3. Asserts the aggregate property (e.g. sum(masses) ≥ threshold).
  4. Asserts that no two commitments are equal.

The prover publishes the resulting proof alongside the snapshot commitment and the public threshold.

Example claim

The verifier learns only: (a) the threshold holds, (b) which snapshot was used, and (c) the proof is valid. Individual seal_id values, lot commitments, and warehouse locations remain private.

Assumptions

What this does not prove

  • ZK does not strengthen the underlying hardware attestation. A ZK proof over weak seal evidence is still weak evidence.
  • ZK does not prove disclosure completeness — it only hides per-lot fields.
  • ZK does not replace audit. The auditor still needs registry visibility and inspection records.

Implementation notes