Dated correction 2026-11-04 (fourth pass): AIP-22 (note to the correction of 2026-10-26) and AIP-7 (note to the note of 2026-10-28), one path of the second client until 2026-10-31 12:27Z (AIP-22 rule 3, correction of 2026-11-01)

This commit is contained in:
Aere Network 2026-11-04 10:37:53 +02:00
parent 65d0890c3a
commit 65a0bcc640
2 changed files with 4 additions and 0 deletions

View File

@ -202,6 +202,8 @@ From `H_fin` (a height at or above `H_id`), on every node that validates or read
**Note added 2026-11-01 (to the correction above).** Its last sentence, that the author of every consensus message is taken only from its verified post-quantum seal on all four message types, holds for a commit only in the form of rule 3 of this section: a commit's author is its index's `id` only when that `id` is the signer of its ECDSA commit seal. The author is given, and the commit relayed, before the post-quantum seal is verified (the Besu-derived client in `AerePqFinality.authorFromSeal`, the Nethermind-derived client in `AerePqFinality.CommitAuthor`), and the vote counts only if that seal verifies and the commit seal recovers to the same `id` (rule 3, and the correction of 2026-10-25 to section 5). So for a commit "only" does not hold, neither for the author nor at counting: whoever holds only a validator's ECDSA key can have commits relayed in its name, and they do not count. The correction above is kept as it was written.
**Note added 2026-11-04 (to the correction of 2026-10-26 above).** Its sentence that what `H_fin` changed is that the author of every consensus message is taken only from its verified post-quantum seal, on both clients and all four message types, had on chain 2800 one exception until 2026-10-31 12:27Z, which the correction of 2026-11-01 to rule 3 below describes: on one path of the second client (the Nethermind-derived one) the author of a proposal was taken at the height named in its payload, so for a payload height below 24,300,000 it was the signer of the ECDSA envelope. The correction above is kept as it was written.
**Correction added 2026-11-01 (to rule 3 above).** Until 2026-10-31 12:27Z the second client on chain 2800 derived the author of a proposal at the height named in its payload and then routed and voted on the block by the block's own number, without requiring the two to be equal. For a payload height below `H_fin` that author is the ECDSA envelope signer, so on that path rule 3 did not hold in the second client. The primary client was not exposed: it drops a message by its payload height before relaying it and requires the block number to equal that height. A commit on a false block was not possible on either client, because prepares are counted by the payload height and carry post-quantum seals; the reachable effect was a lost or silenced vote of the second client's validator. Exploitation was not measured. Since 2026-10-31 12:27Z the second client running on chain 2800 refuses at decoding, before authorship and before relay, any proposal whose block number differs from its payload height, and the same for the prepared block of a round-change; it also bounds a round-change's target round to [1, 1000] and its prepared round to [0, target), as the primary client does.
### 5. ECDSA out of the header

View File

@ -8,6 +8,8 @@
> **Note added 2026-11-04 (to Erratum 2 in the Errata section below).** Its clause that since block 24,300,000 every vote counts only with the verified post-quantum seal of its author had one exception until 2026-10-31 12:27Z: on one path of the second client (the Nethermind-derived one) the author of a proposal was taken at the height named in its payload, so for a payload height below 24,300,000 it was the signer of the ECDSA envelope. Since 2026-10-31 12:27Z that client refuses at decoding a proposal whose block number differs from its payload height. See the correction of 2026-11-01 to rule 3 in section 4 of AIP-22. The erratum is kept as it was written.
> **Note added 2026-11-04 (to the note of 2026-10-28 above).** Its clause that the second client enforced the seal on commit messages only until block 24,300,000 leaves out that, after that block and until 2026-10-31 12:27Z, on one path of the second client (the Nethermind-derived one) the author of a proposal was taken at the height named in its payload, so for a payload height below 24,300,000 it was the signer of the ECDSA envelope. Since 2026-10-31 12:27Z that client refuses at decoding a proposal whose block number differs from its payload height. See the correction of 2026-11-01 to rule 3 in section 4 of AIP-22. The note above is kept as it was written.
## Preamble
| Field | Value |