The pull request carries a placeholder number. Not EIP-8394, not a formal specification β a working document with 9999 in the filename. PR #12235 opened on August 24. By August 26, it remained unmerged, a draft circulating among core developers. The subject: the Ethereum staking deposit contract, the single entry point for every validator since the Beacon Chain launched in December 2020.
The proposal is deceptively simple on its face. It introduces a new credential format for validators, one that treats non-BLS signatures as opaque data. It sets a variable-length field with an 8,192-byte ceiling. It defines three modes: disabled, BLS enabled, and BLS retired. And once that third mode is activated, there is no going back. The switch is one-way.

Code speaks louder than promises. This is a framework with no cryptography inside it. The actual post-quantum signature scheme β likely leanXMSS, paired with a verification VM called leanVM β is deferred to a separate proposal. The deposit contract is being prepared for a future that has not yet been specified.
I have spent thirteen years watching Ethereum's core protocol evolve. I audited 0x Protocol v2 in 2018, three months of reading order-routing logic line by line. I modeled the Terra collapse in 2022, watching the death spiral emerge from the peg maintenance code itself. What I have learned is this: the most consequential changes in this industry are rarely the loud ones. They are the quiet infrastructure shifts that nobody prices in until years later. PR #12235 is one of those shifts.
Context: The Deposit Contract as a Bottleneck
The deposit contract is not glamorous. It is a smart contract on Ethereum's execution layer that accepts 32 ETH and a validator public key, then emits a log that the consensus layer picks up to register a new validator. Every staker β from Lido's node operators to Coinbase's institutional custody desks to the solo staker running a single validator from a basement β passes through this contract. It is the funnel.
Since the Beacon Chain went live, that funnel has accepted exactly one credential format: BLS12-381. This is a pairing-friendly elliptic curve signature scheme that supports aggregation, which is why Ethereum chose it. Aggregation matters because the consensus layer needs to verify thousands of signatures per epoch, and BLS allows them to be compressed into a single aggregate. It is efficient. It is elegant. And it is vulnerable to quantum computers.
Shor's algorithm, running on a sufficiently large quantum machine, can solve the discrete logarithm problem that underpins BLS and every other elliptic-curve scheme. The timeline is debated. Ethereum's own roadmap estimates a credible threat window around 2029. That is not a distant future. That is one full market cycle away. The core developers are not waiting for the threat to materialize; they are building the migration path now.
This is where PR #12235 fits. It is the first concrete step in a post-quantum migration roadmap that includes leanXMSS β a hash-based signature scheme with post-quantum security β and leanVM, a virtual machine designed to efficiently aggregate and verify those signatures. The proposal does not implement any of that. It simply makes the deposit contract capable of accepting credentials it cannot yet understand.

Core: A Systematic Teardown of the Proposal
Let me walk through the technical mechanics, because the details matter more than the narrative.
The Opaque Data Approach
The proposal's central design decision is to treat non-BLS credentials as opaque data. The deposit contract will accept a byte string, store it, and forward it to the consensus layer without interpreting it. The validation of that data β signature checks, format verification, state representation β is explicitly deferred to a future proposal.
This is a deliberate architectural choice. It decouples the deposit interface from the cryptographic scheme. The contract does not need to know what a leanXMSS signature looks like. It only needs to know that the field is variable-length and capped at 8,192 bytes. The security of the new credential format is defined elsewhere, in a separate design document that has not yet been written.
From a risk perspective, this is both the proposal's strength and its weakness. The strength is that it reduces the current complexity. The deposit contract does not need to implement new cryptography, which means the attack surface does not expand. The weakness is that the proposal's success depends entirely on a future scheme that does not yet exist. You are building a socket for a plug that has not been manufactured.
The Three Modes and the One-Way Switch
The proposal defines three operational modes for the deposit contract. The first is disabled, which is the current state. The second is BLS enabled, which allows both legacy BLS credentials and the new opaque format. The third is BLS retired, which disables BLS credentials entirely.
The critical detail is that the transition from BLS enabled to BLS retired is one-way. Once BLS is retired, it cannot be re-enabled. This is not a toggle; it is a one-way door.
This design choice signals something important about the core developers' intent. They are not planning for a graceful coexistence of BLS and post-quantum schemes indefinitely. They are planning for a complete migration. The one-way switch is a commitment mechanism β it forces the ecosystem to move forward rather than linger in a hybrid state. It also means that any validator client, staking service, or wallet that fails to adapt before the switch is flipped will be locked out of new deposits.

Based on my audit experience, this is the kind of design decision that looks clean on paper but creates operational friction in practice. I have seen protocol upgrades fail not because the code was wrong, but because downstream participants did not migrate in time. The one-way switch converts a technical migration into a coordination problem. And coordination problems in decentralized ecosystems are the hardest problems to solve.
The 8,192-Byte Ceiling
The proposal sets a maximum field length of 8,192 bytes for the new credential format. This is a significant increase from the fixed-size BLS format, which is 48 bytes for the public key plus associated metadata. The increase accommodates the larger signatures typical of hash-based post-quantum schemes.
But here is the question that the proposal does not answer: is 8,192 bytes enough? Hash-based signature schemes have variable sizes depending on the security parameter and the number of allowed signatures. Some configurations of XMSS and its variants can produce signatures in the range of 2,500 to 4,000 bytes. Others, with higher security margins, can exceed that. The 8,192-byte ceiling is a guess β an educated one, but a guess nonetheless. If the eventual leanXMSS configuration requires more space, the deposit contract will need another upgrade.
This suggests that the proposal is explicitly temporary. It is scaffolding, not a finished structure. The core developers are building a flexible interface precisely because they do not yet know the final specifications. The 8,192-byte ceiling is a placeholder in the same way that the 9999 in the filename is a placeholder.
The Coordination Fork
Any change to the deposit contract requires a coordinated fork across both the execution layer and the consensus layer. The deposit contract lives on the execution layer, but its logs are consumed by the consensus layer. A change to the credential format touches both. This is not a simple smart contract upgrade; it is a network-wide protocol change that requires every node client to implement the new rules simultaneously.
The proposal acknowledges this complexity but does not resolve it. The execution layer changes are relatively straightforward β modify the deposit contract to accept the new format. The consensus layer changes are more involved β the beacon chain must be able to process and store the new credentials, even if it does not yet validate them. The coordination between these two layers is where implementation risks concentrate.
I have seen this pattern before. In 2020, during the DeFi Summer, I analyzed yield-farming protocols and found that the ones with the most complex tokenomic structures were the ones most likely to fail under stress. The same principle applies here: the more moving parts in a protocol change, the higher the probability of a coordination failure. The deposit contract upgrade is not the hardest fork Ethereum has executed β the Merge was harder β but it is a non-trivial engineering effort that will require careful sequencing.
What the Proposal Does Not Address
The proposal is silent on several critical questions. First, it does not define how the new credentials will be validated. The opaque data approach means that the deposit contract accepts the bytes, but something else must eventually verify them. That something is the future leanXMSS/leanVM proposal. Until that proposal exists, the new credential format is a promise without a verification mechanism.
Second, the proposal does not address the state representation of the new credentials. How will the consensus layer store and index them? How will they interact with the existing validator registry? These are implementation details that will be defined later, but they are not trivial. The way credentials are stored affects everything from block production to slashing conditions.
Third, the proposal does not address the migration of existing validators. It only affects new deposits. The existing validator set β roughly one million validators as of this writing β will continue using BLS credentials. This is a deliberate choice to reduce risk, but it means that the network will operate in a hybrid state for an extended period. The one-way switch to BLS retired will only be flipped once the existing validators have been migrated, which is a separate and more complex process.
Contrarian: What the Bulls Got Right
I have spent most of this analysis cataloging the proposal's uncertainties. But intellectual honesty requires me to acknowledge the counterargument. The bulls β the core developers and researchers pushing this forward β have a coherent case.
The first point in their favor is that the proposal is appropriately scoped. It does not try to solve the post-quantum problem in one step. It creates a framework, establishes the interface, and defers the hard cryptographic problems to dedicated proposals. This is the correct way to manage complex protocol evolution. You do not rewrite the deposit contract and the signature scheme in a single pull request. You stage the changes so that each step can be reviewed, tested, and audited independently.
The second point is that the opaque data approach is genuinely clever. By treating non-BLS credentials as uninterpreted bytes, the proposal avoids committing to a specific cryptographic scheme. This means that if leanXMSS fails to materialize, or if a better scheme emerges, the deposit contract does not need to change. The flexibility is real, not rhetorical.
The third point is timing. The 2029 target for post-quantum readiness is not arbitrary. It aligns with the broader industry timeline for quantum threat emergence. Starting the migration now β in 2025 β gives the ecosystem four years to design, test, and deploy the new scheme. That is a reasonable lead time for a change of this magnitude. Waiting until the threat is imminent would be reckless.
I am skeptical by nature. My default assumption is that complex protocol changes will encounter delays, design disputes, and implementation bugs. But I also recognize that the core developers have a track record of delivering. The Merge, the Shapella upgrade, the Dencun upgrade β these were all complex, multi-year efforts that shipped. The deposit contract upgrade is smaller in scope than any of those. The probability of success is higher than my instinct suggests.
Takeaway: What to Watch
The proposal is a draft. It has not been accepted as an EIP. It has not been through formal review. It has not been audited. The placeholder number 9999 is a reminder that this is early-stage work. But the direction is clear.
Follow the gas, not the narrative. The signals to track are concrete: the formal submission of EIP-8394, the publication of the leanXMSS specification, the discussion of the BLS retirement timeline in All Core Devs calls, and the response from validator clients and staking services. Each of these is a verifiable event that will tell you whether the migration is on track.
Logic outlives the hype cycle. The post-quantum narrative is cold right now β market attention is elsewhere, chasing the latest token launch or AI crossover. But the infrastructure work is proceeding regardless. In 2029, when the quantum threat becomes a boardroom topic, the chains that prepared will have a structural advantage. Ethereum is preparing. The question is whether the rest of the ecosystem is paying attention.
Trust is verified, not given. This proposal asks the market to trust that the future cryptographic scheme will be sound, that the coordination fork will execute cleanly, and that the one-way switch will not strand anyone. That trust must be earned through transparent specifications, rigorous audits, and clear communication. The draft is a good start. The work is just beginning.
The deposit contract is opening a door it cannot close. Whether that door leads to a smooth migration or a messy coordination problem depends on the details that have not yet been written. I will be watching the GitHub repository, the research forums, and the client implementations. The data will tell the story. It always does.