В дизайне протокола Ethereum множество "деталей" имеет решающее значение для его успеха. На самом деле, около половины содержания касается различных типов улучшений EVM, в то время как остальная часть состоит из разнообразных нишевых тем, что и означает "сложность".
Процветание: ключевая цель
Превратить EVM в высокопроизводительное и стабильное "конечное состояние"
Внедрение абстракции аккаунта в Протокол, позволяющее всем пользователям наслаждаться более безопасным и удобным аккаунтом
Оптимизация экономии торговых издержек, повышение масштабируемости при одновременном снижении рисков
Исследование современных криптографий, чтобы Эфир значительно улучшился в долгосрочной перспективе
В настоящее время EVM трудно поддается статическому анализу, что затрудняет создание эффективных реализаций, формальную верификацию кода и дальнейшее расширение. Кроме того, эффективность EVM низка, и трудно реализовать многие формы высокоуровневой криптографии, если только не поддерживается явная предкомпиляция.
Что это такое и как это работает?
Первый шаг в текущей дорожной карте улучшений EVM - это формат объекта EVM (EOF), который планируется включить в следующий хардфорк. EOF представляет собой ряд EIP, которые определяют новую версию кода EVM с множеством уникальных особенностей, наиболее заметной из которых является:
Код ( может быть выполнен, но невозможно считать ) из EVM, и данные ( могут быть считаны, но невозможно выполнить ) между ними.
Запрещен динамический переход, разрешен только статический переход
Код EVM больше не может наблюдать за информацией, связанной с топливом
Добавлен новый механизм явных подпрограмм
Старые контракты будут продолжать существовать и могут быть созданы, хотя в конечном итоге старые контракты ( могут быть постепенно устаревшими, а также возможно принудительное преобразование в код EOF ). Новые контракты получат выгоду от повышения эффективности, которое принесет EOF — сначала за счет немного уменьшенного байт-кода благодаря свойству подпрограмм, а затем за счет новых функций или снижения затрат на газ, специфичных для EOF.
После внедрения EOF дальнейшие обновления стали значительно проще, на данный момент наиболее развитыми являются арифметические расширения модуля EVM ( EVM-MAX ). EVM-MAX создает набор новых операций, специально предназначенных для модульных вычислений, и помещает их в новую область памяти, к которой нельзя получить доступ через другие операции, что делает возможным использование оптимизаций, таких как умножение Монтгомери.
Новая идея заключается в сочетании EVM-MAX с особенностью SIMD (один оператор, множество данных) (, SIMD как концепция Эфира существует уже долгое время, впервые была предложена Грегом Колвином в EIP-616. SIMD может использоваться для ускорения множества форм криптографии, включая хеш-функции, 32-битные STARKs и криптографию, основанную на решетках. Сочетание EVM-MAX и SIMD делает эти два производительных расширения естественной парой.
![Виталик о возможном будущем Эфира (шестая часть): The Splurge])https://img-cdn.gateio.im/webp-social/moments-8930b556d169a2bc7168ddc2e611d3df.webp(
Общее проектирование комбинации EIP будет начинаться с EIP-6690, а затем:
Разрешает )i( любое нечетное число или )ii( любую степень двойки, не превышающую 2768, в качестве модуля
Для каждой EVM-MAX команды ) сложения, вычитания, умножения ( добавляется версия, которая больше не использует 3 непосредственных числа x, y, z, а использует 7 непосредственных чисел: x_start, x_skip, y_start, y_skip, z_start, z_skip, count. В коде Python эти команды действуют аналогично:
питон
Для i в range)count(:
mem[z_start + z_skip * количество] = op)
mem[x_start + x_skip * количество],
mem[y_start + y_skip * количество]
(
На практике это будет обрабатываться параллельно.
Возможно добавление XOR, AND, OR, NOT и SHIFT), включая циклические и нециклические(, по крайней мере для степеней двойки. Одновременно добавление ISZERO) будет отправлять вывод в основной стек EVM(, что будет достаточно мощным для реализации криптографии на эллиптических кривых, малом поле криптографии), таких как Poseidon, Circle STARKs(, традиционных хеш-функций), таких как SHA256, KECCAK, BLAKE( и криптографии на основе решеток. Другие обновления EVM также могут быть реализованы, но до сих пор им уделялось меньше внимания.
) Существующие ссылки на исследования
EOF:
ЭВМ-МАКС:
SIMD:
Остальная работа и компромиссы
В настоящее время EOF планируется включить в следующий хардфорк. Хотя всегда существует вероятность его удаления в последнюю минуту — в предыдущих хардфорках некоторые функции временно удалялись, но это будет сопряжено с большими трудностями. Удаление EOF означает, что любые будущие обновления EVM придется проводить без EOF, хотя это возможно, но может быть сложнее.
Основные компромиссы EVM заключаются в сложности L1 и сложности инфраструктуры, EOF требует добавления большого объема кода в реализацию EVM, а статическая проверка кода также довольно сложна. Однако, в обмен на это, мы можем упростить высокоуровневые языки, упростить реализацию EVM и получить другие преимущества. Можно сказать, что приоритетный график постоянного улучшения Ethereum L1 должен включать и строиться на основе EOF.
Необходимой важной работой является реализация функций, подобных EVM-MAX и SIMD, а также бенчмаркинг потребления газа для различных криптографических операций.
Как взаимодействовать с другими частями дорожной карты?
L1 настраивает свой EVM, чтобы L2 также мог легче вносить соответствующие изменения. Если они не будут синхронно настраиваться, это может вызвать несовместимость и негативные последствия. Кроме того, EVM-MAX и SIMD могут снизить газовые расходы многих систем доказательства, что сделает L2 более эффективным. Это также упрощает замену большего количества предкомпилированных функций кодом EVM, который может выполнять те же задачи, что может не значительно повлиять на эффективность.
![Виталик о возможном будущем Эфира (шестая часть): The Splurge]###https://img-cdn.gateio.im/webp-social/moments-ec1638a809393a6ed42724fb08f534da.webp(
Абстракция аккаунта
) Что решает?
В настоящее время транзакции могут быть подтверждены только одним способом: подписью ECDSA. Изначально абстракция аккаунта была задумана для того, чтобы преодолеть это, позволяя логике подтверждения аккаунта быть произвольным EVM-кодом. Это может активировать ряд приложений:
Переключиться на антиквантовую криптографию
Замена старого ключа ### широко считается рекомендуемой практикой безопасности (
Мультиподписные кошельки и социальные восстановительные кошельки
Используйте один ключ для операций с низкой стоимостью, используйте другой ключ ) или набор ключей ( для операций с высокой стоимостью
Разрешите работе приватного протокола без ретрансляторов, значительно снижающего его сложность и устраняющего одну ключевую центральную точку зависимости.
С момента введения абстракции аккаунта в 2015 году, её цели также расширились, включая множество "удобных целей", например, аккаунт, который не имеет ETH, но обладает некоторыми ERC20, может использовать ERC20 для оплаты газа.
MPC)Многопартийные вычисления( — это технология с 40-летней историей, используемая для разделения ключа на несколько частей и хранения их на нескольких устройствах, с использованием криптографических технологий для генерации подписи без необходимости прямого объединения этих частей ключа.
EIP-7702 является предложением, планируемым для внедрения в следующем жестком форке. EIP-7702 является результатом растущего осознания необходимости предоставления удобства абстракции аккаунтов для всех пользователей ), включая пользователей EOA (, и направлено на улучшение опыта всех пользователей в краткосрочной перспективе, а также на избежание разделения на две экосистемы.
Эта работа началась с EIP-3074 и в конечном итоге привела к EIP-7702. EIP-7702 предоставляет "удобные функции" абстракции учетной записи всем пользователям, включая сегодняшние EOA) внешние управляющие аккаунты, то есть аккаунты(, контролируемые ECDSA подписями.
Хотя некоторые вызовы ), особенно вызов "удобства" ( могут быть решены с помощью прогрессивных технологий, таких как многопартитные вычисления или EIP-7702, основная цель безопасности первоначально предложенного предложения абстракции аккаунтов может быть достигнута только путем ретроспективного анализа и решения исходной проблемы: разрешение управления проверкой транзакций кодом смарт-контракта. Причина, по которой это до сих пор не реализовано, заключается в сложностях безопасной реализации.
![Виталик о возможном будущем Ethereum (шестая часть): The Splurge])https://img-cdn.gateio.im/webp-social/moments-66bd22f0b53601d0976aa3a2b701c981.webp(
) Что это такое и как это работает?
Суть абстракции счета проста: позволять смарт-контрактам инициировать транзакции, а не только EOA. Вся сложность заключается в реализации этого способа, который дружелюбен к поддержанию децентрализованной сети и защищает от атак типа "отказ в обслуживании".
Типичной ключевой проблемой является проблема множественных отказов:
Если функция валидации 1000 аккаунтов зависит от какого-то единственного значения S, и текущее значение S делает все транзакции в мемпуле действительными, то одна единственная транзакция, изменяющая значение S, может сделать все остальные транзакции в мемпуле недействительными. Это позволяет злоумышленнику с очень низкими затратами отправлять мусорные транзакции в мемпул, тем самым блокируя ресурсы узлов сети.
После многолетних усилий, направленных на расширение функциональности при ограничении рисков отказа в обслуживании ###DoS(, в конечном итоге был найден способ реализации "идеальной абстракции учетной записи": ERC-4337.
Работа ERC-4337 заключается в том, чтобы разделить обработку действий пользователей на два этапа: верификацию и выполнение. Все верификации сначала обрабатываются, а все выполнения затем обрабатываются. В пуле памяти действия пользователей принимаются только тогда, когда этап верификации касается только их собственного счета и не считывает переменные окружения. Это помогает предотвратить атаки с многократным отказом. Кроме того, для этапа верификации также строго применяются ограничения по газу.
ERC-4337 был разработан как дополнительный стандарт протокола )ERC(, потому что в то время разработчики клиентов Ethereum сосредоточились на слиянии )Merge( и не имели дополнительных ресурсов для работы с другими функциями. Вот почему ERC-4337 использует объекты, называемые пользовательскими операциями, вместо обычных транзакций. Однако недавно мы осознали необходимость записать как минимум часть из этого в протокол.
Две ключевые причины следующие:
EntryPoint как врожденная неэффективность контракта: каждый бандл имеет фиксированные затраты около 100,000 gas, а также дополнительные тысячи gas для каждой операции пользователя.
Обеспечение необходимости атрибутов Ethereum: например, включает в себя гарантии, созданные списком, которые необходимо перевести на абстрактного пользователя учетной записи.
![Виталик о возможном будущем Эфира (шестой): The Splurge])https://img-cdn.gateio.im/webp-social/moments-c0f722db75e53f4ff37ef40f5547dfc4.webp(
Кроме того, ERC-4337 также расширяет две функции:
Платежный агент ) Paymasters (: позволяет одной учетной записи оплачивать сборы от имени другой учетной записи, что нарушает правило, согласно которому этап проверки может получить доступ только к учетной записи отправителя, поэтому введена специальная обработка для обеспечения безопасности механизма платежного агента.
Агрегаторы): поддерживают функции агрегации подписей, такие как агрегация BLS или агрегация на основе SNARK. Это необходимо для достижения максимальной эффективности данных на Rollup.
( Существующие исследовательские ссылки
Доклад о истории абстракции аккаунта:
ERC-4337:
ЭИП-7702:
Код BLSWallet ) использует агрегирующую функцию ###:
EIP-7562( записан Протоколом абстракции аккаунтов ):
EIP-7701( на основе EOF протокол абстракции учетной записи ):
( Остальная работа и компромиссы
В настоящее время основная задача заключается в том, как полностью интегрировать абстракцию учетной записи в протокол. Недавно популярным стал EIP абстракции учетной записи, который записывается в протокол, это EIP-7701, который реализует абстракцию учетной записи на основе EOF. Учетная запись может иметь отдельную часть кода для верификации, и если учетная запись настроит эту часть кода, то этот код будет выполняться на этапе верификации транзакции из этой учетной записи.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
17 Лайков
Награда
17
5
Репост
Поделиться
комментарий
0/400
GweiTooHigh
· 08-12 00:28
Абстрагирование счета действительно может стать популярным?
Посмотреть ОригиналОтветить0
MEVictim
· 08-10 08:39
Это всего лишь вопрос EVM, неинтересно.
Посмотреть ОригиналОтветить0
BlockchainDecoder
· 08-10 08:39
Согласно данным статьи RV 2022 года, эффективность стека существующей архитектуры EVM составляет всего 42%, что действительно требует оптимизации.
Посмотреть ОригиналОтветить0
PessimisticOracle
· 08-10 08:39
Сколько ни говори, всё равно это просто болтовня? Если это действительно сбудется, я проиграл.
Перспективы Ethereum: обновление EVM и абстрагирование счета ведут к новому этапу процветания
Будущее протокола Ethereum (шесть): Процветание
В дизайне протокола Ethereum множество "деталей" имеет решающее значение для его успеха. На самом деле, около половины содержания касается различных типов улучшений EVM, в то время как остальная часть состоит из разнообразных нишевых тем, что и означает "сложность".
Процветание: ключевая цель
! Виталик о возможном будущем Ethereum (6): Трата
Улучшение EVM
Решило какую проблему?
В настоящее время EVM трудно поддается статическому анализу, что затрудняет создание эффективных реализаций, формальную верификацию кода и дальнейшее расширение. Кроме того, эффективность EVM низка, и трудно реализовать многие формы высокоуровневой криптографии, если только не поддерживается явная предкомпиляция.
Что это такое и как это работает?
Первый шаг в текущей дорожной карте улучшений EVM - это формат объекта EVM (EOF), который планируется включить в следующий хардфорк. EOF представляет собой ряд EIP, которые определяют новую версию кода EVM с множеством уникальных особенностей, наиболее заметной из которых является:
Старые контракты будут продолжать существовать и могут быть созданы, хотя в конечном итоге старые контракты ( могут быть постепенно устаревшими, а также возможно принудительное преобразование в код EOF ). Новые контракты получат выгоду от повышения эффективности, которое принесет EOF — сначала за счет немного уменьшенного байт-кода благодаря свойству подпрограмм, а затем за счет новых функций или снижения затрат на газ, специфичных для EOF.
После внедрения EOF дальнейшие обновления стали значительно проще, на данный момент наиболее развитыми являются арифметические расширения модуля EVM ( EVM-MAX ). EVM-MAX создает набор новых операций, специально предназначенных для модульных вычислений, и помещает их в новую область памяти, к которой нельзя получить доступ через другие операции, что делает возможным использование оптимизаций, таких как умножение Монтгомери.
Новая идея заключается в сочетании EVM-MAX с особенностью SIMD (один оператор, множество данных) (, SIMD как концепция Эфира существует уже долгое время, впервые была предложена Грегом Колвином в EIP-616. SIMD может использоваться для ускорения множества форм криптографии, включая хеш-функции, 32-битные STARKs и криптографию, основанную на решетках. Сочетание EVM-MAX и SIMD делает эти два производительных расширения естественной парой.
![Виталик о возможном будущем Эфира (шестая часть): The Splurge])https://img-cdn.gateio.im/webp-social/moments-8930b556d169a2bc7168ddc2e611d3df.webp(
Общее проектирование комбинации EIP будет начинаться с EIP-6690, а затем:
питон Для i в range)count(: mem[z_start + z_skip * количество] = op) mem[x_start + x_skip * количество], mem[y_start + y_skip * количество] (
На практике это будет обрабатываться параллельно.
) Существующие ссылки на исследования
Остальная работа и компромиссы
В настоящее время EOF планируется включить в следующий хардфорк. Хотя всегда существует вероятность его удаления в последнюю минуту — в предыдущих хардфорках некоторые функции временно удалялись, но это будет сопряжено с большими трудностями. Удаление EOF означает, что любые будущие обновления EVM придется проводить без EOF, хотя это возможно, но может быть сложнее.
Основные компромиссы EVM заключаются в сложности L1 и сложности инфраструктуры, EOF требует добавления большого объема кода в реализацию EVM, а статическая проверка кода также довольно сложна. Однако, в обмен на это, мы можем упростить высокоуровневые языки, упростить реализацию EVM и получить другие преимущества. Можно сказать, что приоритетный график постоянного улучшения Ethereum L1 должен включать и строиться на основе EOF.
Необходимой важной работой является реализация функций, подобных EVM-MAX и SIMD, а также бенчмаркинг потребления газа для различных криптографических операций.
Как взаимодействовать с другими частями дорожной карты?
L1 настраивает свой EVM, чтобы L2 также мог легче вносить соответствующие изменения. Если они не будут синхронно настраиваться, это может вызвать несовместимость и негативные последствия. Кроме того, EVM-MAX и SIMD могут снизить газовые расходы многих систем доказательства, что сделает L2 более эффективным. Это также упрощает замену большего количества предкомпилированных функций кодом EVM, который может выполнять те же задачи, что может не значительно повлиять на эффективность.
![Виталик о возможном будущем Эфира (шестая часть): The Splurge]###https://img-cdn.gateio.im/webp-social/moments-ec1638a809393a6ed42724fb08f534da.webp(
Абстракция аккаунта
) Что решает?
В настоящее время транзакции могут быть подтверждены только одним способом: подписью ECDSA. Изначально абстракция аккаунта была задумана для того, чтобы преодолеть это, позволяя логике подтверждения аккаунта быть произвольным EVM-кодом. Это может активировать ряд приложений:
Разрешите работе приватного протокола без ретрансляторов, значительно снижающего его сложность и устраняющего одну ключевую центральную точку зависимости.
С момента введения абстракции аккаунта в 2015 году, её цели также расширились, включая множество "удобных целей", например, аккаунт, который не имеет ETH, но обладает некоторыми ERC20, может использовать ERC20 для оплаты газа.
MPC)Многопартийные вычисления( — это технология с 40-летней историей, используемая для разделения ключа на несколько частей и хранения их на нескольких устройствах, с использованием криптографических технологий для генерации подписи без необходимости прямого объединения этих частей ключа.
EIP-7702 является предложением, планируемым для внедрения в следующем жестком форке. EIP-7702 является результатом растущего осознания необходимости предоставления удобства абстракции аккаунтов для всех пользователей ), включая пользователей EOA (, и направлено на улучшение опыта всех пользователей в краткосрочной перспективе, а также на избежание разделения на две экосистемы.
Эта работа началась с EIP-3074 и в конечном итоге привела к EIP-7702. EIP-7702 предоставляет "удобные функции" абстракции учетной записи всем пользователям, включая сегодняшние EOA) внешние управляющие аккаунты, то есть аккаунты(, контролируемые ECDSA подписями.
Хотя некоторые вызовы ), особенно вызов "удобства" ( могут быть решены с помощью прогрессивных технологий, таких как многопартитные вычисления или EIP-7702, основная цель безопасности первоначально предложенного предложения абстракции аккаунтов может быть достигнута только путем ретроспективного анализа и решения исходной проблемы: разрешение управления проверкой транзакций кодом смарт-контракта. Причина, по которой это до сих пор не реализовано, заключается в сложностях безопасной реализации.
![Виталик о возможном будущем Ethereum (шестая часть): The Splurge])https://img-cdn.gateio.im/webp-social/moments-66bd22f0b53601d0976aa3a2b701c981.webp(
) Что это такое и как это работает?
Суть абстракции счета проста: позволять смарт-контрактам инициировать транзакции, а не только EOA. Вся сложность заключается в реализации этого способа, который дружелюбен к поддержанию децентрализованной сети и защищает от атак типа "отказ в обслуживании".
Типичной ключевой проблемой является проблема множественных отказов:
Если функция валидации 1000 аккаунтов зависит от какого-то единственного значения S, и текущее значение S делает все транзакции в мемпуле действительными, то одна единственная транзакция, изменяющая значение S, может сделать все остальные транзакции в мемпуле недействительными. Это позволяет злоумышленнику с очень низкими затратами отправлять мусорные транзакции в мемпул, тем самым блокируя ресурсы узлов сети.
После многолетних усилий, направленных на расширение функциональности при ограничении рисков отказа в обслуживании ###DoS(, в конечном итоге был найден способ реализации "идеальной абстракции учетной записи": ERC-4337.
Работа ERC-4337 заключается в том, чтобы разделить обработку действий пользователей на два этапа: верификацию и выполнение. Все верификации сначала обрабатываются, а все выполнения затем обрабатываются. В пуле памяти действия пользователей принимаются только тогда, когда этап верификации касается только их собственного счета и не считывает переменные окружения. Это помогает предотвратить атаки с многократным отказом. Кроме того, для этапа верификации также строго применяются ограничения по газу.
ERC-4337 был разработан как дополнительный стандарт протокола )ERC(, потому что в то время разработчики клиентов Ethereum сосредоточились на слиянии )Merge( и не имели дополнительных ресурсов для работы с другими функциями. Вот почему ERC-4337 использует объекты, называемые пользовательскими операциями, вместо обычных транзакций. Однако недавно мы осознали необходимость записать как минимум часть из этого в протокол.
Две ключевые причины следующие:
![Виталик о возможном будущем Эфира (шестой): The Splurge])https://img-cdn.gateio.im/webp-social/moments-c0f722db75e53f4ff37ef40f5547dfc4.webp(
Кроме того, ERC-4337 также расширяет две функции:
( Существующие исследовательские ссылки
( Остальная работа и компромиссы
В настоящее время основная задача заключается в том, как полностью интегрировать абстракцию учетной записи в протокол. Недавно популярным стал EIP абстракции учетной записи, который записывается в протокол, это EIP-7701, который реализует абстракцию учетной записи на основе EOF. Учетная запись может иметь отдельную часть кода для верификации, и если учетная запись настроит эту часть кода, то этот код будет выполняться на этапе верификации транзакции из этой учетной записи.
Очарование этого метода