Trust / Attestation / Verify

In-browser verifier.

Drag a Felarity signed attestation chain JSON onto the box below. Verification runs entirely in your browser using WebCrypto — your chain JSON never leaves this machine, and no Felarity server is contacted at verification time.

Drop chain JSON here or click to choose · .json file produced by Felarity export

How this works

The verifier executes the same three checks as our server-side endpoint:

  1. Walk each of the 8 nodes and recompute its node_hash as sha256(json.dumps(node_without_node_hash, sort_keys=True)). Any mismatch — a single character of tampering — invalidates the node.
  2. Confirm prev_hash chains from GENESIS through every node and matches the prior node's recomputed node_hash. The chain is hash-linked, so tampering at any node breaks every node downstream.
  3. Verify the Ed25519 signature over the final node_hash using the Felarity public key fetched from /.well-known/felarity-signing-key.pem. WebCrypto handles the cryptography; the verifier just feeds it bytes.

For the verifier's source, view the source of this page (Ctrl-U). It is a single static HTML file with ~250 lines of JavaScript and no external dependencies beyond the browser's WebCrypto.