Proof21
EN
Menu
Browse documentation
Protocol specification

Scale and Bitcoin timing

Read Markdown

P21 separates agent execution from Bitcoin commitment timing. Reusable block data, cached evidence, and local verification keep ordinary checks off-chain. A fresh Bitcoin transaction, inscription, or mint is not required for each request.

Separate the fast and slow paths

Ordinary supported checks can complete without waiting for a new Bitcoin block. An optional timestamp can remain PENDING until independently verifiable. A selection requiring future Bitcoin data must wait for its specified source and confirmation policy. Approximate block cadence is not a deadline.

Batch commitments

A Merkle commitment can represent many report digests in one root. An illustrative balanced binary tree of one million SHA-256 leaves has a 32-byte root and roughly 20 sibling hashes per inclusion path: approximately 640 bytes before other proof metadata. This is arithmetic, not a throughput benchmark.

Batching reduces commitment overhead; it does not eliminate storage, bandwidth, indexing, backups, or data availability. At an illustrative 2,000 bytes per report, one million reports per day require about 2 GB/day before evidence and replicas.

Shared-source risk

Generating many outputs from one public seed does not generate independent entropy. A common seed can create aggregate incentives to influence many jobs. Selection profiles must assess total value affected, not just the fee for one request.

Performance measurement

Performance reporting separates evidence-fetch latency, cache hit rates, evaluation time, local verification time, payload size, cost per job, and reorganization recovery. Published results identify the exact implementation, method, and workload; illustrative arithmetic is not a throughput claim.

Sources: Bitcoin block reference, OpenTimestamps, Bitcoin Beacon research.

<!-- p21-source-payment-v08 -->

Cache definitions, validate chain status

Once validated under a pinned profile, element content can be cached by inscription ID and content digest. Fetch each required block once and reuse it across off-chain jobs. Revalidate canonical-chain status, index coverage and applicable rules; reorganizations invalidate affected cache entries and pending outcomes. A cached name is not permanently valid regardless of chain history.

Receipt throughput is primarily an application-compute, storage and delivery concern, not one Bitcoin transaction per proof. Fresh Bitcoin-dependent selection still waits for the specified source and confirmation policy. Optional Merkle batches anchor receipt digests; anchoring records prior existence, not correctness, completeness or data availability. There is no published P21 throughput benchmark.

Cost model

Reading public Bitcoin data and evaluating a supported element do not require a protocol mint fee. A voluntary new registration is an inscription with network fees and potentially a service charge; its acceptance and uniqueness must be checked before spending. Budget using quoted transaction virtual size times current sat/vB, plus service fees and the output value kept as inscription postage. Do not publish a stale dollar fee as a live quote.

Ordinary off-chain receipts incur infrastructure costs, not a compulsory inscription each. NAT funding has its own Bitcoin/TAP settlement costs, amortized across service-credit usage; USDC has its chosen network/facilitator costs. API hosting, index operation or provider access, storage, bandwidth, security review, monitoring and support remain real costs.

[1] https://digital-matter-theory.gitbook.io/digital-matter-theory/introduction/digital-elements/.element-registry

[2] https://github.com/Trac-Systems/ord-tap/blob/b8f6ea35cf6b9d405d4db7c58555e3c8ab33e8cd/src/index/updater/inscription_updater/tap/ops/dmt_element.rs

[3] https://digital-matter-theory.gitbook.io/digital-matter-theory/introduction/nat-use-cases/usdnat-method-1-live

[4] https://digital-matter-theory.gitbook.io/digital-matter-theory/introduction/non-arbitrary-tokens-nats/nat-token-transfer

[5] https://docs.x402.org/core-concepts/network-and-token-support

[6] https://github.com/Trac-Systems/ord-tap/blob/b8f6ea35cf6b9d405d4db7c58555e3c8ab33e8cd/README.md

[7] https://arxiv.org/abs/1605.04559

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