Egress Bond · 17,000 rows left, nobody metered it · Patent Pending
Status

Cryptographic core built and proven. 37 of 37 smoke tests pass. Sign p50 ~6ms, verify p50 ~2.4ms, ML-DSA-65 signature 3,309 bytes constant. Filed July 26, 2026 as provisional patent, USPTO application 64/119,279. Real production integration with a live classifier and egress gateway is pilot-ready, not yet deployed.

17,000 rows left the perimeter over a weekend. Nobody metered it.

Egress Bond™ meters data leaving the perimeter, per semantic class: credentials, PII, model weights, test data, plaintext, against pre-committed caps set before the agent ever runs. It uses additive homomorphic Pedersen commitments so the producer never sees which specific rows contributed to the running total. When a class breaches its cap, the bond breaks, and that break retroactively invalidates the entire associated SiGR Chain DAG. Reconstruction after the fact becomes cryptographically unnecessary, because the bond already told you exactly where it broke.

Break the bond at row 10,001. Don't wait for someone to count to 17,000.

What it is: a per-class row cap, committed before the run starts, checked continuously with homomorphic commitments so no single party, including the producer, can see which rows crossed the line, only whether the aggregate crossed the pre-committed cap. What it is not: Egress Bond does not classify content itself; it consumes a classifier's output and meters the aggregate against caps. It proves how much of what class left, not the exact content of every row.
Honest status: read this first

The cryptographic core is built and proven: 37 of 37 smoke tests pass across all seven upstream primitives sharing the same signer and envelope. Egress Bond's manifest and measurement receipts are ML-DSA-65 signed (NIST FIPS 204), constant 3,309-byte signatures. Real integration with a live semantic classifier and an actual egress gateway is pilot-ready but not yet deployed at a customer. The Pedersen commitment math is proven non-revealing in our test suite; it has not yet metered a real production data flow.

What's real today, and what's pilot-ready

These numbers come from the reference implementation and its test suite. The commitment scheme, the per-class cap logic, and the receipt signing are real and measured. Wiring this to a live classifier watching real egress traffic is the next step, and it hasn't happened yet.

37/37
smoke tests pass · all seven upstream primitives
~6ms
sign p50 · manifest and measurement receipts
~2.4ms
verify p50 · offline, no network call
3309bytes
ML-DSA-65 signature · constant size, every receipt

Envelope format is USAP_VERSION='usap.v1', shared across all seven upstream primitives filed under the same provisional. Filed July 26, 2026. USPTO application 64/119,279.

17,000 test-data rows left. The metering happened after, not during.

In the OpenAI and Hugging Face incident, test-data rows exfiltrated across a weekend before anyone reconstructed what had happened. The reconstruction itself took real forensic work, after the fact, against logs that could be incomplete or altered. Egress Bond removes the need for that reconstruction by metering the aggregate live, per semantic class, against a cap set before the run ever started.

Logs tell you what happened. Caps stop it happening

A log is a record you consult after the fact, and only if it survived intact. A pre-committed cap is a limit the system enforces during the run. By the time anyone reads a log about row 17,000, row 17,000 already left.

17,000 rows, zero real-time cap

Nothing in the pipeline compared the running total against a pre-declared limit per data class. Test data, credentials, and PII were treated the same, uncapped, until someone counted afterward. Read the incident analysis.

Egress Bond breaks the bond at the cap

Egress Bond meters every class continuously with homomorphic commitments. At row 10,001 against a cap of 10,000, the bond breaks, a signed event fires, and the associated SiGR Chain DAG is retroactively invalidated. There's nothing left to reconstruct.

Motivating incident: Hive incident analysis: OpenAI and Hugging Face, 17,000 events · Signature standard: NIST FIPS 204 (ML-DSA).

The mechanism: additive Pedersen commitments, per class

Each row is classified locally by a classifier whose weights digest is bound into the manifest before the run starts. Every row's class contributes to a running homomorphic commitment, additive, so the total can be checked against the cap without any party, including the producer, ever seeing which individual rows contributed. Cross the cap, and the bond breaks.

ClassTypical capWhy the cap existsWhat breaking it triggers
credential0 rowsNo credential should ever leave the perimeterImmediate bond break, DAG invalidation
pii10 rowsSmall, audited exceptions only, never bulkBond break past 10, DAG invalidation
model_weight0 rowsWeights are the crown jewels, zero toleranceImmediate bond break, DAG invalidation
test_data100 rowsSome test data movement is normal, bulk isn'tBond break past 100, DAG invalidation
plaintext1000 rowsHighest tolerance, still boundedBond break past 1000, DAG invalidation
The money shot side-by-side, one screen
Why aggregate logging misses this
Aggregate egress dashboard
✓ total egress volume within normal range
✓ no alerts fired over the weekend

LOOKS FINE ON THE DASHBOARD

Egress Bond per-class commitment
✗ test_data class exceeded cap of 100 by row 10,001
✗ bond_break_detected: disposition = invalidate_dag

BROKEN: test_data cap breached, DAG invalidated at the moment of breach

Aggregate volume can look completely normal while one semantic class quietly blows past its cap. Only per-class metering, checked continuously, catches it at row 10,001 instead of row 17,000.

The receipt schema

Two receipt types. egress.manifest declares the per-class caps, the classifier weights digest, and the commitment seed before the run starts. egress.measurement reports the windowed commitments and, if a cap is breached, the bond break and disposition. Both are ML-DSA-65 signed under the shared usap.v1 envelope.

// egress.manifest: declared before the run, binds the caps and the classifier
{
  "usap_version": "usap.v1",
  "receipt_type": "egress.manifest",
  "per_class_row_caps": {
    "credential": 0,
    "pii": 10,
    "model_weight": 0,
    "test_data": 100,
    "plaintext": 1000
  },
  "classifier_weights_digest": "sha256:7c1e...", ← binds the local classifier, can't be swapped invisibly
  "commitment_seed_digest": "sha256:4a90...",
  "retroactive_invalidation": true,
  "sigr_chain_ref": "sha256:sigr-dag-root...",
  "signature": "ML-DSA-65, 3309 bytes"
}

// egress.measurement: windowed report, homomorphic per-class commitments
{
  "usap_version": "usap.v1",
  "receipt_type": "egress.measurement",
  "window": {
    "start": "2026-07-25T00:00:00Z",
    "end": "2026-07-25T06:00:00Z"
  },
  "per_class_row_commitments": {
    "credential": "pedersen:0x9ab2...",
    "pii": "pedersen:0x11cd...",
    "test_data": "pedersen:0x77fe..."
  },
  "per_class_rows_total": { "credential": 0, "pii": 3, "test_data": 10001 },
  "bond_break_detected": {
    "class": "test_data",
    "cap_exceeded": 100,
    "observed_total": 10001
  },
  "disposition": "invalidate_dag",           ← the retroactive break
  "signature": "ML-DSA-65, 3309 bytes"
}
Additive commitments hide the rows, not the total

Pedersen commitments are homomorphic: individual row commitments sum to a verifiable total without revealing which rows were which. The producer proves the aggregate stayed under cap, or gets caught the moment it didn't, without ever exposing row-level content.

The classifier weights are bound, not trusted blindly

The manifest binds the classifier_weights_digest. Swap the classifier for a laxer one mid-run and the digest mismatch is externally visible, so the classifier itself can't be quietly weakened to dodge a cap.

Breaking the bond is retroactive, not just a flag

A bond break doesn't just log an alert. It sets disposition to invalidate_dag, which retroactively invalidates the entire SiGR Chain DAG tied to that run, so nothing downstream can claim the run was clean after the fact.

Egress Bond does not need to know what was in row 10,001 to know the cap on test_data broke at row 10,001. That's the point: metering per class, continuously, without exposing content, closes the gap logs-after-the-fact can't.

How the metering flow works, end to end

Egress Bond sits between a local semantic classifier and the perimeter's actual egress path. It doesn't replace the classifier. It takes the classifier's per-row class label, folds it into a running homomorphic commitment per class, and checks the running total against the manifest's caps on every measurement window.

The metering flow
  • Publish the egress.manifest before the run: per-class caps, classifier weights digest, commitment seed.
  • Each row exiting the perimeter gets a class label from the bound classifier.
  • Fold the row into the running Pedersen commitment for its class, additive, non-revealing.
  • On each measurement window, compare the per_class_rows_total against the manifest's caps.
  • Breach a cap, and emit bond_break_detected with disposition set to invalidate_dag.
The Hive addition: metering without seeing

Most DLP and egress-monitoring tools require the monitor to see the content to classify it, which means someone always has visibility into the actual rows. Egress Bond's homomorphic commitments let the aggregate be checked against a cap without any party, including Hive, learning the row-level content.

Public verifier: standalone, offline, zero network calls to Hive. A regulator, auditor, or the operator itself can check whether a cap was breached and whether the DAG invalidation followed correctly, using only the manifest, the measurement receipts, and Hive's public key.

Integration surface

Sits behind any existing DLP or semantic classifier that already labels rows by class. Pilot-ready for a live egress gateway; not yet deployed against real production traffic.

Overhead

Folding a row into a Pedersen commitment is cheap, additive group operations, not per-row signing. Signing happens per measurement window, not per row, keeping the hot path fast.

Fail-closed on breach, not fail-open

Once bond_break_detected fires, disposition defaults to invalidate_dag. There's no code path where a breached cap silently continues without the invalidation taking effect.

Signature standard: NIST FIPS 204 (ML-DSA) · Reference implementation: hive-typed-signer, one file per primitive.

What we don't claim

Honesty is the product. Here is exactly where the edges are.

Not a classifier

Egress Bond meters against a classifier's output. It does not itself decide whether a given row is PII, a credential, or plaintext. A weak or misconfigured classifier still produces weak or misconfigured metering; the manifest binds the weights digest but can't fix bad training.

Not a prevention layer by itself

Egress Bond detects and signs the breach; whether the underlying egress path is blocked at that moment depends on the enforcement layer it's wired to, for example Perimeter Bond. Wire them together for detection and enforcement in one place.

Live integration is pilot-ready, not deployed

The cryptographic core, the commitment math, and the DAG invalidation logic are built and tested. Wiring this into a live classifier and a real egress gateway at a customer is the next step, and it has not happened yet.

Where Egress Bond sits in the Hive canon

Egress Bond™ is one of seven upstream primitives filed together, July 26, 2026, USPTO application 64/119,279, all sharing the ML-DSA-65 signer and the usap.v1 envelope. It governs the egress metering axis: how much of what data class actually left the perimeter, checked without exposing content. The other six cover environment integrity, policy disclosure, intent alarms, network enforcement, time and consensus, and post-incident reproducibility.

PrimitiveWhat it provesAxisWhen
Egress BondData leaving the perimeter is metered per semantic class against pre-committed caps, without exposing which rows contributed.Egress meteringcrypto core proven integration pilot-ready
Provenance-Bonded SandboxEnvironment integrity, continuously, from provisioning through every heartbeat.Environment integritycrypto core proven
Refusal LedgerEvery refusal-policy mutation is on record, and the runtime value stays inside declared bounds without disclosing it.Policy disclosurecrypto core proven
HowlerAn alarm about intent formation fired before the effect emitted, and a third party can independently replay it.Intent alarmcrypto core proven
Perimeter BondThe exact enforcement bytecode that intercepted syscalls is bound into every attempt receipt.Network enforcementcrypto core proven
Diurnal BondWeekend and after-hours actions require k-of-n countersigning, where k is computed from a signed risk manifold.Time and consensuscrypto core proven
Forensic RailPost-incident analysis runs under a bonded consortium credential and is deterministic-replay-bonded for independent reproduction.Post-incident reproducibilitycrypto core proven
CarnacThe downstream gate: challenge, escalate, or stop an agent action before it executes.Downstream gatenow
HiveSealWhere the signing key lives in silicon: a key-side root.Key-side rootnow
AFiRAttested Fragmented Inference Routing: signed routing of an inference across fragments and providers.Compute axisnow
SiGRA specific model at a specific config produced a specific output, signed and checkable offline.Compute axisnow

See also: the OpenAI and Hugging Face incident analysis, the 17,000-row weekend exfiltration that motivates Egress Bond directly.

Pilot Egress Bond on real egress traffic

We're looking for design partners with a live semantic classifier and a real egress gateway to take the crypto core into production metering. You bring the classifier and the traffic. We wire the manifest, the per-class commitments, and the bond-break-to-DAG-invalidation path, run the smoke tests against your data classes, and you walk out with receipts a regulator, auditor, or court can check offline.

Egress Bond: per-class data egress metering. Patent Pending. Meters data leaving the perimeter per semantic class against pre-committed caps, using homomorphic Pedersen commitments, signed independently with ML-DSA-65 (FIPS 204), checkable offline. Crypto core built and proven: 37 of 37 smoke tests pass. Filed July 26, 2026, USPTO application 64/119,279. Real classifier and gateway integrations are pilot-ready, not yet deployed. We never fake a receipt.

Private by design. Hive does not store your prompts. Every request is already receipted by a one-way SHA-256 fingerprint, not the words. Proof, not surveillance.