Исследователи Ethereum изучают предложенный дизайн EIP-8142 под названием «Block-in-Blobs», который перемещает данные исполнения (execution-payload) в специальные «блоб-объекты» (blobs), публикуемые вместе с блоками. Цель инициативы — снизить требования к пропускной способности сети и обеспечить большую масштабируемость.
В недавнем исследовательском посте «Blocks Are Dead. Long Live Blobs», соавтором которого выступил Тони Варштеттер и другие контрибьюторы Ethereum, подробно описан черновик предложения, впервые представленный ранее в этом году. Дизайн предполагает кодирование транзакционных данных непосредственно в блобы — формат данных, введённый в рамках апгрейда Ethereum EIP-4844 (proto-danksharding) в марте 2024 года. Это позволит валидаторам избежать необходимости загружать и повторно исполнять полные payload-данные исполнения.
Исследователи указывают на узкое место в архитектуре Ethereum: увеличение размеров блоков в сочетании с более высокими лимитами газа означает, что валидаторы должны загружать и верифицировать всё возрастающий объём данных. Это создаёт давление на пропускную способность и ограничивает масштабируемость сети.
Блобы, представленные как часть дорожной карты обеспечения доступности данных (data availability) во время обновления Dencun, предназначены для более эффективной передачи крупных фрагментов данных по сравнению со стандартными calldata транзакций. Они позволяют криптографически фиксировать данные и верифицировать их без полной репликации по всей сети.
Предложение EIP-8142 развивает эту идею дальше. Вместо того чтобы рассматривать блобы как вспомогательный слой данных, оно перемещает основные данные исполнения (уже закодированные в стандартном формате RLP Ethereum) непосредственно в сами блобы. Валидаторы будут проверять криптографические обязательства (commitments) для этих блобов и со временем полагаться на выборочную проверку доступности данных (data availability sampling). Это позволит им проверять небольшие части данных, чтобы убедиться в существовании полного набора, не загружая его целиком.
Изменение становится особенно актуальным в будущем, где системы zkEVM будут обрабатывать верификацию исполнения. Как отметил Варштеттер, «при использовании zkEVM валидаторы проверяют доказательства, а не транзакции напрямую». Нулевые знания (zero-knowledge proofs) могут подтвердить корректность обработки транзакций, устраняя необходимость для валидаторов повторно исполнять каждую транзакцию. Однако сами по себе эти доказательства не гарантируют фактической доступности данных транзакций. Без отдельного механизма данные могут быть скрыты, при этом проходя проверки консенсуса. «Block-in-Blobs» призван закрыть этот пробел, делая доступность данных явной, а не подразумеваемой.
Предложение также имеет более широкие последствия для учёта данных в Ethereum. В настоящее время Ethereum по-прежнему разделяет газ исполнения (execution gas) и использование данных в блобах. В новой модели оба компонента могут быть объединены в единую систему «data gas». Исследователи считают, что успешная реализация позволит согласовать затраты на все формы обеспечения доступности данных и избежать накладывающихся ограничений.
Отдельно ведутся работы по улучшению структуры и исполнения самих транзакций. Biconomy в сотрудничестве с направлением UX Фонда Ethereum предложила стандарт ERC-8211, который превращает транзакции в программируемые рабочие процессы. Вместо фиксированных параметров, установленных при подписании, ERC-8211 позволяет транзакциям получать данные в реальном времени из блокчейна, проверять условия и выполнять несколько шагов последовательно с одной подписью. Цель — сократить количество неудачных транзакций и обеспечить более сложные, управляемые агентами взаимодействия в протоколах DeFi.
Оба этих развития являются частью более широкой волны экспериментов в экосистеме Ethereum. Исследователи наметили многолетние пути обновлений до конца десятилетия, последовавшие за двойным хард-форком в прошлом году.