ANCHOR_CHANNEL
v0.7+ pure-marker channel anchor. Carries an optional commitment_number NUMERIC and nothing else. The v0.6 design also embedded local/remote channel pubkeys, but no consumer ever validated them — they were a 66 B/spend silent data channel (closed audit finding E-002). Future Lightning consumers needing channel keys should compose ANCHOR_CHANNEL with a SIG/MULTISIG block, or extend the spec with an ANCHOR_CHANNEL_KEYED variant whose keys are sig-validated.
| Field | Data Type | Size | Side | Description |
|---|---|---|---|---|
| commitment_number | NUMERIC | 1-4 B | Conditions | Channel commitment number. Optional — the evaluator only inspects it if present, and rejects undecodable or ≤ 0 values. Omitting it makes the block a bare marker that always satisfies. |
PubkeyCountForBlock = 0 (v0.7+). No PUBKEY in conditions or witness, and no witness fields at all.
≤ 0 → UNSATISFIED| Condition | Result |
|---|---|
NUMERIC present but undecodable, or value ≤ 0 | UNSATISFIED |
NUMERIC absent, or NUMERIC present and > 0 | SATISFIED |
{
"type": "ANCHOR_CHANNEL",
"inverted": false,
"fields": [
{ "type": "NUMERIC", "value": 42 }
]
}Anchors a marker for commitment #42. Channel identity (local/remote keys) is not bound by this block in v0.7+; if you need binding, compose this block with a SIG/MULTISIG block whose signatures consume the channel keys.