How it works

Two banks compare a price. Neither sees the other's number.

Each bank turns its price into a salted commitment on its own machine. A blind operator compares only the commitments, a party with nothing to gain confirms the goods, and the answer is signed so anyone can check it. Drag a price below - this is the real kernel running in your browser, not a video.

One shipment, compared live corridor bands 50 · 100 · 150 · 200  |  SHA-256 + ES256, in this tab
Exporter’s bank
Price / unitband 2 · (100, 150]
$121.52
What leaves the building
sha256 → …

Blind operator

Receives two hashes. Compares them. That is all it can hold.

3f9a…
c2e1…
Importer’s bank
Price / unitband 2 · (100, 150]
$128.40
What leaves the building
sha256 → …
✓reconciled
Both banks priced into the same band, and a witness with nothing to gain agrees. The operator never learned either number.
ES256 · kid mir-…
signed · verifies offline ✓

Nothing here is a video. The hash under each bank is a real commitment from the same mirror-web.js kernel the operator verifies against, and the verdict is really signed with a P-256 key generated in this tab and checked against its own public half. The demo secret is public, so these commitments are guessable — a real corridor secret, held only by the two banks, makes them not. The witness is simulated: no witness is connected to the live rail yet, so today the live operator answers undetermined where this panel says reconciled. Move a dial until the bands differ and the verdict turns divergent.

The route, end to end

Seven steps. Only commitments ever leave a bank.

Two of the seven run inside the bank and one at a witness with nothing to gain; everything the rail itself touches is an opaque commitment or a signature. The chips say where each step runs and what it leaves behind.

  1. 01

    Ratify a corridor

    Two banks agree a band table for one product on one route and ratify it by quorum; they import the same corridor secret into their HSMs and compare key check values at the ceremony. Mirror publishes no table of its own.

    The membersa signed governance event
  2. 02

    Band inside the bank

    The bander reads each price from the bank's own ledger, bands it against the ratified table with exact integer arithmetic, and derives a per-shipment salt from the corridor secret - in the HSM, where the key never leaves.

    The member's machine, no networknothing leaves yet
  3. 03

    Commit and sign

    Each band becomes a salted commitment, and the leg is signed with the member's key, so the operator is a witness to what each bank said, never a notary who could invent it.

    The member's machinea member-signed leg
  4. 04

    Compare, blind

    The operator receives commitments from both banks and compares them for equality. It holds no key, no table and no way to invert a commitment - nothing for a subpoena, an insider or a breach to take.

    The operatoropaque commitments only
  5. 05

    Ask a witness

    Two stakeholders agreeing is not a clear. A ratified witness with nothing to gain - a terminal's weight, an assayer's grade, customs - must agree on an axis it is competent for, or the reading stays undetermined.

    A witness's own keya signed measurement
  6. 06

    Sign the verdict

    Reconciled, divergent or undetermined - never a score. The record is signed over canonical JSON and appended to a transparency log, clears included, and states exactly what it does not prove.

    The operatora signed, logged verdict
  7. 07

    Push, and let anyone check

    The verdict is pushed to the banks whose legs authenticated - no one else - and anyone holding the published key can verify it offline, with the network unplugged, for as long as they keep it.

    Anyonethe same bytes, forever

What comes back

Three verdicts, and never a fourth.

No score, no probability, no traffic light. The verdict rule is checked across every configuration in the verdict certificate; ambiguity always lands on undetermined, never on a pass.

reconciled

The committed band labels agree - and at least one party with no stake in the price confirmed a competent axis (the independence gate). Not a proof that any label is the band of its true value.

divergent

The committed labels disagree on some axis. A reason to look, never a finding of laundering.

undetermined

The reading could not be judged; undetermined_reason says why. Routes to review, never to a clear.

What each party can learn

Stated exactly - including the unflattering part.

From the protocol specification, section 9, which a DPO should read twice. Mirror is not zero-knowledge and not MPC; it is blind to the operator by construction.

Read the specification
Each bankIts own figures, and whether the other leg landed in the same band - never the other bank's figure.
The counterpartyMore than the operator: the two banks share the per-shipment secret and a band has few values, so a counterparty can work out the other's band. The design protects against the operator and outsiders, not between the two parties to one trade - and says so.
The operatorThat two legs did or did not land in the same band, under the same table (not which); opaque commitments; counts; timestamps. Never a value, a band, a secret, a customer or a document.
A witnessIts own measurement, committed under the secret on the cargo's receipt. Nothing about the price.
A supervisorSigned verdicts and log heads it can verify offline, through the supervisor seat - never a raw trade.

Next

Run it on your own figures.

The console bands locally and shows you the bytes that would leave. The bench verifies what comes back.