Evidence infrastructure for CRA Art. 14 and Machinery Reg. 2023/1230
IAAIndustrial Autonomous Assurance
Menu
PricingPrivacy
FREE · NO ACCOUNT · NOTHING STORED

Check an evidence file you were handed

An auditor, an insurer or a customer sends you a JSON export. This page tells you which facts can be established from the file alone — and, just as plainly, which cannot. It never shows a bare “valid”: a file can be perfectly self-consistent and still not be the operator's ledger, or say nothing about how the machine behaved.

Drop a JSON evidence file here, or

Signed attestations only: the issuer's public key

A signature can only be checked against a public key you got somewhere other than the file — a file carries a key fingerprint, not the key. Without one, only the log's structure is checked, the signatures are reported as not verified, and the result is never shown as a pass. Paste a public key only: a private key is refused and never sent.

No API is configured for this site, so this button cannot check anything.

Nothing is stored. The file is sent to the Assurance API, checked in memory and dropped; the only record is the ordinary access-log line (time, path, status — never the file; a public key you paste for an attestation check travels in a request header, which the access log does not record). It counts as one of your free daily checks from this address.

The result lists three things separately, and never as a single tick: the facts a check established, the assumptions a pass still takes on trust, and every check not performed.

What it can check

Three kinds of file, and the limit of each

Ledger export

A case or whole-ledger export. Checked: every record's evidence still matches its hash, no field was added outside the seal, the actor column agrees with the sealed actor, each link matches its own content and its predecessor, and a whole-ledger file starts at genesis with no gaps and ends at the head it names. Not shown: that this is the operator's ledger (that needs a signed head attestation), that a one-case export is complete, or who the named people are.

Machine verification bundle

Checked: the sealed record still matches its hash, its verdict agrees with its own checks, and the readable envelope and result copies match what was sealed. Reports the recorded assurance tier and what it does and does not allow you to claim. Not shown: that the machine behaved as recorded — that needs the original envelope and trace, run offline.

Signed head attestation log

On its own, only structure can be checked: numbering, chaining, non-decreasing length. A signature needs the issuer's public key from a channel other than the file; paste it to check signatures. Not shown: that any ledger still holds what was signed for — compare the head with a ledger export.

Check it offline

Download the verifier — no trust in this page required

This page runs the same code as the commands below, on a server you do not control. For a result that does not depend on us, run it yourself. They read the file you name, open no network connection and need no account.

From a checkout of the source

git clone https://github.com/iceccarelli/neuralbridge.git && cd neuralbridge
pip install -e '.[assurance-attest]'
python -m assurance evidence verify export.json                 # ledger export
python -m assurance machine check bundle.json                   # machine bundle
python -m assurance attest verify --log attestations.jsonl --public-key issuer.pub

Where the file comes from: a Register or Cell account downloads a case export from the workspace (GET /v1/cases/{id}/export). The same free check is POST /v1/evidence/verify, listed on /developers: send the file as the body with Content-Type: application/json. In the answer, ok is true only when every check that kind of file needs was run and none found a problem — an attestation log checked without the issuer's public key is never ok. If this site has no API configured, the button above says so rather than faking a result.