ETHPoW team confirms it will use ChainID 10001 to avoid replay attacks on Mainnet
After Coinbase got involved to attempt to get ETHPoW to update its ChainID, the PoW team have finally announced it will use a different ChainID than Mainnet.
A member of the Coinbase team had to comment on the ETHPoW GitHub repository to get the team to clarify how the forked chain will be set up. Currently, the repository has not updated the ChainID of the network to one that differs from Ethereum Mainnet.
We've reached the point in the ETHPoW saga where the Coinbase protocol team themselves are submitting PRs to the repo to get the chainID issue solved.
And still no response from the team. pic.twitter.com/AhQ3FFWEm4
— frankie (@FrankieIsLost) September 9, 2022
Coinbase was not the only team attempting to resolve this issue. Four other pull requests are requesting the developers update the ChainID.
The ETHPoW team responded to Coinbase’s pull request on Sept. 9 and said:
“The chainid for ethw is 10001, which we will publish on our Twitter account. The code you mentioned in the above comments has to keep because chainID 1 is needed to validate chain data for blocks before the merge, and all chain data after the merge will be chainID 10001.”
This news will calm the nerves of many within the Ethereum ecosystem in the knowledge that there does not appear to have been malicious intent in not updating the ChainID.
Ethereum PoW and why it matters
A proof-of-work hard fork of Ethereum post-merge has been theorized several times over the past few weeks. Justin Sun, the founder of Poloniex, announced the exchange would support a hard fork of Ethereum by donating up to 1 million $ETHPoW to building a developer community on the new chain.
However, much has been misunderstood about The Merge and the move to proof-of-stake. The main Ethereum chain, known as Mainnet, will continue to run throughout The Merge, with a new consensus layer called the Beacon Chain being merged into the existing network.
A difficulty bomb will be applied, making mining on Mainnet pointless as it will be too hard to mine new blocks. Yet, that doesn’t mean miners have to stop mining. Miners can mine the upgraded proof-of-stake version of Ethereum, but they will be unable to receive any rewards or contribute significantly to block production.
For a proof-of-work version of Ethereum, miners will either have to revert to mining Ethereum Classic, which has a much smaller ecosystem and lacks any of the significant dApps found on Ethereum Mainnet or create a hard fork of the current Mainnet without the Beacon chain merge.
A new hard fork that retains the proof-of-work consensus method can happen anytime. Anyone can fork Ethereum from GitHub at any time. There has been some confusion around The Merge, with some people believing a proof-of-work version of Ethereum will continue, and the proof-of-stake version will be the fork.
Confusion for ETH users
Most of this confusion stems from the Ethereum Foundation’s original language of The Merge, which is referred to as ETH 2.0. This language has since been dropped to help users understand that no action needs to be taken by users with Ethereum in their non-custodial wallets.
Should users wish to participate in a hard fork of Ethereum, they will have to add a new chain to their wallets in a similar way you add Polygon, Avalanche, Optimism, or BNB Chain.
All of these chains are EVM compatible, meaning they share much of the same code as Ethereum Mainnet and a fully interoperable with the same public address being used across all chains.
A new ETHPoW chain will be similar to adding another EVM-compatible chain but with all the assets, smart contracts, and tokens being duplicated from Mainnet.
The difference between ETH and ETHPoW
One of the simplest ways to differentiate between Ethereum Mainnet and ETHPoW will be to use the ChainID. A ChainID is a number that identifies the chain to dApps and smart contracts so that they know which network they are interacting with.
However, the current GitHub repository that contains the ETHPoW code still has the same ChainID as Ethereum Mainnet. Without a change to this ChainID, dApps and smart contracts will be unable to recognize the ETHPoW chain, as any transactions will likely fail due to a lack of consensus from validators using this ChainID.
A further worry is a possibility of “replay attacks” whereby transactions are replayed across both chains opening up serious security concerns.
Now that the ChainID is confirmed to be 10001, users can prepare wallets once a suitable RPC address is released to receive ETHPoW airdrops.