DocumentsWhat comes next

Commission brief: an independent review of the kernel

3 min readSource commission-review.mdsha256 adfc025377d70683…

Status: not commissioned. No reviewer, firm or university group has been engaged and no budget has been set. Nothing on this site claims an audit, a certification or a formal proof. This is the brief we would send, so that whoever reviews Mirror reviews the claims that matter, against the evidence that already exists.

1. Why a review, and why this one#

Every claim Mirror makes is meant to be checkable by the reader: a published spec, signed records anyone can verify offline, and a test suite that fails the build when a refusal stops holding. That is necessary and not sufficient. Tests written by the author share the author's blind spots. A bank's model-risk team, and the strategy reviews this project has received, ask the same thing: has anyone without a stake looked?

This brief asks for a bounded review of the claims that, if false, would make the product dangerous rather than merely weaker.

2. The claims under review#

RefClaimWhere it livesWhat would falsify it
C1The operator cannot learn a value or a band from what it receiveskernel/mirror-kernel.js (commitLeg), the wire guard in server/core.js, Boundary 5 of the registerAny route accepting a raw field; a commitment invertible without the corridor secret; a field leaking the band
C2Ambiguity never clears: malformed, missing or contradictory input ends undetermined or divergent, never reconciledreconcile, the independence gate, the verdict rule (/verdict-certificate.json)Any input that reaches reconciled without every required leg agreeing and the gate met
C3Every signed record verifies offline, and a record cannot be altered without its signature failingkernel/envelope.js, kernel/mirror-sign.jsA canonicalisation ambiguity; a field outside the signed bytes; a verifier accepting a high-S or wrong-curve signature
C4The transparency log is append-only: a consistency proof cannot be produced across a rewritten historykernel/mirror-anchor.jsTwo trees with a valid consistency proof where the older is not a prefix
C5The refusals hold: no score, no filing decision, no volume fee, no invented price, no custodykernel/mirror-cannot.js, and the code and test each of its 39 refusals namesAny route or record that produces one
C6Two independent implementations produce identical bytesThe conformance vectors, server/sdk-polyglot.test.jsA vector the reference and an independent implementation answer differently
C7A release rebuilds byte-for-byte from sourceserver/reproduce.js, the provenance statementA subject that does not rebuild identically on a clean machine

Out of scope: commercial claims, the website's design, the hosting providers' own security, and anything a bank does inside its perimeter.

3. What we would hand over#

  • The full source of the release under review, its provenance statement and its software and cryptographic bills of materials.
  • The protocol specification and the boundary register, including every limit the project already admits.
  • The conformance vectors and the instructions to run the whole suite (node kernel/test.js) and the reproduction (node server/reproduce.js).
  • Write access to nothing. The reviewer runs everything on their own machines.

4. What we would ask back#

  • For each claim: held, held with conditions (stated), or failed (with a reproduction).
  • Any finding outside C1–C7 the reviewer considers material.
  • Permission to publish the report in full, including failures, beside the threat-model review history. A finding is fixed with a test that pins it, and the fix is listed there.

5. What it would and would not let anyone say#

A clean report would let a bank say that a named, independent party checked these seven claims on this release. It would not be a certification, it would not cover later releases, and it would not make Mirror catch collusion (Boundary 3) or a scheme its tables cannot see (Boundary 1). If a report is ever published, this page will link it; until then, this page is the whole of what exists.

See also the zero-knowledge commission brief, the one cryptographic extension Mirror will not hand-roll.