Изменения в сети Ethereum после хардфорка Byzantium

Изменения в сети Ethereum после хардфорка Byzantium

DeCenter

16 октября на блоке 4,370,000 произошел хардфорк Byzantium в сети Ethereum. Byzantium – это первая часть крупного обновления Metropolis. В отличие от хардфорка Bitcoin, в ходе Byzantium не появится еще одна версия Ethereum. Также в обновление не включены ожидаемые анонимные транзакции и переход на proof-of-stake. Но есть пару нововведений, о которых стоит знать.


Сокращение вознаграждения майнеров

Вознаграждение за найденный блок будет уменьшено с 5 ETH до 3 ETH. Это изменение сделано в рамках подготовки к переходу на алгоритм proof-of-stake. Хотя вознаграждение было снижено, предыдущий план по экспоненциальному увеличению времени нахождения блоков («Ледниковый период») был отложен. Бомба сложности «Ледниковый период» предназначена для стимулирования майнеров находить блоки в новой цепи после проведения хардфорка.

Подготовка к приватным транзакциям

В Byzantium добавлены 4 функции, которые нужны для реализации Zk-Snarks –Zero Knowledge Proof – анонимных транзакцй в сети Ethereum. Некоторые из основных вычислений, необходимых для таких транзакций, теперь требуют меньше газа и работают за пределами Ethereum Virtual Machine (EVM).

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

Более быстрая обработка транзакций

Транзакции теперь могут быть обработаны параллельно благодаря удалению проверки состояния Дерева Меркля.

Параметр «root» по-прежнему будет храниться в информации о транзакции, но его значение будет заменено двоичным знаком: 0x0 для неудачных транзакций и 0x1 для успешных транзакций.

Усовершенствования смарт контрактов

Раньше остановить выполнение смарт-контракта в Ethereum можно было только через throw-метод, который запускал бесконечный цикл, чтобы весь газ израсходовался. Только тогда контракт останавливался. У такого алгоритма есть два недостатка:

  1. Вы теряете оставшийся газ в процессе прекращения контракта.
  2. Без газа контракт не может вернуть сообщение об ошибке.

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


Есть и другие незначительные корректировки и обновления, но выше перечислены те, которые наиболее важны.


Report Page