Метрополис: Византия, первая часть хардфорка Ethereum, активируется 17 октября

1771
Просмотры

В конце сентября первая часть хардфорка Metropolis запущена на тестовой сети Ethereum Ropsten. 17 октября, жесткий  форк планируется перенести в основную сеть. Чтобы оставаться частью сети, каждый пользователь должен обновить свой клиент.

Эфириум достигнет третьего этапа своего жизненного цикла по дорожной карте, после прохождения Frontier и Homestead.  Первая часть активирует некоторые изменения, которые не столь фундаментальны, как ожидалось, но тем не менее существенно изменят Ethereum.

На тестовой сети Ropsten хардфорк Эфириума произошел 25 сентября. В основной сети обновление планируется активировать на этапе 4,370,000. Когда это произойдет? Предположительно утром 17 октября, тогда клиент должен быть обновлен. Те, кто не сделают этого, отключатся от сети.

Первоначальный план состоял в том, чтобы превратить алгоритм эфира из доказательства работы в доказательство доли. Такой переход выкинул бы майнеров с их видеокартами и заменил их инвесторами, которые «ставят» свои монеты.

Радикальная трансформация Ethereum не произойдет с принятием Metropolis. Разработчики отложили его на четвертый и последний этап Ethereum — Serenity.
Чтобы лучше координировать работу форка, он был разделен на две части: Византийскую и Константинопольскую (Byzantine и Constantinople). Первая часть, Византия, введет свои EIP. Мы рассмотрим предложения по улучшению эфириума (EIP) один за другим и попытаемся их расшифровать.

EIP 649: конец ледникового периода

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

Предстоящий византийский форк должен деактивировать «бомбу сложности» через протокол EIP 649. Конкретенее, EIP 649 откладывает «ледниковый период» на 18 месяцев и уменьшает вознаграждение в блоке от пяти до трех эфиров. Это делается, чтобы подготовить систему предстоящему переходу на PoS, который еще больше снизит вознаграждение.

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

EIP 98: параллельные транзакции с удалением промежуточных root-прав

В Ethereum у вас есть так называемый «state root» — «корень состояния» — особый вид дерева Меркла, который строит доказательство состояния. Состояние Ethereum содержит все активные счета и контракты. С помощью корня состояния вы можете проверять записи состояния: состояние счета, существует ли он вообще, что будет с контрактом после проведения транзакции. Корень состояния обычно пересчитывается после каждой транзакции.

EIP 98 убирает надобность вычисление корня состояния после каждой транзакции. Это позволяет распараллелить вычисление корня состояния и уменьшить количество вычислений корней Меркла в целом. Это поможет снизить требуемую мощность компьютера. В будущем EIP 98 может помочь не только распараллеливать вычисления, но и обрабатывать транзакции. Это еще больше снизит требуемую мощность.

EIP 658: облегченные клиенты могут проверить, был ли выполнен контракт

С транзакциями EIP 98 больше не требуется содержать корень состояния. EIP 658 заменяет его другим полем, в котором хранится информация о том, был ли контракт исполнен полностью и правильно. Это позволяет использовать облегченные клиенты, которые не синхронизируют весь блокчейн или загружают все состояние.
Изменение EIP 658 поможет облегченным клиентам проще взаимодействовать с контрактами без необходимости в третьей стороне.

EIP 100: настройка вознаграждения анклам

EIP 100 также влияет на майнинг. Он посвящен регуляции блоков-анклов. Два майнера в сети Ethereum могут найти блок почти одновременно. В этом случае два блока существуют короткое время, прежде чем сеть выберет один блок как недействительный. Затем цепь с этим блоком умирает.

Устаревшие добытые блоки, которые не успели включиться в цепь, называются «сиротками» у биткоина и «дядюшками» у эфириума.

У сети Ethereum «анкл-блоки» получают небольшую награду за добычу. Это делается для того, чтобы сделать майнинг более справедливым и избежать централизации сети.

Однако награда за анклов имела нежелательный побочный эффект. В некоторых ситуациях было возможно, что из-за многих анклов фактическое вознаграждение в блоке было выше запланированных 5 ETH. Новая формула для корректировки трудности, которая теперь также учитывает анклов, устраняет эту ошибку.

EIP 198, 212, 213: zk-SNARK приходит в эфириум!

Возможно, самая важная и заметная часть хардфорка Metropolis — это набор из трех предложений по улучшению: №198, 212 и 213. Эти EIP разрешают некоторые сложные криптографические операции внутри контакта (такие как RSA). Эти изменения позволят ввести zk-SNARK — этот инструмент доказывает, что «знает» о содержании контракта и обязательствах в нем, но не открывает их.
Сертификаты Zk-SNARK были разработаны командой Zcash. Они позволяют скрывать данные транзакции, а также другие изменения состояния по контрактам. Получатель транзакции все еще может проверить правильность транзакции. Но само содержание не нужно публиковать. Транзакция с zk-SNARK будет стоить гораздо больше газа, чем традиционные транзакции. Но это обеспечит долговременную конфиденциальность в сети Эфириум, что важно для корпоративных переводов и неразглашения данных о корпорациях, сделках и т. д.

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

EIP 214: более безопасный вызов других контрактов

Может случиться так, что смарт-контракт ссылается на другой контракт при выполнении своих задач. Например, когда он хочет получить данные, которые управляются другим контрактом. До сих пор внутренний контракт, который будет обращаться к другому, имеет приоритет. Возможно даже, что такой контракт изменяет состояние внешнего контракта. Это затрудняет взаимодействие контрактов и иногда может быть небезопасно. Например, это стало причиной взлома DAO.

С введением нового кода операции «STATICCALL» EIP 214 предотвратит эти проблемы. Новый код позволяет заключить контракт с другим контрактом, не позволяя ему изменять состояние того, к кому обращаются. Это упростит построение более сложных интеллектуальных контрактов, связанных друг с другом.

EIP 211: лучший возврат произвольных данных в контракте

Еще одна проблема контрактов — возврат данных. Все нормально, если контракт знает размер данных. Однако произвольные данные являются проблемой, которая делает казалось  бы простую вещь очень сложной и дорогой. С введением новых операций RETURNDATASIZE и RETURNDATACOPY улучшение позволяет легче возвращать произвольные данные.

EIP 206: возвращение состояния

EIP 206 также вводит новый код операции. Он называется REVERT и предоставляет способ прекратить выполнение контракта и вернуть состояние в прежний вид. Без этого кода нужно выполнить сложные и дорогостоящие хаки, чтобы остановить выполнение контракта.
EIP 206 — последнее изменение в нашем обзоре на византийский хардфорк. Изменения в большинстве своем очень техничны и их трудно оценить непрофессионалу. Речь идет о деталях.

Хардфорк, который приводит к постоянному расколу блокчейнов и сообществ, вряд ли случится с Метрополисом. Помимо форка DAO, который закончился рождением Ethereum Classic, сообщество, похоже, полностью соглашается с Метрополисом.

CryptoFox телеграм канал @crypto_fox
Подписывайтесь на наш канал