Вторая часть релиза Metropolis под названием Constantinople – следующее общесистемное обновление Эфириума. Его проведение запланировано разработчиками на октябрь, но точный номер блока, а соответственно и дата, все еще не определены.

Окончательная версия Constantinople была представлена 31 августа – она включает в себя пять предложений по улучшению Эфириума (EIP). Обновление будет проведено в виде хардфорка. Это означает, что узлы, на которых запущено программное обеспечение Эфириума, должны либо обновиться вместе со всей системой, либо продолжать работать в рамках отдельного блокчейна.

Общесистемные обновления в прошлом уже были причиной драматических событий в сети. В случае, если часть пользователей не согласна с изменением, это может привести к одновременной работе двух разных версий одного и того же блокчейна. Несмотря на то, что возможны весьма радикальные последствия подобных изменений (например, как в случае появления Ethereum Classic), большинство обновлений в Constantinople останутся незамеченными обычными пользователями. Как отметил независимый разработчик Лейн Реттиг (Lane Rettig), предстоящий хардфорк не будет включать никаких «больших изменений» для конечных пользователей.

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

Кроме того, хардфорк включает в себя изменения в экономической политике Эфириума. В частности, в очередной раз будет отложена «бомба сложности» - фрагмент кода, запрограммированный для активации так называемого «ледникового периода» Эфириума, в котором создание новых блоков в сети PoW-майнерами в конечном итоге замедляется до полной остановки.

На данный момент беспокойство в сообществе продолжает расти, так как доходы майнеров снизятся после внедрения Constantinople с 3 до 2 ETH. Но при достижении баланса между всеми заинтересованными сторонами, разработчики уверены, что обновление будет в целом воспринято хорошо.

Хотя формальный номер блока активации хардфорка еще не утвержден, основные разработчики и клиенты в настоящее время внедряют, оценивают и тестируют код Constantinople.

Состав обновления

Пять EIP будут внедрены в рамках Constantinople:

  • EIP 145. Техническое обновление, написанное двумя разработчиками Эфириума - Алексом Берегшази (Alex Beregszaszi) и Павлом Былицей (Pawel Bylica). EIP 145 описывает более эффективный метод обработки информации на Эфириуме, известный как побитовое смещение.

  • EIP 1052. Обновление, созданное основным разработчиком Ником Джонсоном (Nick Johnson) и Былицей, предлагает средства для оптимизации полномасштабного выполнения кода контрактов в Эфириуме.

  • EIP 1283. Обновление на основе EIP 1087, которое было написано Джонсоном, в основном будет полезно разработчикам смарт-контрактов путем внедрения более справедливого метода ценообразования для изменений, внесенных в хранилище данных.

  • EIP 1014. Обновление, предложенное создателем сети Виталиком Бутериным. Его основная цель - облегчить внедрение определенного типа масштабирования на основе двусторонних каналов и внесетевых транзакций.

  • EIP 1234. Улучшение, предложенное Афри Шоэдоном (Afri Schoedon), менеджером по выпуску продуктов клиента Эфириума Parity. Это обновление является наиболее спорным из серии, так как оно снижает объемы эмиссии эфира — с 3 до 2 ETH за блок и откладывает «бомбу сложности» на 12 месяцев после хардфорка.

В нескольких словах, изменения включают в себя: 

  • оптимизацию кода для улучшения времени обработки данных для разработчиков;

  • более справедливые структуры ценообразования для изменений, внесенных в хранилище данных смарт-контрактов;

  • редактирование кода, упрощающее масштабирование решений по двусторонним каналам на Эфириуме;

  • изменения в экономической политике Эфириума.

Учитывая, что эти изменения кода, вероятно, повлияют на прогресс второго по популярности блокчейна на долгие годы, Constantinople следует изучить подробнее.

Оптимизация кода

Для начала, EIP 145 и EIP 1052 нацелены на повышение эффективности сети путем внесения изменений в базовую виртуальную машину Эфириума. EVM преобразовывает читаемый код смарт-контрактов в единицы и нули (байт-код) и обеспечивает его выполнение на узлах.

Стремясь продлить жизнь Эфириума и оптимизировать производительность для лучшего удовлетворения потребностей пользователей, EIP 145 и EIP 1052 стремятся облегчить жизнь разработчикам смарт-контрактов.

EIP 145 внедряет функцию «побитового смещения», которая может работать через байт-код, не полагаясь на арифметические операции, такие как умножение и деление. Фактически это означает, что смарт-контракты, лежащие в основе децентрализованных приложений, таких как CryptoKitties, будут быстрее обрабатываться в EVM и уменьшат падение производительности всего блокчейна.

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

Дешевое хранение

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

EIP 1283 реализует лучший анализ затрат для контрактов, выделяя, какие изменения контракта были записаны в краткосрочном хранилище Эфириума в памяти узла, а не в самом блокчейне. Получается, что эти обновления снижают затраты разработчиков. Джонсон, создатель оригинального предложения, лежащего в основе EIP 1283, отмечает:

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

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

Двусторонние каналы

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

EIP 1014, созданный основоположником Эфириума Виталиком Бутерином, описывается на GitHub разработчиком концепции двусторонних каналов Лиамом Хорном (Liam Horne) как «значительное увеличение производительности двусторонних каналов».

Другие разработчики поддержали это мнение к включению предложения в Constantinople, подтверждая, что EIP 1014 облегчит реализацию внесетевых транзакций.

Экономическая политика

Наконец, есть EIP 1234 - последнее дополнение к четырем другим предложениям, которые должны быть выпущены в Constantinople, касающееся постепенного увеличения сложности добычи блоков, известного как бомба сложности.

Первоначально предполагалось, что бомба сложности должна стимулировать переход на более экологичную, основанную на proof-of-stake систему консенсуса под названием Casper. ОДнако, разработчики до сих пор не готовы осуществить переход на PoS. Таким образом, необходимо предпринять шаги для того, чтобы отложить бомбу и вместе с этим уменьшить эмиссию эфира.

Проще говоря, блоки будут добываться быстрее после хардфорка. Это означает, что необходимо также предпринять шаги для уменьшения вознаграждения за блок, а EIP 1234 уменьшает его с 3 ETH до 2 ETH.

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

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

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

Что дальше

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

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

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

Шоэдон, который говорит, что Parity «вероятно, самая быстрая команда, внедряющая изменения для Constantinople», подчеркнул, что его клиент стал первым, добавившим все пять EIP и теперь ожидает экспертной оценки для полного принятия в их официальную кодовую базу.

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

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

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

Третья часть релиза Metropolis под названием Istanbul, предполагающая изменение механизма создания блоков на комбинированный PoW+PoS и внедрение некоторых функций технологии Casper, теперь окончательно переносится на 2019 год.