В этой статье обсуждаются идеи эволюции и причины разработки решения для расширения Rollup.

Первоначальный автор: ОРФЕО

Проект L2 снова в центре внимания.

Как представитель маршрута расширения Rollup в L2, после раздачи Arbitrum будет запущена эра zkSync. Что стоит за бесконечными новыми дизайнами и дорожными картами, в чем основная линия Rollup и в чем эволюционное мышление? Давайте посмотрим сегодня.

Основные пункты этой статьи:

  • Идея расширения L1 написана для третьего класса
  • Разработайте накопительное решение с нуля
  • Как использовать доказательство с нулевым разглашением, чтобы Rollup снова развивался

Начиная с аналогии

В отношении Биткойна и Эфириума с момента их рождения есть два самых больших критических замечания со стороны обычных пользователей:

  • Медленно: полоса изначально узкая, и если машин слишком много, она будет заблокирована.
  • Дорого: Плата за проезд на плоских пиках недешева.Если вы хотите быстро пройти в пиковый период, вам нужно использовать «денежную способность», чтобы добавить деньги и позволить шахтерам летать за вами на вертолетах.

Эти два критических замечания связаны с двумя факторами в конструкции блокчейна:

  • Пропускная способность: по аналогии с полосой движения, чем больше пропускная способность, тем больше автомобилей она может вместить и тем меньше вероятность того, что она будет заблокирована.
  • Механизм поощрения: Независимо от того, насколько большой подъезд, есть вероятность, что его заблокируют.В этом случае, кто пропустит первым?Это зависит от того, кто спешит, но вы не можете просто слушать слова людей ,это зависит от готовности платить,типа вызов скорой помощи.Это будет несколько сотен.

Если блокчейн действительно может быть подобен подъездной дорожке, то фундаментальное решение, естественно, состоит в том, чтобы расширить подъездную дорожку и в то же время сотрудничать с ценовыми средствами, чтобы направлять время выхода, и не выходить, если вы не находитесь в пути. торопиться.

Однако, несмотря на то, что расширение полос и увеличение емкости блока является привлекательным решением для повышения эффективности трафика, это последнее средство в дизайне блокчейна. Потому что чем больше размер блока, тем выше требования к оборудованию для майнеров и тем меньше майнеров, которые могут удовлетворить эти требования; согласно этой идее, если вы хотите обрабатывать тысячи транзакций в секунду, как Visa, вы только в конечном итоге сделаете еще один централизованная Visa противоречит основной цели недоверия к блокчейну.

Есть ли другое решение? Да, в дополнение к управлению временем мы также можем оптимизировать пространство, включая, помимо прочего:

  • Открыть разные полосы, одну для больших грузовиков, одну для легковых автомобилей и одну для автобусов, не мешая друг другу — Основываясь на этой идее, мы можем прийти к некоторым основным цепям, боковым цепям или плазме со своими сильными сторонами.
  • Оптимизируйте схему маршрута, перенаправьте трафик соответствующим образом, не ходите в город, чтобы что-то делать, вам нужно ехать по этой главной дороге, вам нужно пройти здесь через контрольно-пропускной пункт —— Основываясь на этой идее, мы можем шардировать.
  • Почему вы должны выйти? Еще не поздно провести удаленную встречу и прийти к соглашению, и еще не поздно подписать соглашение в оффлайне — исходя из этой идеи, у нас может быть государственный канал (State Channel).
  • Вам не обязательно водить машину самостоятельно, когда вы выходите на улицу, вы также можете воспользоваться услугами совместного автомобиля или общественным транспортом —— Основываясь на этой идее, у нас есть главный герой этой статьи, Rollup.

** Как автобус на блокчейне, Rollup на самом деле экономит место и экономит бензин (Газ, каламбур): **

  • Экономьте место, чтобы не было легко застрять, а потери, разделяемые каждым человеком, намного меньше, чем при вождении самостоятельно;
  • Бензин экономится, поэтому цена билета близка к народу, и каждый может себе это позволить.

Таким образом, Rollup решает два слота «медленно» и «дорого».

Вернемся к блокчейну и посмотрим конкретный план Rollup.

Разработка накопительного решения с нуля

Вместо того, чтобы смотреть на стандартный ответ (не говоря уже о том, что нет), лучше немного подождать и представить, что вы будете делать, когда вам поручат разработать Rollup для Ethereum.

С таким же успехом мы могли бы начать с двух точек зрения: снижения вычислительных затрат (экономия бензина) и снижения затрат на хранение (экономия места) и сначала предложить более радикальное решение под названием Rollup 1.0.

Накопительный пакет 1.0

Роллап 1.0 состоит из 3 основных пунктов:

  • Существует поставщик услуг (Оператор), который собирает все транзакции «совместного использования» (Транзакция) и «отправляет заказы», когда совместное использование автомобилей заполнено или нет, но согласованное время истекло, с учетом цены и своевременности;
  • Все расчеты, связанные с транзакциями, отправленными всеми, выполняются этим поставщиком услуг вне сети, потому что вычисления вне сети выполняются быстрее, чем в сети, а вычисления часто составляют основную часть затрат в сети, что может сэкономить много деньги;
  • После расчета получите обновленный статус (например, последний баланс в вашей учетной записи) и сохраните его в цепочке, чтобы стоимость хранения была намного ниже.

Проще говоря, это регулярный и количественный сбор всех запросов на транзакцию, а после вычислений вне сети в цепочке закрепляются только результаты вычислений.

Это решение прекрасно решает две основные болевые точки «медленно» и «дорого», но, похоже, порождает новые проблемы:

  • Поощрение: кто будет предоставлять услугу «совместного использования автомобилей» и каковы преимущества.
  • Проблема с обзором (Цензура): Поставщик услуг намеренно не обрабатывает мой заказ (либо зависает, либо завершает работу), что мне делать;
  • Проблема мошенничества (Fraud): Что делать, если поставщик услуг обманывает и подделывает результаты расчетов, заставляя меня переводить деньги другим, а деньги присваиваются им.

Для этих трех новых проблем мы можем повторить версию плана.

Сводка 2.0

Лучше всего решается проблема мотивации, а проблемы, которые можно решить с помощью денег, не являются проблемами. Поставщик услуг может поровну разделить стоимость «совместного использования автомобилей» и взимать немного дополнительных «чаевых».

Проблема обзора немного сложнее, но решение очень распространено в области блокчейна, и это децентрализация. Группа людей является поставщиками услуг, что лучше, чем только один поставщик услуг; каждый может быть поставщиком услуг, что лучше, чем фиксированная группа людей. В последнем способе игры, если все поставщики услуг не являются хорошими, вы также можете сами быть поставщиком услуг или напрямую перейти к L1, чтобы инициировать арбитраж.

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

Во-первых, для выявления мошенничества нам необходимо знать данные каждой транзакции (транзакции), состояние перед транзакцией (состояние), чтобы рассчитать новое состояние (состояние) после транзакции и использовать его для хранения это в цепочке поставщика услуг По сравнению с новым состоянием, если оно такое же, это означает, что поставщик услуг честен, в противном случае это означает, что он солгал. Однако мы не знаем данные транзакции, потому что они не в цепочке. В результате мы можем только скептически относиться и не можем судить о том, честен поставщик услуг или нет.

Далее, чтобы предотвратить мошенничество, лучший способ сделать мошенничество невозможным, что более сложно, если только расчет поставщика услуг не проверяется каждый раз в цепочке, но таким образом, нет никакого преимущества " совместное использование автомобилей» вверх. Таким образом, мы можем только сделать шаг назад, позволить цене мошенничества быть очень высокой и заставить поставщиков услуг иметь шкуру в игре, например, уплату депозита (ставки), которая будет конфискована в случае обнаружения мошенничества. (Этот метод называется социальным консенсусом, который относится к безопасности на основе игр и также упоминался в «Еженедельнике № 3».)

Накопительный пакет 3.0

Роллап 2.0 неплох, но проблема выявления мошенничества не решена.

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

Кто обнаружит, что они мошенники? Очевидно, что это вряд ли будет рядовой пользователь, потому что следить за каждым шагом поставщика услуг 7х24 часа невозможно, поэтому это может быть только профессиональный «охотник за головами» (Валидатор). Если «охотник за головами» сообщит о мошенничестве в течение 7 дней после того, как поставщик услуг «отправит заказ» и подтвердит, что это правда, транзакция будет отменена, а поставщик услуг будет наказан. Конечно, точно так же и «охотникам за головами» нужны поощрения, например, после обнаружения мошенничества часть депозита поставщика услуг будет отдана «охотнику за головами» (только часть, чтобы избежать сговора между поставщик услуг и охотник за головами).

Накопительный пакет 4.0

На этапе Rollup 3.0 все решение могло работать без сбоев, но были введены новые затраты. Затраты пока включают:

  • Плата поставщикам услуг (включая затраты и «чаевые»);
  • Стоимость хранения данных о транзакциях и состоянии в сети;
  • Когда «Охотник за головами» считает, что поставщик услуг является мошенником, вычислительные затраты на проверку того, что он сказал, верны в цепочке.

Давайте посмотрим, какие затраты можно оптимизировать.

данные транзакции

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

Взяв в качестве примера простейшую транзакцию перевода ETH, мы разобрали состав содержимого каждой транзакции и увидели, что наибольшую долю составляет пространство для подписи. Мы можем объединить подписи всех транзакций в одну (агрегация ключей), что значительно экономит ресурсы хранения (аналогично Шнорру в биткойнах). Кроме того, мы также можем оптимизировать другие части, такие как избавление от одноразового номера и выбор «толстого и тонкого» в максимально возможной степени при «совместном использовании автомобилей» и «человека совместного использования», который идеально подходит для максимального использования «автомобиля». " космос.

В этой статье обсуждаются идеи развития и причины разработки решения для расширения Rollup

источник:

Буквально в три или два раза размер каждой транзакции перевода ETH был уменьшен со 112 байт до 12 байт, что близко к одной десятой от предыдущей; конечно, есть и другие средства для дальнейшего сжатия данных транзакции.

В реальной работе мы можем вставить такой метод в контракт, развернутый в цепочке:

function storeTxData(bytes calldata data) external {// Ничего не делать}

Затем каждый раз, когда "совместное использование автомобилей" оказывается успешным, объединенные и сжатые данные транзакции передаются в этот метод как данные вызова. Данные о звонках не нужно хранить постоянно, а после Периода оспаривания общественного согласия (Challenge Period) не имеет значения, будет ли он обрезан (Prune); сама цена очень низкая, а с реализацией будет дешевле EIP, такие как Danksharding и Data Blob, эта форма применения L1 к распределению хранилища данных (доступность данных) также будет более формальной.

статусные данные

Теперь, когда данные о транзакциях загружены в цепочку, любой может вычислить обновленное состояние с помощью данных о транзакциях, а данные о состоянии не так уж и нужны. Мы можем сохранить только Merkel Root данных о состоянии, который используется для того, чтобы обычные пользователи («автомобилисты») могли подавать заявки на снятие средств непосредственно в L1, когда поставщик услуг не сотрудничает, и полагаться на Merkel Proof, чтобы доказать, что у них есть деньги. в их учетных записях.

АРБИТРАЖНЫЕ ИЗДЕРЖКИ МОШЕННИЧЕСТВА

Когда «охотник за головами» сообщает о мошенничестве поставщику услуг, расчет контракта в сети (Replay) выполняется один раз и сравниваются результаты статуса, что теоретически возможно. Тем не менее, стоимость этого не является низкой (хотя это уже хорошо), а во-вторых, сумма газа транзакций, включенных в «список совместного использования автомобилей» Rollup, может превышать лимит газа Ethereum, что делает невозможным проверять.

Следовательно, арбитраж должен уменьшить нагрузку, а способ уменьшить нагрузку, естественно, состоит в том, чтобы вынести ненужные вычислительные операции за пределы цепочки. Одно из решений называется Interactive Proving, Общий процесс выглядит следующим образом:

  • «Охотник за головами» вносит депозит, затем отчитывается и разбивает весь процесс расчета на n сегментов по порядку, указывая, что у поставщика услуг есть мошенничество в сегменте k (1≤k≤n);
  • Поставщик услуг детализировал и разобрал сегмент k на сегмент k и указал, какой сегмент «охотника за головами» неверен;
  • Ходить туда-сюда таким образом, зная, что вычислительные операции больше нельзя детализировать и разобрать, например, при разборке «охотник за головами» думает 1+1=2, а поставщик услуг думает 1+1=3;
  • В это время контракт в цепочке вмешивается, вычисляет 1+1 и получает 2, тем самым определяя, что поставщик услуг является мошенником, конфискует его депозит и вознаграждает часть его «охотнику за головами».

(Во время всего процесса, если одна сторона не отвечает в течение тайм-аута, сторона терпит неудачу.)

Таким образом, стоимость арбитража по всей цепочке очень и очень низкая.

Сказав это, мы полностью создали решение Rollup. Поскольку эта схема предполагает, что поставщик услуг по умолчанию честен, если нет отчета «охотника за головами», эта фракция называется объединением оптимистов, так называемым Оптимистическим объединением.

Итак, является ли наш Rollup 4.0 лучшим решением?

Повторная эволюция роллапа

После наших многочисленных итераций Rollup 4.0 все еще имеет некоторые недостатки:

  • Мошенничество должно быть раскрыто «охотниками за головами», но если мошенничества нет долгое время, «охотники за головами» могут выйти из бизнеса, потому что они убыточны, поэтому будет разрыв (хотя маловероятно, из-за Сводная цепочка Заинтересованные стороны, такие как поставщики приложений, скорее всего, будут действовать как «охотники за головами»);
  • Чтобы быть уверенным в отсутствии мошенничества, основанного на социальном консенсусе, нужно подождать несколько дней, что повлияет на такие операции, как снятие средств;
  • Данных по цепочке много, а стоимость еще есть;
  • В настоящее время, полагаясь на уровень расширения Rollup, пропускная способность может быть увеличена в 10 раз. Возможно ли быть выше?

Есть ли решение, которое может сделать мошенничество вообще невозможным, сделать финализацию (Finality) быстрее, сделать меньше данных, которые нужно загружать в цепочку, и сделать расширение на порядок больше? Я не хочу слишком многого, но есть некое решение, способное удовлетворить почти все фантазии — Zero Knowledge Rollup (сокращенно ZK-Rollup).

ZK-Rollup — это идея Rollup, использующая доказательство с нулевым разглашением (ZKP). Так называемый ZKP относится к технологии, которая убеждает другую сторону в том, что вы знаете эту информацию, не раскрывая никакой конфиденциальной информации. Чтобы объяснить ZKP, есть два моих любимых примера:

*Представьте себе средневековый европейский город, и у меня есть карта сокровищ с отмеченным на ней сокровищем. Чтобы доказать вам, что у меня есть карта сокровищ, но не сообщив вам точное местонахождение клада, я завязываю вам глаза, тащу вас в карету и полчаса везу вас по городу, чтобы убедиться, вы теряете чувство направления, наконец, прибываете в пункт назначения, выходите из машины и показываете вам сокровище, а затем отвозите вас обратно. Это наивная форма ЗКП.

  • Другая аналогия более распространена. Предположим, есть судоку: я знаю ответ, а вы нет, но вы не верите, что я знаю; я хочу доказать вам, что знаю, но не хочу, чтобы вы знали ответ. что делать? Я могу положить судоку на стол с карточками, а затем поставить открытые числа вверх, а числа, которые нужно заполнить, вниз, и позволить вам проверить мой ответ по строке или столбцу. Если по строкам, я сгруппирую числа в каждой строке вместе, разобью их и покажу вам, что каждая строка — от 1 до 9. Можно повторить несколько раз, чтобы можно было поверить, что я действительно знаю ответ с большой долей вероятности. Это один из интерактивных методов проверки ZKP (поскольку в блокчейне трудно добиться взаимодействия в реальном времени в цепочке, обычно используется неинтерактивная проверка, а хэш-функция генерирует случайные вызовы).

Говоря менее строго, основная идея ЗКП состоит в том, что доказывающий (Prover) сначала скрывает секретное знание, «коммитит» (Commit), а затем проверяющий (Verifier) инициирует случайный вызов (Challenge). если он сможет успешно пройти испытание, то есть большая вероятность, что он обладает соответствующим тайным знанием.

ЗКП должен соответствовать 3 требованиям:

  • Если доказывающий лжёт, велика вероятность провала испытания (Здравость);
  • Если у доказывающего есть знания, он сможет пройти испытание (Полнота);
  • Во время взаимодействия между двумя сторонами доказывающий не будет раскрывать никакой полезной информации (Нулевое разглашение).

Чтобы удовлетворить этим трем требованиям, ZKP использует множество задач NP, включая простейшее разложение простых чисел, дискретные логарифмы (такие как Шнорр) и так далее.

ZKP не является технологией, созданной для блокчейна, но ее можно использовать для расширения L2, главным образом потому, что хороший ZKP обладает следующими полезными характеристиками:

  • Доказательство (поставщик услуг) может быстро предоставить доказательство, чтобы гарантировать, что эффективность вычислений по цепочке очень высока и не станет узким местом;
  • Размер доказательства невелик или, по крайней мере, пропорционален объему вычислений, которые необходимо доказать, а влияние объема данных минимально возможно, поэтому стоимость хранения в цепочке низкая;
  • Верификатор (контракт L1) может быстро проверить, действительно ли доказательство, поэтому стоимость расчета в цепочке низкая.

Используя эти функции, наше решение Rollup может:

  • Нет необходимости в «охотнике за головами», контракт L1 может сам на месте обнаружить мошенничество;
  • Пока верификация ZKP действительна, вывод средств можно производить немедленно, а окончательность сокращается с дней до минут;
  • В цепочке требуется только диф между состояниями, места очень мало, а стоимость хранения очень низкая (дополнительный бонус — конфиденциальность также улучшена);
  • Благодаря индивидуальной оптимизации программного и аппаратного обеспечения процесса доказательства и проверки возможности расширения могут быть увеличены еще на порядок.

Конечно, у любого механизма безопасности будут потенциальные предпосылки, и ZKP не является панацеей для блокчейна. ZKP все еще имеет много ограничений в настоящее время, которые необходимо преодолевать шаг за шагом, таких как:

  • Возьмем в качестве примера наиболее часто используемый zk-SNARK в блокчейне.Многие схемы должны в начале представить как можно больше престижных людей или компаний и выполнить доверенную настройку, чтобы сгенерировать истинное случайное число и гарантировать, что процесс генерации поддающийся проверке, но не полностью публичный (как в церемонии Силы Тау, пока одной стороне можно доверять, но это все равно считается недостатком). Конечно, некоторые новые схемы zk-SNARK и более поздние улучшенные zk-STARK могут решить эту проблему, но иногда возникают новые проблемы. *Многие проблемы сложно обобщить как проблемы ZKP, что привело к тому, что программируемость долгое время не решалась должным образом.Трудно реализовать ZKP, полностью совместимый с EVM на Ethereum, или даже если это может быть достигнуто, но другие аспекты (например, эффективность проверки) будут затронуты.

В этой статье рассматриваются идеи эволюции и причины разработки решения для расширения Rollup

источник:

Вот почему в ZK-Rollup, ориентированном на будущее поле расширения, каждый прогресс достоин похвалы и удовольствия.

В этой статье рассматриваются идеи эволюции и причины разработки решения расширения Rollup

источник:

напишите в конце

Что касается расширения емкости в будущем, автор считает, что по сравнению с собственным расширением емкости L1 многоуровневая структура, включающая Rollup, является более надежной идеей. Модуляризация, каждый слой решает заботы каждого слоя, что менее рискованно, чем непрерывное стекирование на уже «монолитном» L1, кроме того, децентрализация нижележащего L1 за счет расширения емкости теоретически маловероятна. это вверх. Более того, эта идея многоуровневого дизайна, по-видимому, успешно применяется в других областях, помимо блокчейна. Точка зрения не обязательно правильная, но это актуальное познание автора.

В этой статье делается попытка разобраться в причинах мышления и дизайна решения для расширения Rollup в тоне, не зависящем от проекта. Из-за ограниченного уровня некоторые места все же немного туповаты, что может не только не объяснять на месте, но и увеличивать сложность понимания, как вертикальное поле, меняющееся с каждым днем, автор может не знать и принять во внимание много новых событий во времени. Искренне приветствуем друзей, чтобы исправить и общаться.

Посмотреть Оригинал
Содержание носит исключительно справочный характер и не является предложением или офертой. Консультации по инвестициям, налогообложению или юридическим вопросам не предоставляются. Более подробную информацию о рисках см. в разделе «Дисклеймер».
  • Награда
  • комментарий
  • Поделиться
комментарий
0/400
Нет комментариев
  • Закрепить