Хардфорки Ethereum: история развития сети эфира

5 лет назад
Хардфорки Ethereum

За все время своего существования Эфириум уже шесть раз подвергался «жестким» обновлениям, которые приводили к существенным изменениям его блокчейна. Эти события называются хардфорками (от англ. hard fork — жесткая развилка) и по факту являются разветвлениями сети, в ходе которых все пользователи должны переходить на новую усовершенствованную разработчиками версию программного обеспечения.

Так и происходило с каждым из заранее задуманных обновлений эфира. Но были и внеплановые хардфорки Ethereum, которые проводили в связи с хакерскими атаками. Но, обо всем по порядку.

Эфириум. Начало

Изначально запущенная 30 июля 2015-го блокчейн-платформа Ethereum работала в статусе ранней альфа-версии под названием Frontier (приграничье, рубеж). Из-за нестабильности и неудобного способа взаимодействия с сетью (через командную строку) этот период также называли «Диким западом», намекая на огромный потенциал новой сети, неразрывно связанный со столь же огромными рисками.

Frontier был первой жизнеспособной версией блокчейна Ethereum, на тот момент предназначенной не столько для конечного потребителя, сколько для «первых поселенцев» — разработчиков-энтузиастов, которые получили на руки инструменты для майнинга, создания dApps и проведения различных экспериментов в сети.

Когда большая часть ошибок в коде платформы была устранена и ее адаптировали под рядового пользователя в истории Эфириума началась новая веха.

Первый хардфорк Ethereum

Развитие криптовалюты Эфириум

14 марта 2016-го на блоке 1 150 000 был реализован первый из запланированных хардфорков Ethereum под названием Homestead (усадьба).

Важным элементом этого апгрейда стало устранение так называемых «canary contracts» (канареечные контракты), которые давали команде разработчиков Эфириума возможность отменять действия пользователей в сети. Это было первым шагом к переходу блокчейна Ethereum в более децентрализованное состояние.

Кроме того, были внедрены следующие обновления:

  • Изменена плата за создание смарт-контрактов посредством транзакции (с 21000 до 53000 газа);
  • Отрегулирован механизм расчета сложности майнинга Эфириума;
  • Добавлена поддержка команды DELEGATECALL, позволяющая разработчикам преодолевать проблему лимита газа в блоке;
  • Улучшена совместимость сети с будущими изменениями протокола;
  • Ограничено максимальное значение s-value в подписи транзакции с целью защиты от спама.

Также, благодаря выпуску официального кошелька Mist, обычные пользователи наконец смогли взаимодействовать с сетью через удобный интерфейс. При этом речь шла как о хранении и пересылке монет, так и о работе со смарт-контрактами.

Это обновление протокола привело блокчейн эфира в стабильное состояние, что позволило многим проектам начать его активно использовать. Однако, впереди у Эфириума была первая серьёзная неприятность.

Ответвление Ethereum Classic

16 июня 2016 года неизвестные хакеры атаковали проект DAO (Децентрализованная автономная организация) — краудфандинговую платформу на базе смарт-контрактов Эфириума, которая позиционировалась как принципиально новая модель управления финансами и инвестирования. Атака стала возможной из-за игнорирования разработчиками уязвимости в коде умного контракта, которой и воспользовались в итоге злоумышленники, украв треть привлеченных от инвесторов средств (около $50 млн в монетах ETH).

В последующие недели разработчики, майнеры и другие участники сообщества Ethereum активно дискутировали на тему возможности возвращения украденных активов посредством отката сети к состоянию, которое было до взлома.

20 июля задуманное разработчиками все же было реализовано на блоке 1 920 000 в виде противоречивого хардфорка Ethereum, который вернул средства инвесторов, но не был поддержан последователями идеи децентрализации, основанной на недопустимости подобного вмешательства в блокчейн. В результате этого старая цепочка сети эфира продолжила существовать в виде проекта Ethereum Classic с собственной командой разработчиков.

Вынужденный хардфорк Эфириума для защиты от DoS-атак

DoS-атаки на Ethereum

В сентябре и октябре 2016 года на сеть было совершено несколько DoS-атак по рассылке спама и пустых транзакций, ответом на которые стало проведение еще двух внеплановых хардфорков Ethereum:

  1. EIP-150 (18 октября на блоке 2 463 000) — заключался в проведении неотложных технических мероприятий по улучшению устойчивости сети.
  2. Spurious Dragon (22 ноября на блоке 2 675 000) — состоял из нескольких обновлений, направленных на изменение максимального размера и ценообразования операционных кодов, что делало будущие возможные атаки невыгодными для хакеров в финансовом плане. Также была реализована защита от атак повторного воспроизведения и механизм удаления создаваемых хакерами пустых учетных записей, что позволяло уменьшить размер блокчейна и ускорить синхронизацию клиентов с ним.

Судя по тому, что подобных случаев с замедлением сети Эфириума из-за преднамеренных действий злоумышленников больше не регистрировалось, проведенные хардфорки Ethereum были эффективными.

Комплексный апдейт Metropolis

Следующей запланированной разработчиками фазой развития эфира был Metropolis — комплекс обновлений по подготовке сети к переходу на алгоритм майнинга Proof-of-Stake (PoS, доказательство владения долей) и имплементации решений по масштабированию сети, который из-за сложности одновременного внедрения всех задуманных изменений был разделен на два самостоятельных хардфорка.

Ethereum хардфорк Byzantium

Обновление Byzantium было активировано 16 октября 2017 года на блоке 4 370 000 и касалось в основном оптимизации расхода газа, повышения уровня безопасности и скорости работы сети. 

Важным элементом был перенос уже почти активированной к тому моменту «бомбы сложности» на полтора года вперед. Последнее кстати и было одной из причин, по которым хардфорк был проведен в указанную дату — дальнейшее продолжение роста сложности сети привело бы к прекращению майнинга и наступлению «ледникового периода», к чему Эфириум еще был совсем не готов.

В рамках апдейта Byzantium впервые было произведено уменьшение вознаграждения майнерам (с 5 до 3 ETH) и сокращение времени добычи нового блока с 30 до 14 секунд.

Также была добавлена поддержка верификации RSA-подписей, нескольких новых операционных кодов и криптографических моделей, а также возможности использования смарт-контрактов в конфиденциальных транзакциях с помощью инструментов zk-SNARKs.

Кроме того, в Byzantium реализовали механизм параллельной обработки цепочек операций, который в будущем должен помочь в разработке решений для масштабирования и существенного ускорения работы блокчейна (вроде Lightning Network у биткоина).

Constantinople — самый проблемный хардфорк Ethereum

Хардфорк Constantinople

Изначально ожидалось, что второе обновление этапа Metropolis будет реализовано в ноябре 2018 года. Однако, после попытки запуска хардфорка Constantinople в тестовой сети команда проекта столкнулась с целым рядом критических багов, нарушивших работу сети.

Затем было объявлено, что этот хардфорк Ethereum будет проведен 17 января на блоке 7 080 000. Но буквально за сутки до активации Constantinople снова был отменен. Причиной стало обнаружение в одном из включенных в него обновлений (EIP 1283) уязвимости, которая могла быть использована злоумышленниками для осуществления «атаки повторного входа» и кражи средств пользователей.

Исправлять проблемное обновление было некогда из-за острой необходимости переноса снова не вовремя начавшей действовать «бомбы сложности». Поэтому EIP 1283 просто решили убрать из запланированного апгрейда сети, назначенного на блок 7 280 000, который предположительно должен был быть найден в последние дни февраля.

Хардфорк Constantinople был активирован в ночь с 28 февраля на 1 марта. Вместе с ним было запущено обновление St.Petersburg, которое удалило из сети забагованное EIP. Активация этого обновления привела к очередному переносу «бомбы сложности» (примерно на 12 месяцев), уменьшению награды майнерам (с 3 ETH до 2 ETH) и времени добычи блока до рекордных 13 секунд (до этого было 20–21 сек.).

Кроме того, уменьшились требования по объему газа, необходимого для проведения некоторых типов транзакций, повысилась эффективность и скорость работы виртуальной машины Ethereum, был оптимизирован код смарт-контрактов, а также повышено удобство их разработки.

Будущий хардфорк Эфириум

Эфириум 2.0

Активация Constantinople подготовила сеть Эфириума к последнему из запланированных этапов комплексных обновлений под общим названием Serenity. Его реализация должна привести к переходу сети на PoS-протокол Casper и отмену текущей модели майнинга.

Также полным ходом идет разработка шардинга — технологии, которая поможет масштабировать Ethereum путем реализации механизма обработки транзакций множеством параллельных блокчейнов, объединённых в общую сеть.

Когда оба решения будут внедрены, это положит начало эры Ethereum 2.0 — энергоэффективной блокчейн-платформы, способной обрабатывать тысячи транзакций в секунду.

Согласно последним данным, дорожная карта Эфириума в настоящий момент включает запуск Beacon Chain (решение по управлению работой протокола Casper) в начале 2020 года, реализацию остальных составляющих Serenity осенью того же года и хардфорк, который снизит эмиссию монет в 10 раз в марте 2021.

Главным риском проведения перечисленных обновлений будет проблема убеждения майнеров в необходимости перехода на PoS. В теории ее должна будет решить та самая «бомба сложности», которая уже несколько раз о себе заявляла. Но по факту в момент активации одного из предстоящих хардфорков вполне может повториться история с ответвлением альтернативной цепи под условным названием Ethereum PoW, жизнеспособность которой будет поддерживать майнеры старой закалки.

Этой теме посвящено одно из наших видео, которое мы вам советуем посмотреть:

Будущее Ethereum после хардфорка

Ну а пока что остается лишь следить за новыми официальными релизами команды разработчиков и вовремя обновлять используемое для взаимодействия с сетью программное обеспечение, чтобы после одного из последующих хардфорков не остаться в тупиковой ветви Ethereum.

Читайте также:

Как создать кошелек Ethereum: обзор доступных вариантов и инструкция

Стоимость Ethereum: как развивалась цена второй криптовалюты

Где и как купить Ethereum (ETH) — обзор всех доступных способов