ru
Назад к списку

Виталик Бутерин рассказал о The Purge

source-logo  incrypted.com 02 Апрель 2024 08:11, UTC
  • Сооснователь Ethereum рассказал подробнее о «чистках» блокчейна.
  • Он отметил, что этот этап работы над сетью часто недооценивают.
  • В качестве примера разработчик привел несколько EIP, направленных на управление данными.

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

Отметим, ранее мы уже рассказывали о The Purge в материале о том, что ждет Ethereum в будущем. Сам Бутерин этот процесс описывает так:

«Это проект по сокращению [упрощению] Ethereum и погашению технического долга».

Примером «чистки», по словам Бутерина, является EIP-6780. Это предложение было реализовано в рамках масштабного обновления Dencun, развернутого в начале марта 2024 года:

Подробнее об EIP-6780

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

Фактически EIP-6780 внедрил ограничения в SELFDESTRUCT, разрешив ее выполнение только в рамках той же транзакции, которая привела к созданию контракта.

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

Другие меры по упрощению блокчейна

Бутерин привел несколько примеров таких «чисток»:

  • отказ от поддержки «пре-Merge» сетей в клиенте Geth с обновлением v1.14.x, в ходе которого разработчики удалили множество строк кода из репозитория;
  • номинальное закрепление отказа от поддержки пустых учетных записей, что было реализовано в рамках EIP-7523;
  • ограничение на хранение пакетов данных в блобах в 18 дней. По словам Бутерина, это является гарантией того, что объем необходимой памяти для хранения этой информации в узлах Ethereum не будет расти с течением времени.

Другие элементы

Прекомпиляция

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

Бутерин предложил два способа решения этой проблемы — удаление и замена фрагментом кода EVM. Второй вариант сложнее, кроме того, затраты на газ вырастут, но он минимизирует риск последующих сбоев в затронутых приложениях.

История

В этом разделе Бутерин отметил EIP-4444. Предложение предусматривает удаление прошлых блоков из узлов Ethereum по умолчанию.

Разработчик выделил два варианта того, как можно сохранить историю блокчейна: обозреватели блоков и одноранговые торрент-сети.

При этом, по словам Бутерина, EIP-4444 имеет определенные неявные преимущества. В частности, реализация предложения может повысить децентрализацию узлов сети, поскольку рабочие процессы станут проще.

Фильтры Блума

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

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

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

Переход к SSZ

Это метод сериализации, призванный заменить RLP на уровне консенсуса. По словам Бутерина, переход на новый формат позволит существенно упростить создание приложений. Он также выделил несколько преимуществ этой сериализации:

  • более простая и понятная спецификация;
  • доказательства на базе «дерева Меркла» значительно короче, длина может быть ограничена;
  • нет необходимости в реализации сложного кода преобразования битов;
  • возможность повторного использования реализаций.

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

incrypted.com