Block Reference
ANCHOR
Anchor Family
TYPE 0x0501 · ANCHOR FAMILY

ANCHOR

Generic data anchor. Validates at least one typed parameter is present. Used to commit arbitrary structured data on-chain for attestations, timestamping, and data anchoring.

Anchor Invertible
ANCHOR field[0] field[1] ... field[N] fields.len() ≥ 1 → SATISFIED
FieldData TypeSizeSideDescription
field[0..N]AnyVariableConditionsAt least one typed field required. Accepts any field type (NUMERIC, HASH256, PUBKEY, etc.).

No witness fields required. The anchor block only validates that structured data is present in the conditions.

Variable size. Minimum: header + one field.

0x0501 0 N FIELD · var Conditions = 4 + field bytes
0x0501 0 0 Witness = 4 bytes (empty block)
Total (minimum) ~12 bytes
1.Read all typed fields from the conditions block
2.If fields is empty → ERROR
3.Otherwise → SATISFIED
ConditionResult
No fields present (empty conditions)ERROR
At least one typed field presentSATISFIED
Conditions (generic data anchor with hash + timestamp)
{
  "type": "ANCHOR",
  "inverted": false,
  "fields": [
    { "type": "HASH256", "hex": "a1b2c3d4...document hash...32 bytes" },
    { "type": "NUMERIC", "value": 1709856000 }
  ]
}

This anchors a document hash alongside a Unix timestamp, committing both values on-chain.

On-chain Attestations
Commit structured data on-chain as a tamper-proof record. Any combination of field types can be anchored, creating verifiable attestations without requiring custom block types.
Data Anchoring
Hash a document, dataset, or state snapshot and anchor it in a transaction. The blockchain provides an immutable timestamp proof that the data existed at a specific block height.
Timestamping
Commit a hash with a numeric timestamp field to create a provable record of when data was committed. Useful for intellectual property proofs, audit trails, and regulatory compliance.
← RECURSE_DECAY ANCHOR_CHANNEL →