I think the registry update question, the smart-contract withdrawal-address issue raised above, and the compromise/revocation point in the latest reply may all reduce to one state-transition rule.
The post already proposes a sequence/version field for re-registration, so the missing question seems less like “how do we version keys?” and more like:
what authority is allowed to advance that version?
I think the stable rule should be that the validator’s current withdrawal authority controls the PQ registry entry, while the registered PQ key is a duty credential rather than the authority that controls its own successor.
Conceptually:
Registry[v] = (generation, credentials, status)
accept update(v, g+1) iff
authorized_by_current_withdrawal_authority(v)
&& generation == Registry[v].generation + 1
&& new credentials satisfy their required PoP
A revocation can advance the generation while installing no active duty credential, and a subsequent authorized registration can install a replacement. Once generation g+1 is accepted, generation g can never become current again.
This seems to cover several currently separate cases with the same transition:
ordinary rotation;
re-registration after a hash-function change;
explicit compromise revocation before XMSS leaf exhaustion;
eventual replacement of the PQ duty scheme itself.
It also seems to resolve the smart-contract withdrawal credential problem. For execution withdrawal credentials, rather than requiring an “L1 signature from the withdrawal address,” registration/update could use the execution-request authorization pattern already used for validator control: the execution caller is the withdrawal authority, and the resulting request is processed by the CL.
EIP-7002 already uses this pattern specifically so both EOAs and smart contracts that own withdrawal credentials can control validator actions without requiring a contract to manufacture an ECDSA signature.
So the lifecycle would be:
current Ethereum withdrawal authority
-> authorizes registry generation
registry generation
-> contains PQ duty credential(s)
next authorized generation
-> rotates / replaces / revokes those credentials
This would keep the registry lifecycle independent of the still-open XMSS/hash/field/aggregation decisions. Those choices still need to be made for consensus, but they would no longer define validator ownership or re-registration semantics.
Given that the registry is now explicitly on the I* path, would it make sense to make this authorization + monotonic-generation rule part of the registry invariant before settling the remaining cryptographic parameters?
| # | Наименование новости | Тональность | Информативность | Дата публикации |
|---|---|---|---|---|
| 1 | Scaling Ethereum with recursive STARKs and the Trustless Log Index | 0 | 6.14 | 15-09-2026 |
| 2 | Bloom Filters And Keyed Nonces | 0 | 8.23 | 08-09-2026 |
| 3 | Cryptographic canaries and backups | 0 | 8.77 | 18-09-2026 |
| 4 | Evidence Review Framework for Project Applications in Decentralized Guilds/Agent Systems | 0 | 8 | 19-09-2026 |
| 5 | ERC-8354: Confidential Agent Policy Verdicts | 0 | 12.87 | 24-07-2026 |
| 6 | [Idea/Draft] Protocol-Level Smart Contract Invariant Protection via Pre-Mempool Validation (Security Manifests) | 0 | 10.76 | 22-07-2026 |
| 7 | Timelock Account recovery: A trust minimized recovery system for Smart Accounts | 0 | 6.22 | 14-07-2026 |
| 8 | EIP-7906: Transaction Assertions via State Diff Opcode | 0 | 7 | 09-07-2026 |
| 9 | ERC-8335: Account-Level Transfer With Authorization | 0 | 7 | 10-07-2026 |