Понимание и навигация по предстоящему обновлению Dencun в сети Ethereum
:quality(80)/2024-02-08/89EB8D82A00E8516DBA0D509FF3077D0.jpg)
С момента публикации своего белого документа в 2013 году Ethereum отметил девять лет существования. За этот длительный и выдающийся период Ethereum успешно прошел через 11 крупных обновлений, каждое из которых привносило новые нарративы и возможности в его экосистему. На текущем этапе Serenity (Ethereum 2.0) основатель Виталик Бутерин обозначил дорожную карту из шести этапов обновления, сосредоточенную на масштабируемости, повышении безопасности, механизмах консенсуса и оптимизации экономической модели. Согласно дорожной карте Ethereum Виталика Бутерина, обновление Dencun является частью этапа "The Surge".
The Surge
Этап The Surge в первую очередь направлен на решение постоянной проблемы масштабируемости с целью в конечном итоге достичь уровня производительности в 100 000 транзакций в секунду (TPS) для Ethereum, приближаясь к скорости традиционных электронных платежей. Это обновление достигается с помощью Danksharding ("DS"), также известного как шардинг, и является центральным моментом данной статьи, освещающей предстоящее обновление Dencun, запланированное на этот год.
:quality(80)/2024-02-08/F7E113438E80C4F3CAFFB691A223E646.jpg)
Что такое обновление Dencun?
Обновление Dencun - это значительное улучшение Ethereum, разработанное для увеличения объема хранения данных и снижения затрат. Обновление Dencun включает пять предложений по улучшению Ethereum (EIP), среди которых особое внимание привлекает EIP-4844. EIP-4844 направлен на решение проблем масштабируемости Ethereum, помогая снизить стоимость транзакций для решений второго уровня Ethereum, что напрямую приносит пользу более широкой экосистеме L2. Помимо основного EIP-4844, другие предложения по улучшению включают EIP-1153, EIP-4788, EIP-5656 и EIP-6780.
17 и 30 января Ethereum начал тестирование обновления Dencun в тестовых сетях Goerli и Sepolia. Текущая тестовая сеть работает гладко, с нормальной подачей количества Blob. Последующие тесты в тестовой сети Holesky запланированы на 7 февраля, а дата внедрения в основную сеть еще не объявлена.
:quality(80)/2024-02-08/E6BAC4427BA654F1EA031EFE26CE37B4.jpg)
EIP-4844 (Proto-Danksharding):
В настоящее время все данные транзакций второго уровня в Ethereum хранятся в Calldata первого уровня. Однако пространство Calldata ограничено и не может удовлетворить растущие потребности в хранении, что приводит к высоким затратам на использование данных и увеличивает вычислительную нагрузку на узлы Ethereum. Обновление Dencun вводит Blob, новую структуру хранения данных в EIP-4844, специально разработанную для хранения данных транзакций, передаваемых со второго уровня на первый. Blob хранится на уровне консенсуса, отдельно от Calldata, что делает его недоступным для виртуальной машины Ethereum (EVM). Роль Blob заключается в выполнении проверки доступа к хранимым данным со стороны спроса в течение определенного периода времени (примерно один месяц) без необходимости полного выполнения первым уровнем, что значительно снижает нагрузку на узлы.
:quality(80)/2024-02-08/FD8C8A9653332FB4FAA8E42562CDB3C2.jpg)
(Источник: https://hackmd.io/@luozhu/SyleCcpti)
В настоящее время размер Blob фиксирован и составляет 128 КБ, что означает, что один Rollup может приобрести только целый Blob, а не отдельные части данных. В целом, прикрепление шести полных Blob к блоку увеличивает размер блока примерно на 40%. Учитывая, что текущий размер блока составляет примерно 1,875 МБ, полный набор Blob может добавить около 0,75 МБ. Это увеличение происходит в течение 18-дневного скользящего периода, обеспечивая отсутствие долгосрочного увеличения емкости хранения для сетевых узлов.
:quality(80)/2024-02-08/6EC7C4A96465BCA9CB8917413F1C7C54.jpg)
Новый прекомпилированный Point Evaluation Precompile:
Кроме того, EIP-4844 вводит новый прекомпилированный код под названием Point Evaluation Precompile, облегчающий проверку данных, связанных с Blob, для решений Optimistic Rollup и ZK Rollup. В Optimistic Rollup Point Evaluation Precompile в основном используется для проверки базовых данных, предоставляемых при подаче доказательства мошенничества. В ZK Rollup он используется для проверки двух критических обязательств: обязательства Blob и собственного обязательства ZK Rollup. Используя Point Evaluation Precompile, ZK Rollups могут эффективно доказывать, что эти обязательства указывают на одни и те же данные, обеспечивая согласованность данных и обеспечивая надежность и безопасность всей системы ZK Rollup.
EIP-1153 (Мгновенные операции с хранилищем):
В настоящее время все хранение данных в Ethereum следует модели постоянного хранения, включая хранение временных данных, что приводит к расточительности и высоким комиссиям за газ. EIP-1153 направлен на введение нового механизма обработки временного или мгновенного хранения во время выполнения смарт-контрактов. Введение мгновенных операций с хранилищем позволяет смарт-контрактам читать и вызывать данные временного хранилища в течение полного цикла выполнения транзакции и очищать временные данные после завершения цикла выполнения транзакции.
EIP-4788 (Отправка корня блока Beacon):
Текущая независимость между виртуальной машиной Ethereum (EVM) и Beacon Chain (уровень консенсуса Ethereum) создает некоторые проблемы. EVM не может напрямую получить доступ к Beacon Chain и полагается на внешние доверенные оракулы для получения данных и статуса из Beacon Chain. EIP-4788 размещает корень блока Beacon Chain в каждом заголовке блока выполнения, позволяя EVM напрямую получать доступ к статусу и данным уровня консенсуса Ethereum. Это вводит оракул на уровне протокола, повышая операционную эффективность, точность и устраняя риски, связанные с внешними оракулами.
EIP-5656 (Опкод MCOPY):
EIP-5656 вводит опкод MCOPY для оптимизации процесса копирования данных в памяти во время выполнения смарт-контрактов. Копирование памяти относится к процессу перемещения данных из одного места в памяти в другое, что является фундаментальной операцией в вычислениях, используемой для построения структур данных и копирования объектов. Принятие опкода MCOPY снизит комиссии за газ, связанные с соответствующими операциями, одновременно повышая производительность выполнения контрактов.
EIP-6780 (Ограничение SELFDESTRUCT):
Существующий опкод SELFDESTRUCT, как следует из названия, позволяет разработчикам полностью удалять смарт-контракты из блокчейна. При выполнении он удаляет код контракта и хранилище из Ethereum, отправляя оставшийся ETH в контракте на указанный адрес. Эта операция включает значительные изменения в состоянии аккаунта, так как она включает удаление развернутого кода контракта и данных хранилища из цепочки.
EIP-6780 направлен на ограничение использования опкода SELFDESTRUCT. Он будет действовать только при создании смарт-контракта и выполнении опкода SELFDESTRUCT в рамках одной и той же транзакции. В других случаях удаления кода или хранилища не будет.
Резюме:
Будучи пионером в технологии блокчейн, Ethereum постоянно совершенствует свои технические возможности посредством обновлений и улучшений, чтобы соответствовать растущим требованиям бизнеса и ожиданиям пользователей. Обновление Dencun представляет собой значительный шаг для Ethereum в его дорожной карте по улучшению масштабируемости и производительности.
С внедрением обновления Dencun Ethereum добился существенного прогресса в плане безопасности, масштабируемости и устойчивости, закладывая прочную основу для более широкого применения в будущем блокчейна.