Bitcoin Magazine: какие проблемы стоят перед Rollup?

robot
Генерация тезисов в процессе

Источник: Bitcoin Magazine; Компиляция: Wu Zhu, Golden Finance

Роллапы недавно стали центром внимания в контексте масштабирования Биткойна и стали первыми, которые действительно украли шоу у Сети Lighting, привлекая более широкое внимание. Роллапы предназначены стать вторым уровнем вне блокчейна, который не ограничен ограничениями Ликвидности и сети Lighting, то есть конечные пользователи должны получить деньги заранее выделенными (или «заимствованными») средствами, или промежуточный узел должен иметь баланс канала, чтобы обеспечить непрерывный поток платежей от отправителя к получателю.

Эти системы изначально работали на Ethereum и других завершенных системах, но в последнее время акцент переключился на перенос их на блокчейн на основе UTXO (например, BTC). В этой статье не будет обсуждаться текущая реализация на BTC, а будет рассмотрена функциональность идеального Rollup, которую люди долгое время стремились достичь. Эта функциональность зависит от способности непосредственно на BTC проверять Доказательство с нулевым разглашением (ZKP), которую BTC в настоящее время не поддерживает.

Основная структура Roll выглядит следующим образом: каждый UTXO (в BTC) хранит балансы всех пользователей в Rollup. Этот UTXO содержит обязательство, представленное в виде корня Меркля, содержащего текущие балансы всех счетов в Rollup. Все эти счета авторизованы с помощью открытого/закрытого ключей, поэтому для осуществления операций вне блокчейна пользователь все равно должен подписать определенное содержимое с помощью секретного ключа. Эта часть структуры позволяет пользователям выходить в любое время без разрешения, просто предоставив доказательство того, что их счет является частью дерева Меркля. Таким образом, они могут односторонне выйти из Rollup без необходимости разрешения от оператора.

Операторы Rollup должны включать в транзакцию ZKP, чтобы обновить баланс счета в блокчейне в процессе завершения вне блокчейна транзакции merkle root, если это ZKP отсутствует, транзакция будет недействительной и не может быть включена в блокчейн. Это подтверждение позволяет людям проверить, были ли все изменения в счете вне блокчейна получены соответствующим разрешением владельца счета, и оператор не злоупотреблял обновлением баланса для кражи средств пользователей или нечестно перераспределил их другим пользователям.

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

Подходящий Rollup

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

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

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

Срок действия

Ещё один способ решения проблемы доступности данных пользователей при извлечении данных - это размещение данных в другом месте, не связанном с Блокчейном. Это вводит тонкую проблему, поскольку rollup все еще должен обеспечивать доступность данных в другом месте. Традиционно, для этой цели использовались другие Блокчейны, специально разработанные в качестве слоя доступности данных для систем, таких как rollup.

Это создает трудности в обеспечении такой же надежной безопасности. Когда данные напрямую публикуются в блокчейн BTC, правила Соглашения могут гарантировать их абсолютную правильность. Однако, когда они публикуются во внешней системе, лучшее, что они могут сделать, это проверить SPV-доказательство, то есть, что данные уже опубликованы в другой системе.

Для этого требуется доказательство того, что данные были проверены в других блокчейнах - это, в конечном итоге, проблема машины Oracle. Блокчейн BTC не может полностью проверить ничего, кроме того, что происходит в его собственном блокчейне, лучшее, что он может сделать - это проверить ZKP. Однако ZKP не может проверить, был ли блок, содержащий данные rollup, действительно опубликован после его создания. Он не может проверить, действительно ли внешняя информация доступна всем.

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

В тупике

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

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

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

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

Итак, если мы действительно реализуем идеальную реализацию Rollup на BTC и действительно достигнем одностороннего вывода пользователей, как это будет выглядеть?

BTC0,25%
ETH-0,74%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • комментарий
  • Репост
  • Поделиться
комментарий
0/400
Нет комментариев
  • Закрепить