После того, как Coinbase вмешалась, пытаясь заставить ETHPoW обновить свой ChainID, команда PoW наконец-то объявила, что будет использовать ChainID, отличный от Mainnet.
Члену команды Coinbase пришлось комментировать репозиторий ETHPoW на GitHub, чтобы заставить команду прояснить, как будет устроена форкнутая цепочка. В настоящее время в репозитории не обновлен ChainID сети, отличающийся от Ethereum Mainnet.
Мы достигли той точки в саге о ETHPoW, когда команда протокола Coinbase сама подает PR в репозиторий, чтобы решить проблему с идентификатором цепи.
И до сих пор нет ответа от команды. pic.twitter.com/AhQ3FFWEm4
— frankie (@FrankieIsLost) Сентябрь 9, 2022
В тестовой сети ETHPoW используется ChainID 10002, не используемый ни одной другой цепочкой. Ethereum Mainnet имеет ChainID 1, а для цепочки PoW доступно множество других номеров.
Coinbase была не единственной командой, пытавшейся решить эту проблему. В четырех других запросах на исправление разработчики просят обновить ChainID.
Команда ETHPoW ответила на запрос Coinbase 9 сентября и заявила:
«Chainid для ethw — 10001, который мы опубликуем на нашем аккаунте в Twitter. Код, который вы упомянули в комментариях выше, нужно сохранить, потому что chainID 1 необходим для проверки данных цепочки для блоков до слияния, а все данные цепочки после слияния будут иметь chainID 10001. «
Эта новость успокоит нервы многих в экосистеме Ethereum, поскольку в отсутствии обновления ChainID, похоже, не было злого умысла.
Ethereum PoW и почему это важно
За последние несколько недель несколько раз выдвигались теории о жестком форке Ethereum после слияния proof-of-work. Джастин Сан, основатель Poloniex, объявил, что биржа поддержит жесткий форк Ethereum, пожертвовав до 1 миллиона $ETHPoW на создание сообщества разработчиков новой цепи.
Однако многое в отношении The Merge и перехода на proof-of-stake было понято неправильно. Основная цепочка Ethereum, известная как Mainnet, будет продолжать функционировать в течение всего периода The Merge, при этом новый уровень консенсуса, называемый Beacon Chain, будет присоединен к существующей сети.
Будет применена бомба сложности, которая сделает майнинг в Mainnet бессмысленным, поскольку добывать новые блоки будет слишком сложно. Тем не менее, это не означает, что майнеры должны прекратить добычу. Майнеры могут добывать обновленную версию Ethereum с доказательством ставки, но они не смогут получать вознаграждения или вносить значительный вклад в производство блоков.
В случае с версией Ethereum, работающей по принципу доказательства, майнерам придется либо вернуться к добыче Ethereum Classic, который имеет гораздо меньшую экосистему и не имеет ни одного значимого dApp, присутствующего в Ethereum Mainnet, либо создать хард-форк текущего Mainnet без слияния цепочки Beacon.
Новый хард форк, сохраняющий метод консенсуса proof-of-work, может произойти в любое время. Любой желающий может форкнуть Ethereum с GitHub в любое время. Вокруг слияния возникла некоторая путаница: некоторые считают, что версия Ethereum, работающая по методу proof-of-work, сохранится, а версия, работающая по методу proof-of-stake, станет форком.
Смятение для пользователей ETH
Большая часть этой путаницы связана с тем, что Ethereum Foundation изначально использовала язык The Merge, который называется ETH 2.0. С тех пор эта формулировка была отменена, чтобы помочь пользователям понять, что пользователям, у которых Ethereum находится в кошельках без хранения, не нужно предпринимать никаких действий.
Если пользователи захотят принять участие в жестком форке Ethereum, им придется добавить новую цепочку в свои кошельки аналогично тому, как вы добавляете Polygon, Avalanche, Optimism или BNB Chain.
Все эти цепи совместимы с EVM, что означает, что они используют практически тот же код, что и Ethereum Mainnet, и полностью совместимы друг с другом, причем для всех цепей используется один и тот же публичный адрес.
Создание новой цепи ETHPoW будет аналогично добавлению еще одной EVM-совместимой цепи, но все активы, смарт-контракты и токены будут дублироваться из Mainnet.
Разница между ETH и ETHPoW
Одним из самых простых способов отличить Ethereum Mainnet от ETHPoW будет использование ChainID. ChainID — это номер, который идентифицирует цепочку для dApps и смарт-контрактов, чтобы они знали, с какой сетью они взаимодействуют.
Однако текущий репозиторий GitHub, содержащий код ETHPoW, по-прежнему имеет тот же ChainID, что и Ethereum Mainnet. Без изменения этого ChainID, dApps и смарт-контракты не смогут распознать цепочку ETHPoW, так как любые транзакции, скорее всего, не состоятся из-за отсутствия консенсуса валидаторов, использующих этот ChainID.
Еще одним поводом для беспокойства является возможность «атак воспроизведения», при которых транзакции воспроизводятся в обеих цепочках, что открывает серьезные проблемы с безопасностью.
Теперь, когда ChainID подтвержден как 10001, пользователи могут подготовить кошельки, как только будет выпущен подходящий RPC-адрес для получения ETHPoW airdrops.