Proof21
EN
Menu

P21 / OFFLINE DEMO v0.1.0

See what a
check can catch.

Four synthetic examples. Actual Ed25519 signature checks. A separate local instruction. No network or wallet.

Educational demo—not the P21 SDK or a live transaction verifier. Never use these fixtures to approve a real payment.

Download. Inspect. Run.

Use Node.js 22 or newer. Save the single file and review it in a text editor before running it. No npm installation is needed.

Download proof21-demo.mjs ↓
node proof21-demo.mjs

Run from the directory containing the downloaded file.

node proof21-demo.mjs --json

Inspect source as text · SHA-256 checksums · ZIP with README

What you should see.

ExampleSignatureCheck
Matching sampleVALIDPASS
Wrong recipientVALIDFAIL
Missing evidenceVALIDINDETERMINATE
Tampered reportINVALIDINDETERMINATE

The wrong-recipient report has a valid signature. That is the point: authentic evidence can still describe the wrong action.

Even a matching sample stays REVIEW for acceptance. Synthetic evidence does not establish a real payment.

What actually runs?

The file verifies compact JWS fixtures with Node’s built-in cryptography. It compares their fields with a separately supplied local expectation and a fixed demonstration clock.

No private keys, dependencies, RPC calls, file writes, wallet access, analytics, or payments. Re-running the examples is safe but is not replay-protection testing.

What does not run?

Live chain verification, DMT/TAP state validation, Bitcoin sampling, hosted APIs, and production key/revocation policies remain future work.

The restricted JWS reader is not a general-purpose JOSE library or the final P21 receipt standard. A checksum from the same host is not independent proof of publisher identity.

Read the demo specification

Already have the repository?

From a checkout that includes this change, this npm command also works. It runs a local script; it does not install a package:

npm run demo

There is no published P21 npm package yet. Do not install a similarly named package assuming it is ours.

Local search · No prompts or queries sent to an AI provider

Privacy & preferences

Essential

Website delivery and security; a local record of your privacy choice for up to 180 days. No advertising identifier.

Save your motion preference on this browser. Optional; off unless you choose it.

Use static illustrations. Your device setting takes priority. No storage permission is needed.

Analytics & advertising

Currently off. Future cookies, pixels, or analytics will be disclosed and require a new choice where applicable. These buttons do not authorize future tracking.

Privacy · Cookies