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.
Blind operator
Receives two hashes. Compares them. That is all it can hold.
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.
-
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 -
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 -
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 -
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 -
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 -
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 -
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.
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.
The committed labels disagree on some axis. A reason to look, never a finding of laundering.
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 bank | Its own figures, and whether the other leg landed in the same band - never the other bank's figure. |
|---|---|
| The counterparty | More 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 operator | That 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 witness | Its own measurement, committed under the secret on the cargo's receipt. Nothing about the price. |
| A supervisor | Signed 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.