Что даст хардфорк Istanbul Эфириуму?
Активация обновления Istanbul в основной сети Ethereum произойдет на блоке №9056000. Ориентировочно это случится 4 декабря нынешнего года. Ожидается, что это будет еще один шаг к решению основных проблем Ethereum: масштабированию и высоким комиссиям. Что изменится в работе сети Ethereum и как хардфорк Istanbul отразится на работе проектов, запущенных на базе сети второй по капитализации криптовалюты, разбираемся в материале.
Содержание публикации:
Зачем Ethereum обновляться
Главная проблема Ethereum — это масштабируемость: сеть уже переполнена и работает на полную мощность. Чем популярнее сеть, тем менее эффективной она становится. В Ethereum комиссия за переводы зависит от количества потраченных ресурсов («газа») и их стоимости (цены «газа»). При этом коррекционный механизм только один — рост цен. Из-за этого транзакции проходят все медленнее, а стоимость «газа» (комиссии за транзакцию) растет. Так, к сентябрю 2019 года стоимость «газа» в сети Ethereum выросла в 30 раз — с $0.004 до $0.012, а стоимость транзакции — до $0.3 (что дорого для крупной сети). Так что если не решить проблему, то рано или поздно разработчики будут вынуждены перейти на другой блокчейн.
Относительно медленный и уже не такой эффективный как раньше, Ethereum по-прежнему рассматривается как универсальный блокчейн, который позволяет создавать практически все. Однако в других сетях начинают появляться новые, более специализированные решения. Конкуренты — TRON, EOS, NEO и Steemit, TomoChain и Binance Chain — уже давно претендуют на трон Ethereum. В нынешнем виде Ethereum зашел в технологический тупик. Чтобы выбраться из него, разработчики уже несколько лет работают над переходом сети в состояние Ethereum 2.0.
Istanbul — общесистемное обновление Ethereum, которое изменит несколько аспектов функциональности сети, включая процесс хранения данных, протокол майнинга и выполнение кода. Хардфорк позволит сети стать дешевле, быстрее и более масштабируемой. Istanbul — последнее обновление в серии Metropolis, в то время как следующее обновление Berlin запустит Ethereum 2.0.
Когда активируют обновление Istanbul
Активация Istanbul переносилась уже несколько раз: сначала на 14 августа, потом на 4 сентября и далее на 16 октября. И вот разработчики определились с новой датой — 4 декабря.
Стоит отметить, что в январе 2019 года во время последнего общесистемного обновления Constantinople активацию обновления мэйннета отложили на месяц из-за критической уязвимости кода, обнаруженной всего за 48 часов до запланированного апгрейда. Тогда 10% майнеров все равно отделились от основной сети, а запуск Constantinople произошел одновременно с активацией обновления St.Petersburg. В связи с чем на случай неожиданных проблем разработчики назначили запасную дату активации Istanbul — 8 января. Месяца должно хватить, чтобы все поправить.
Одновременно с основным обновлением будет активирован апгрейд EIP 2124 (Ethereum Improvement Proposal — предложение по обновлению Ethereum) — идентификатор форка для проверки совместимости сетей. Он запускает механизм, определяющий, через какую именно версию программного обеспечения работает узел сети. Это поможет майнерам выбрать нужный блокчейн — именно тот, который поддерживает большинство.
В сентябре Istanbul был активирован в тестовой сети Ropsten. Но из-за неожиданно быстрого подтверждения блоков, некоторые майнеры не успели обновить свое программное обеспечение, и сеть разделилась на две цепочки.
Что изменится в коде Ethereum 4 декабря
Разработчики решили активировать Istanbul в два этапа. 4 декабря стартует первый из них, в рамках которого будут запущены шесть утвержденных принципиальных изменений кода, или EIP. Они снизят и оптимизируют расходы на «газ», позволят Zcash быть совместимым с Ethereum, защитят сеть от дублирования транзакций.
В первом квартале 2020 года разработчики переведут сеть с алгоритма майнинга с PoW на ProgPoW (EIP-1057) и запустят изменения в виртуальной машине Ethereum. Это должно снизить преимущество ASIC-майнеров и решить основные проблемы Ethereum.
Разберем шесть нововведений в коде, которые будут запущены 4 декабря. В основном это технические изменения для снижения стоимости «газа».
- EIP-152: добавление функции сжатия Blake2 F для предварительной компиляции, оптимизации работы блокчейна и осуществления ретрансляционных и атомарно-своповых транзакций между Zcash и Ethereum.
- EIP-1108: снижение затрат на прекомпиляцию (пересборку) «газа», что должно увеличить конфиденциальность и масштабируемость сети Ethereum.
- EIP-1344: добавление кода операции ChainID. Это позволит смарт-контрактам отслеживать правильную цепочку при обработке подписей и предотвращать повторные атаки между различными цепочками.
- EIP-1884: увеличивает стоимость вычислений (опкодов виртуальной машины, то есть инструкций в рамках смарт-контрактов) при обращении к блокчейну для разработчиков dApps.
- EIP-2028: снижение стоимости «газа» Calldata с 68 Gas за байт до 16 Gas за байт. Расчеты цен «подкреплены математическим моделированием и эмпирическими оценками». Это позволит сделать решения второго уровня, увеличив, тем самым, пропускную способность сети и докажет, что решения zk-SNARKs и zk-STARKs (разновидности Zero Knowledge Protocol — протокола доказательства с нулевым разглашением, не предусматривающий непосредственный обмен паролями) дешевле и более эффективны.
- EIP-2200: перебалансировка стоимости «газа» SSTORE с учетом изменения стоимости газа SLOAD (чтение из хранилища). Это изменит расчет стоимости хранения данных в EVM (виртуальной машине) и позволит смарт-контрактам вводить новые функции, включая повторные блокировки входа и повторную отправку нескольких контрактов.
Потенциальные проблемы работы смарт-контрактов после активации EIP-1884
EIP-1884предусматривает увеличение стоимости «газа». Это самое спорное обновление хардфорка, с которым была не согласна даже часть ведущих разработчиков. Однако необходимость его запуска объясняется тем, что с ростом сети Ethereum некоторые смарт-контракты, используемые в dApps, стали слишком ресурсоемкими. Поскольку размер блокчейна увеличился, вычислительные затраты на получение данных о состоянии сети (таких, как остатки на счетах) также увеличились, а цены на «газ» оставались прежними — это создало дисбаланс между ценой операции и потреблением ресурсов. Это несоответствие создает уязвимости для ряда атак. Чтобы снизить возможность перегрузки сети, EIP-1884 повышает цены на «газ» по трем ресурсоемким, но дешевым операциям. Это должно предотвратить спам-атаки и лучше сбалансировать блоки.
Проблема в том, что часть смарт-контрактов была написана без учета того, что цены «опкодов» могут измениться. Соответственно, предложенное обновление привлекло внимание и инициировало обсуждение в экосистеме Ethereum.
Ряд разработчиков считает, что изменять правила игры таким образом неприемлемо. Например, программист Parity Technologies Вэй Тэнг высказал свои опасения о возможных проблемах с EIP-1884 в серии твитов. Он полагает, что было бы справедливо в текущих смарт-контрактах использовать действующую цену «газа», а в следующих — уже новую. Это реализуемая функция. Однако подобную совместимость не планируют запускать из-за нехватки времени на разработку. Он отмечает, что Istanbul, скорее всего, нарушит несколько развернутых контрактов. Это могут быть отдельные случаи, но Тэнга беспокоит то, что часть разработчиков, похоже, считают, что это приемлемо.
«Одна из причин, по которой Windows стала популярной, заключается в обратной совместимости…. Вы можете запустить старые операционные системы на современных процессорах. Ethereum не должен быть исключением, если мы хотим, чтобы у него было светлое будущее», — резюмировал Тэнг.
Активация EIP-1884 может также привести к тому, что некоторые из dApps могут «сломаться». Например, стоимость операции SLOAD (чтение из хранилища) увеличится с 200 до 800 «газ» за операцию. От этого пострадают, прежде всего, два типа смарт-контактов: держащие в хранилище сложные структуры данных и активно их использующие; а также контракты, у которых был выбор — рассчитывать значение каждый раз или вычислить единожды и запомнить (теперь эта стратегия станет невыгодной).
Более того, EIP-1884 может нарушить работу около 680 смарт-контрактов, управляющих децентрализованными ethereum-приложениями в сетях Aragon и Kyner Network, или поднимет цены для конечных пользователей. Сейчас их разработчики трудятся над обеспечением работы проектов после обновления.
Модератор встречи Ethereum Core Хадсон Джеймсон согласился с позицией Тана, но посоветовал разработчикам учитывать, что цены «опкодов» могут измениться и в дальнейшем. Виталик Бутерин поддержал EIP-1884, отметив, что хотел бы, чтобы их цена была еще выше.
Отразятся ли обновления на цене ETH
Учитывая запланированный характер большинства обновлений Ethereum, Istanbul, скорее всего, не отразится значительно на цене монеты сети. В то же время задержки в реализации «дорожной карты» часто негативно влияют на цену ETH. Если подобная ситуация случится снова, монета может просесть. Однако даже в случае начального спада или стагнации долгосрочное влияние форка, вероятно, будет положительным из-за улучшений обновления для масштабируемости, стоимости и скорости работы.
В феврале 2019 года перед ожиданием активации Constantinople и St.Petersburg за несколько недель курс вырос со $105 до $157. При этом за несколько дней до хардфорка курс стал падать и восстановился только в начале апреля.
Конечно, Istanbul улучшит привлекательность Ethereum в глазах пользователей. Но, кажется, пока нет никаких предпосылок к резкому росту цены ETH. Бум ICO давно прошел, а обновление 4 декабря не решает все проблемы сети. Гораздо интереснее будет следить за ценовыми скачками накануне долгожданного перехода к Ethereum 2.0, ожидаемого в начале следующего года.
Самые амбициозные обновления Ethereum еще впереди
Активация Ethereum 2.0 планируется в первом квартале 2020 года. Доработка может занять 3−4 года, в течение которых будут параллельно функционировать две сети. Бутерин обещает, что действующие приложения продолжат работать без изменений. Но разработчикам стоит заранее подготовиться к подорожанию операций.
Хардфорк увеличит пропускную способность сети до 15 000 транзакций в секунду, сократит время обработки транзакций, перейдет на алгоритм Proof-of-Stake (PoS), сократит комиссии и расширит функциональность смарт-контрактов. Переход на Ethereum 2.0 должен решить проблемы безопасности, децентрализации и масштабируемости и снизить издержки в 100 раз. Обновления декабря — необходимые шаги на пути к этому.
- Крупные держатели Ethereum переместили $357 млн всего за несколько минут - 14.03.2023
- Биткоин и эфир прибавляют на фоне активизации азиатских и европейских трейдеров - 14.03.2023
- Glassnode выпустили индикатор, определяющий пики и дно биткоина - 13.03.2023
- Нигерия задействует технологию блокчейн в модернизации банковского сектора - 13.03.2023
- Гендиректор Messari призывает инвесторов покупать биткоины - 13.03.2023