Эфириум 2.0

Обзор Ethereum 2.0

Эфириум 2.0 (или «Serenity») – это крупное обновление блокчейна Ethereum. Обновление происходит не в один момент, а поэтапно.

Фаза 0: Beacon Chain. Она стартовала 1 декабря 2020 года.

Фаза 1: Шардинг (Sharding).

Фаза 1.5: Слияние.

Фаза 2: Реализация нового режима работы.

Сейчас в тестовую версию обновления уже добавлен новый блокчейн – Beacon Chain – с алгоритмом консенсуса «Proof of Stake». Beacon Chain будет работать параллельно с уже существующей системой на алгоритме «Proof of Work» до их слияния в одну цепь летом 2022.

Отличие Proof of Stake (PoS) от Proof of Work (PoW) заключается в том, что для подтверждения транзакций валидаторы (местные «майнеры») используют не вычислительные мощности, а количество хранимой криптовалюты.  Для подтверждения блока с наибольшей вероятностью выбирается валидатор с наибольшим количеством криптовалюты и с наибольшим сроком ее хранения на кошельке.

Цель ETH 2.0 – ускорить процесс подтверждения транзакций, увеличить эффективность и масштабируемость всей сети.

Вступление к ETH 2

Ethereum 1.0 был первым блокчейном с возможностью создания программируемых смарт-контрактов на основе технологии PoW. Из-за огромной популярности и всемирного признания Эфир испытал на себе множество негативных эффектов.

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

И вот, сейчас у ETH есть возможность перейти на кардинально новую, безопасную, стабильную и легко масштабируемую систему. Обновление облегчит жизнь миллионам пользователей и ускорит систему смарт-контрактов. Обновление ETH 2 состоит из множества небольших нововведений и улучшений.

Самое крупное такое нововведение – это переход с алгоритма Proof of Work (PoW) на алгоритм Proof of Stake (PoS). Это очень крупное изменение, ведь оно меняет фундаментальный механизм консенсуса блокчейна. Простыми словами, PoW полагается на вычислительные мощности, а PoS – на количество хранимых валидатором монет.  На сегодняшний день активно растет популярность и мировое признание ETH 1.  Соответственно, растет количество майнеров и объем расходуемой энергии на почти что «бесполезные» вычисления. Очевидно, что это очень плохо отражается на окружающей среде. Новый механизм консенсуса (PoS) в ETH 2.0 не требует выполнения таких вычислений, а также повышает устойчивость всей системы.

Как будет внедряться Эфириум 2.0?

Перед полным интегрированием обновления должно пройти несколько этапов внедрения в общую систему. Эти этапы – это своеобразные фазы надстройки ETH 2.0 над основной версией криптовалюты.

Фаза 0 – Beacon Chain

Создание и тестирование системы «Beacon Chain» – это первый шаг на пути реорганизации Эфира. Блокчейн «Beacon Chain» работает на алгоритме Proof of Stake, управляет реестром валидаторов. Фактически, это основа всего ETH 2.0. В данный момент основная система Эфира с алгоритмов PoW функционирует параллельно с Beacon Chain, но так будет до «слияния» двух систем в одну. Это соединение и станет следующей фазой.  Сейчас в Beacon Chain новые блоки создаются по протоколу «доказательство владения» (PoS), а в ETH 1.0 – по протоколу «доказательства работы» (PoW), и эти две цепи никак не влияют друг на друга. И все-таки, в конце концов Ethereum перейдет на протокол PoS.

У Beacon Chain сейчас меньше функционала, чем у ETH.  Например, в новой цепи нет смарт-контрактов.  Так сделано потому, что главная цель тестовой цепи – это отработать схему подтверждения блока валидаторами, а не привлечь майнеров.  Несмотря на это, в цепь все же были введены непрямые смарт-контракты, чтобы владельцы ETH могли без проблем пересылать средства на счета Beackon Chain и становится валидаторами в новой сети. Для вступления в Beacon Chain надо пополнить криптокошелек цепи на 32 ETH. Все средства, вложенные в покупку этого токена, нельзя будет вывести вплоть до Слияния!  Beacon Chain был запущен 1 декабря 2020 и стабильно работает по сей день.

Фаза 1 – Слияние

Слияние означает, что слой выполнения (executionlayer) больше не будет независимой цепью. Напротив, он будет находится внутри алгоритма консенсуса PoS в Beacon Chain. Это эффективный и простой способ перехода всей сети на алгоритм Proof of stake. Старый же алгоритм Proof of Work после обновления станет просто неактуальным. Вообще, изначально предполагалось, что цепь ETH 1 будет частью ETH 2, но планы изменились, и было решено, что будет проще, если Эфир 2.0 просто поглотит блоки основной цепи, чтобы обработать все транзакции в ETH 1.

Перед Слиянием разработчики внедрят несколько хардфорков (обновлений сети).

ETH 1 (Proof of Work)

  1. Берлинский хардфорк 

Вышел в апреле 2021г.

  1. Лондонский хардфорк

Радикально меняет систему комиссий. Основа этого обновления – EIP1559 (Ethereum Improvement Proposal 1559). Раньше для оплаты работы майнеров (оплаты комиссии) использовался так называемый «газ». Но в EIP1559 газ заменили «чаевыми» для майнеров.  Предполагается, что эти чаевые будут достаточно низкими. Лондонский хардфорк должен сделать систему более справедливой и удобной для пользователей.

ETH 2 (Proof of Stake)

  • Альтаирский хардфорк

Первый хардфорк Beacon Chain изменит некоторые особенности награды и наказания валидаторов.  Например, минимальное наказание (slashing) будет увеличено.

Эти хардфорки отражают финальные обновления в соответствующих сетях до введения ETH 2.0. Благодаря хардфоркам станет возможным быстрое Слияние двух цепей в одну систему.

Фаза 2 – Шлифовка после Слияния

Цель «шлифовки» – удалить или добавить определенные необходимые функции в систему.  Например, валидаторы, внесшие 32 ETH для участия в цепочке Beacon, теперь смогут выводить средства.

Планы после обновления ETH 2.0

Масштабируемость

В ETH 2 будет введена система шардинга, которая позволит системе обрабатывать огромное количество транзакций в секунду – в цепи будет создаваться больше блоков такого же размера, что и сейчас.  Для этого разработчики надеются разбить сеть на 64 отдельных блокчейн-цепи. Шардинг – это процесс горизонтального разбития базы данных цепи с целью распределить нагрузку на множество частей системы (в данном случае – на 64).  В ETH 2.0 будут созданы новые цепи – «шарды». Они отведут растущий объем транзакций с основной цепи Эфира. Для лучшего понимания приведем пример. Представим, что главная цепь ETH 2 – это широкое, перегруженное трафиком, шоссе. Тогда «шарды» – это достроенные по бокам шоссе дороги для уменьшения нагрузки на главную трассу.  В шардах валидаторам надо хранить и обрабатывать информацию только по одному определенному шарду, а не по целой сети. Благодаря этой технологии комиссии на транзакции значительно снизятся.  К сожалению, в ETH 1.0 шардинг невозможен. Но, теоретически, пропускная способность ETH 2.0 с использованием шардинга будет в 64 раза выше!

Нормальная масштабируемость позволит решит проблему обслуживания децентрализованных приложений (dApps) и обработки транзакций пользователей.  Разбиение ETH 2.0 на 64 цепи увеличит потенциальную масштабируемость цепи до беспрецедентных значений.  Разбив значительно ускорит распространение Эфира и, вполне возможно, что после обновления детище Виталия Бутерина сможет превзойти Биткоин по популярности.  

Новая система Смарт-контрактов

Планируется заменить нынешний виртуальный движок Ethereum (EVM), который обрабатывает смарт-контракты, новым, под названием eWASM.  Аббревиатура eWASM походит от Ethereum Web Assembly, которая, в свою очередь, основана на ПО от W3C (World Wide Web Consortium). Новые смарт-контракты можно будет написать на любом языке программирования, поддерживаемом Web Assembly.  Каждый шард будет иметь свою копию виртуального движка и будет поддерживать кошельки, смарт-контракты и другие функции, которые в данный момент работают на языке программирования Solidity.

Среда исполнения (EE)

В ETH 2 планируется ввести среду исполнения – Execution Environments (EEs). В то время как ETH 1 основан на модели аккаунтов, в EEs шарда можно будет внедрить любую иную спецификацию. Это означает, что может возникнуть EE для цепи UTXO (аналогичным образом работает Биткоин) или, к примеру, EE для Libra-style системы.  У каждого шарда будет доступ ко всем средам исполнения, поэтому через EE смогут проходить транзакции из одного шарда в другой, оформляться смарт-контракты.

Новые функции ETH 2.0

Вместе с обновлением в систему Ethereum придет множество новых функций. Нововведения сделают Эфир еще более эффективной и удобной криптовалютой.  В этой части статьи мы рассмотрим отличительный функционал ETH 2.0

Принцип равенства

Оригинальный алгоритм Proof of Work требовал от майнеров все больше вычислительных мощностей и, соответственно, более мощного оборудования.  С течением времени такая схема значительно сужает круг лиц, которые в состоянии владеть этим оборудованием. ETH 2 же намного более «лоялен» к слабому «железу», так как шанс подтвердить транзакцию зависит от хранимой доли криптомонет.  Сейчас, чтобы стать валидатором в Beacon Chain, у вас на счету должно храниться минимум 32 ETH, но в будущем у пользователей будет возможность участвовать в консенсусе, имея в кошельке всего один токен валюты – все благодаря аналогу «пула» в системе PoW. Группа людей будет объединять свои накопления и вместе набирать нужные 32 ETH. Таким образом, ETH 2.0 уравнивает пользователей в возможности «майнить», так как теперь для заработка не нужны огромные энергозатраты – достаточно иметь пару криптомонет на кошельке.

Смягчение инфляции

На сегодняшний день держать монеты Эфира – это все равно что держать активы, которых с каждым днем становится все больше и больше из-за майнинга, и которые, соответственно постепенно обесцениваются. Такой эффект обесценивания будет смягчен тем фактором, что любые держатели монет смогут участвовать в процессе стэйкинга. Биржи или будущие стэйкинг «пулы» будут отдавать часть награды за вычисленную транзакцию владельцам монет.  Таким образом, у каждого держателя криптовалюты будет становится все больше и больше токенов этой криптовалюты, и это смягчит влияние инфляции.

Как работает Эфириум 2.0

Валидаторы в Эфириум 2.0 – это эквивалент майнеров в ETH 1.0.  Вместо использования дорогостоящего оборудования для майнинга валидаторы используют свой же капитал для получения права подтвердить блок. Валидаторы активно задействованы в алгоритме консенсуса ETH 2. Они выполняют жизненно важные для всей блокчейн сети функции. Первая из них – функция Предлагающего (proposer). Предлагающий выбирается псевдослучайным образом. Он создает новый блок в цепи.  Но создания блока недостаточно – перед включением в цепь блок надо подтвердить. Для этого существуют Заверители (attesters), которые голосуют за корректные beacon и shard блоки, тем самым подтверждая их.  Эти голоса записываются в главную сеть Beacon Chain. Чем больше блок получает голосов от валидаторов, тем выше гарантии аутентичности этого блока. Вес голоса зависит от баланса кошелька валидатора. Голоса транслируются на всю сеть. Чтобы стать валидатором, надо сделать «стэйк» в размере 32 ETH.

Все валидаторы разбиваются на «комитеты» каждую эпоху в каждом шарде. 32 слота образовывают эпоху. Слот – это 12-секундный отрезок времени, за который блок может быть окончательно добавлен в цепь.  Также это наименьшая единица времени в ETH 2.0. Выходит, что 1 эпоха проходит за 6,4 минуты.  Валидатор за 1 эпоху может состоять только в одном комитете. Комитет состоит минимум из 128 валидаторов. Каждую эпоху валидаторы распределяются по комитетам, а затем подразделяются на слоты.

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

Как уже было упомянуто ранее, для улучшения масштабируемости сети будет введена технология шардинга.  Шарды будут привязаны к основной цепи «маяка» (основная Beacon Chain) Таким образом шарды будут следовать за «головой» главной цепи-маяка. Чтобы транзакции шарда фиксировались в основной цепи, каждый блок цепи Beacon Chain (beacon блок) содержит 64 ссылки – по одной на блок каждого шарда.   Комитет также отвечает за создание этих ссылок на шард-блоки. Каждую эпоху валидаторы распределяются по слотам, а из занявших эти слоты валидаторов складывается комитет.  Все валидаторы из этого слота заверяют beacon-блок.

Здесь валидаторы участвуют сразу в двух механизмах консенсуса: в LMD Ghost и Casper FFG. Голоса заверителей LMD Ghost определяют «головы» (последние корректные блоки) Beacon Chain и шардов.  В ходе борьбы за право голоса в LMD Ghost-валидаторы также голосуют за таргет – своеобразную точку сохранения эпохи. Эти голоса относятся к алгоритму Casper FFG и привносят завершенность в сеть. Говоря простым языком, с помощью Casper FFG валидаторы определяют точку в цепи, до которой аутентичность блоков полностью подтверждена.  Для определения таргета две трети активных валидаторов должны проголосовать за него на первом слоте эпохи.

Награды стэйкинга

За выполнение своих обязанностей валидаторы получают награду.

Награды предлагающего

Предлагающим (случайно выбранные валидаторы, которые предлагают следующий блок в блокчейне) выдается соответствующая блоку награда после завершения добавления этого блока.  Если валидатор будет онлайн долгое время и будет хорошо справляться со своими обязанностями, то он будет получать на 1/8 большую награду.  Предлагающие также получают небольшое поощрение за добавление свидетельства о «слэшинге» (наказания) в блок.

В целом, существует всего 3 способа вознаграждения предлагающего.

  1. Добавление свидетелем доказательства попытки мошенничества в блок. За это «свидетель» получает вознаграждение, а валидатор теряет весь или часть стэйка и получает ограничения на действия в сети.
  2. Добавление подтверждений валидаторов.
  3. «Чаевые» или просто комиссия за транзакцию. С обновлением EIP 1559 отправители могут включать в транзакцию «чаевые». Чаевые исполняют две функции: если в сети проходит слишком много транзакций, то форджеры (местные майнеры) в первую очередь включат в блок транзакции с самыми высокими чаевыми. Исключает риск вечного игнорирования транзакции.

Награды подтверждающего

Подтверждения – это голоса валидаторов, которые показывают согласия оных. Это означает, что валидаторы будут получать награду за подтверждения, с которыми согласны большинство остальных валидаторов. 1 Фаза ETH2 распределяет награды за ссылки на блоки в шардах. Всего существует 5 способов награды подтверждающих.

  1. Давать подтверждения по цепочке.
  2. Соглашаться с другими валидаторами по поводу истории цепи.
  3. Соглашаться с другими по поводу последнего блока в цепи.
  4. Быстро подтверждать блок.
  5. Указывать на корректный блок в определенном шарде.

Размер вознаграждения Эфириум 2.0

Вознаграждение зависит от количества ETH в стэйке и среднего процента валидаторов в онлайне. Награды перечисляются в конце каждой эпохи.

Основатель Эфира Виталий Бутерин описал уровень эмиссии ETH 2.0:

Валидация ETH Максимальная годовая эмиссия Процентная ставка
1,000,000 181,019 18.10%
3,000,000 313,534 10.45%
10,000,000 572,433 5.72%
30,000,000 991,483 3.30%
100,000,000 1,810,193 1.81%
134,217,728 2,097,152 1.56%

«Эти цифры также будут зависеть от множества факторов», – подчеркнул Виталий.

Экспресс-обзор Эфириум 2.0

Основные моменты

Тип сети Proof of Stake
Токен ETH
Максимальная эмиссия Бесконечная
APR От 1,82% до 18,10% в зависимости от уровня участия валидаторов.
Выдача награды Примерно каждые 6 минут (1 эпоха)
Отключение Beacon Chain «выкидывает» из стэйка всех валидаторов с балансом меньше 16 ETH. Пользователи смогут вывести средства из Beacon Chain, но не в Фазе 0.

Валидатор может добровольно выйти из стэйка после нахождения в нем на протяжении 2048 эпох (9 дней).

При выходе из стэйка валидатор сможет вывести средства только через 4 эпохи (24 минуты). За эти 4 эпохи проверяются все действия валидатора. Если замечено мошенничество, то валидатор подвергается слэшенгу.  Со счета честного пользователя деньги выводятся в течение 27 часов. Но для пойманных валидаторов-мошенников задержка составит минимум 36 дней.

Количество валидаторов В сети Beacon Chain более 200 000 активных валидаторов.

Чем больше активных валидаторов заходит в сеть, тем больше будут награды. Это показывает таблица выше.

Механизм консенсуса

В ETH2 используется несколько алгоритмов для определения блоков «головы» и не включенных в цепь блоков.

  • Latest Message Driven Greedy Heaviest Observed Sub Tree (LMD-GHOST).

Алгоритм отвечает за добавление новых блоков и определение блоков «головы».  Принцип LMD-GHOST – учитывать только последние голоса валидаторов для вычисления «головы».  Это значительно ускоряет работу системы проверки.

  • Casper, the Friendly Finality Gadget (Casper FFG) 

Это разновидность консенсуса Practical Byzantine Fault Tolerant (PBFT). Он ответственен за окончательно подтверждения блоков в ETH 2. Casper подтверждает блоки не по слотам, а сразу по эпохам.  В эпохе – 32 слота.

Система консенсуса ETH 2.0 основывается на обеих этих алгоритмах: LMD-GHOST добавляет новые блоки и определяет «голову», а Casper FFG окончательно проверяет блоки на предмет принадлежности к этой цепи и окончательно подтверждает их.

Слэшинг

Валидаторы в сети могут быть подвергнуты слэшингу. Цель слэшинга – сделать атаки на ETH 2.0 невыгодными и опасными для самих нападающих, а также ввести наказание за плохое выполнение своих обязанностей валидаторами.  Злонамеренное поведение значительно повышает вероятность быть наказанным системой.  Слэшинг уничтожает часть стейка валидатора и применяется к нему, когда тот действует против интересов всей сети.  Постоянное нахождение в оффлайне повлечет за собой штраф, но не слэшинг.

У валидатора есть свой счет, на который со временем будут накладываться штрафы и наказания. Валидаторы наказываются, например, за бездействие. Штрафы, как и награды, выдаются в конце каждой эпохи. Система анализирует действия валидатора в рамках одной эпохи и выносит решение – наказать или вознаградить. Вот список действий, за которые можно получить слэшинг:

 Двойное предложение

Предлагающий пытается вставить в один слот два блока.

Голоса FFG, окружающие друг друга

Это голоса за источник и таргет, которые «окружены» предыдущими голосами или которые «окружают» предыдущие голоса. Например, валидатор проголосовал за 32 слот (источник) и за 64 (таргет), но в голосовании в следующей эпохе он голосует за 0 и 96 соответственно. Новые голоса «окружают» старые. Таким образом, этот пользователь просто дискредитирует свои предыдущие голоса.  Так делать запрещено.

 Двойное подписание блоков

Так происходит, когда валидатор отдает два голоса FFG за два разных блока в одну эпоху.

Наказание предполагает штраф в размере от 0,5 ETH до всего стэйка валидатора.  Честные валидаторы не могут быть наказаны из-за валидаторов-мошенников. В ETH 2 этот штраф увеличится до 1 ETH, а также будут введены ограничения на аккаунт нарушителя. Чем больше людей нарушили правила сети одновременно, тем выше штраф. Так, например, наказание за координированную атаку множества пользователей на сеть будет гораздо жестче одного частного случая попытки мошенничества.