Anchored-batch verification
Batch and anchoring are additional layers after the home threshold signature:
- the home network signs the attestation;
- a batch commits attestation hashes to a Merkle root;
- peer networks may sign that root as cross-anchors; and
- external providers may record the root.
Cross-anchors
A CrossAnchor contains the home batch, witnessing_network, a peer-signed
witness_attestation, and a timestamp. Its peer attestation must sign the
batch's Merkle root and use the witnessing network's ID. Offline verification
requires a matching peer configuration and checks the configured per-peer
minimum. The configured federation threshold counts distinct verified peer
networks.
The Federated level is only reached when home batch inclusion verifies and
the federation policy threshold is met. Federation is additional durability,
not Byzantine consensus; it does not protect against collusion by enough
witnesses or operators.
External anchors
witness anchors <64-hex-sha256>
witness anchors <64-hex-sha256> --output json
GET /v1/anchors/{hash} returns ExternalAnchorProof records. Supported
provider labels are internet_archive, trillian, dns_txt, and
blockchain. Each record has provider, timestamp, provider-specific JSON
proof, and optional anchored_data.
The CLI maps a gateway 404 to an empty display. Therefore an empty result can
mean unknown, known but unbatched, or no completed external anchors. A proof
object is counted as present by verify-proof; it is not provider verification.
Check URLs, transactions, DNS records, or provider transparency proofs
independently. Anchoring does not prove that the hashed content is genuine or
will remain available.