Выборочная доступность данных (1): Зачем нужен DAS?

Средний1/7/2024, 6:44:02 AM
Эта статья объясняет преимущества технологии сэмплирования доступности данных (DAS) и почему нужна эта технология.

Каковы преимущества технологии сэмплирования доступности данных? Зачем она нам нужна?

Фото от @testalizeme?utm_source=medium&utm_medium=referral">Testalize.me on Unsplash

Предварительные знания:

  • Имейте базовое понимание работы консенсуса Ethereum
  • Знайте разницу между Full Node и Light Node
  • Знайте проблемы Rollup и публикации данных (доступность данных)

Следующее будет опубликовано в качестве данных, чтобы назвать Доступность данных, но некоторые слова, связанные с Доступностью данных, такие как DAS и DAC, останутся в оригинале, чтобы читатели не потеряли связь с оригинальным английским текстом. Для ознакомления с названием Data Publication, пожалуйста, обратитесь к:

Переименовано доступность данных: Публикация данных заменяет доступность данных

Недавно некоторые люди предложили использовать "Публикацию данных" вместо "Доступности данных", чтобы избежать путаницы, вызванной термином DA. В этой статье будет рассмотрена путаница, вызванная словом DA, и почему вместо "Данные..." следует использовать "Публикация данных".

medium.com

Эта серия статей познакомит с механизмом функционирования DAS через Danksharding, а также сходствами и различиями между Celestia, EigenDA и AvailDA. Первая статья познакомит с необходимостью DAS и преимуществами, которые приносит DAS.

Повторение: Почему обсуждается вопрос о публикации данных?

В настоящее время наиболее распространенной ситуацией, в которой обсуждается выпуск данных в экосистеме Ethereum, является обсуждение проектирования L2: L2 сам по себе также является цепочкой, поэтому у него также будут свои собственные блоки и данные транзакций, так куда же следует поместить эти данные? Пользователям нужна эта информация для обеспечения безопасности.

  • Если это Rollup, он загрузит свои транзакционные данные на L1, такие как Ethereum, используя Ethereum в качестве места для хранения данных.
  • Если это не Rollup, данные будут размещены в другом месте, например, группой доверенных участников. Такой депозитарий называется Комитетом доступности данных (DAC).

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

Rollup и доступность данных

Эта статья познакомит вас с отношениями между доступностью данных и Rollup, а также с тем, как Rollup может сделать некоторые жертвы в доступности данных в обмен на более низкие транзакционные издержки.

medium.com

Но на самом деле это не только L2, сама цепь Ethereum также столкнется с проблемой выхода данных, потому что легкие узлы не будут загружать полные блоки данных, как полные узлы, поэтому легким узлам нужно верить, что «когда появляется новый блок, фактически выпущены полные данные блока». Когда легкий узел обманут в вере в «неполный» блок, последствия те же, что и когда его обманывают в вере в «незаконный» блок - он подключается к ветвям, которые не используются другими. Признанные ветви форков.

Полные узлы не будут верить неполным блокам, но легкие узлы будут

Так кому доверяет текущий легкий узел Ethereum, чтобы гарантировать, что данные нового блока полностью опубликованы? Ответ - "Валидаторам". Когда легкий узел получает новый блок, он не загружает полные данные блока, но видит, сколько валидаторов проголосовали за блок. Когда достаточно валидаторов голосует за этот блок, он поверит, что полная информация об этом блоке действительно была опубликована. Это предположение принадлежит Честному Большинству, то есть убеждению, что большинство валидаторов - хорошие люди.

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

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

Выборочная доступность данных

«Вера в то, что большинство валидаторов — хорошие люди» звучит как разумный и хороший выбор, но что, если мы можем добиться большего? Что, если однажды действительно случится так, что большинство валидаторов захотят объединить усилия, чтобы обмануть нас, говоря, что у них есть полные данные блока, но на самом деле их нет, но пока в p2p-сети есть несколько хороших людей, мы можем избежать обмана?

Такая великолепная способность определенно не появится из ниоткуда. Чтобы обладать этой способностью, вам нужно построить достаточно стабильную p2p сеть, иметь достаточное количество пользователей, и даже добавить функции конфиденциальности на уровне сети. Эта способность является фокусом этой серии статей - Data Availability Sampling (DAS).

В блокчейне с DAS легкие узлы будут не просто пассивно получать данные о новых блоках, а совместно участвовать в работе DAS: каждый легкий узел должен перейти в p2p-сеть за каждым блоком. По пути он ищет несколько фрагментов данных в блоке и сохраняет данные, а также делится ими с другими узлами, когда они запрашивают данные. Как и в случае с децентрализованным протоколом обмена файлами BitTorrent, узлы сети сохраняют и обмениваются данными, которые им нужны, вместе, вместо того, чтобы полагаться на централизованный сервер.

Легкие узлы работают вместе для извлечения и передачи фрагментов блоков через сеть p2p

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

Каждый легкий узел не может поверить, что данные блока были полностью опубликованы, пока он успешно не получит каждый кусок запрашиваемых данных. Однако, как только он получит все запрашиваемые данные, он может безопасно полагать, что данные блока были опубликованы. Информация была опубликована полностью. Но почему легкие узлы могут безопасно полагать, что полные данные блока были опубликованы, даже если у них есть только фрагментированные данные? Это потому, что другие легкие узлы в сети также будут хранить фрагменты данных отдельно, так что когда это необходимо, все смогут работать вместе, чтобы собрать полные данные из фрагментов данных друг друга, и еще одна волшебная способность DAS заключается в том, что данные, сохраненные легкими узлами, не нужно покрывать полными данными блока. Легкие узлы могут восстановить 100% данных, лишь получив 50% данных.

Пока у легких узлов есть более 50% фрагментарных данных, они могут восстановить полные блочные данные.

Примечание: это не обязательно 50%, может быть выше, в зависимости от настройки DAS, но определенно будет меньше 100%.

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

Честное большинство > честное меньшинство

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

Примечание: "Few" означает, что количество легких узлов, которые необходимо отобрать и сохранить для восстановления полных данных, относительно невелико по сравнению со всеми (очень многими) легкими узлами в сети.

вероятностная безопасность

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

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

Тогда этот бедный легкий узел придется обмануть, и это также ограничение и компромисс DAS: гарантия "полного освобождения данных", предоставленная DAS, является гарантией вероятности, а не 100% и категорической гарантией, но это все равно лучше, чем полностью доверять большинству валидаторов. Если вам кажется, что гарантия вероятности недостаточно безопасна, и вы хотите быть уверены на 100%, что данные блока были полностью опубликованы, то, к сожалению, вам придется запустить полный узел самостоятельно, чтобы загрузить полные данные блока.

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

Важность онлайн-конфиденциальности

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

В настоящее время вас, возможно, беспокоит, может ли ваша безопасность основываться только на "не враждебности к лицу, производящему блок", или "злоумышленник не знает, кто я, поэтому он на меня не нацеливается"? Да, но вот почему ранее было упомянуто, что DAS нуждается в функции конфиденциальности сетевого уровня, потому что если злоумышленник может узнать, "кто" запрашивает фрагмент данных, или знает, что три фрагмента A, B и C - "одно и то же" Лицо" ищет, то он естественным образом может легко нацелиться на цель и предоставить информацию другой стороне. Если у сетевого уровня сегодня есть функция конфиденциальности, то злоумышленник не сможет узнать, кто запрашивает этот кусок информации. Естественно, не будет способа обмануть цель, и эффективность атаки злоумышленника будет значительно снижена: у него нет способа определить, была ли цель обманута, или даже какой-либо легкий узел.

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

Безопасная база для DAS

Для обеспечения безопасности DAS требуется:

  1. Блок данных повышает надежность данных благодаря кодированию стирания. Например, узлы могут восстановить исходные 100% данных, передав только 50% данных.
  2. Легкие узлы работают вместе для выборки и сохранения достаточного количества фрагментированных данных, чтобы гарантировать, что полные данные могут быть восстановлены, и
  3. Надежная p2p сеть позволяет узлам обмениваться фрагментами данных.

1. Увеличение надежности блочных данных с помощью кодирования стирания

Какова будет проблема, если блоки не будут кодироваться с использованием кодирования стирания, а легкие узлы будут непосредственно выбирать оригинальное содержимое блока? Ответ: фрагменты данных, выбранные легкими узлами, должны охватывать 100% для обеспечения целостности данных. Даже если легкие узлы вместе выбирают 99% данных блока, этот блок все равно будет неполным и не признан.

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

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

Примечание: 50% - просто пример. Для восстановления различных нужд требуется разный процент.

2. Легкие узлы сохраняют достаточно фрагментов данных

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

Как обеспечить сохранение достаточного объема данных легкими узлами? Нам нужно иметь достаточное количество легких узлов или достаточное количество выборок для каждого легкого узла. Если у нас достаточно легких узлов, количество времени выборки для каждого легкого узла не должно быть высоким; но если легких узлов недостаточно, то количество времени выборки для каждого легкого узла должно быть достаточно высоким, чтобы обеспечить совместную работу легких узлов для сохранения достаточного объема данных.

Примечание: Если количество легких узлов продолжает расти, размер данных, которые они могут хранить вместе, на самом деле может увеличиться, если количество образцов остается неизменным. Например, Celestia, о которой будет рассказано в этой серии статей, может поддерживать гибкий размер блока. Блокчейн: размер блока Celestia может быть отрегулирован в зависимости от количества легких узлов в сети.

3. Звуковая p2p сеть

Легкие узлы должны обмениваться фрагментированными данными через сеть p2p, чтобы при необходимости можно было восстановить полные блочные данные. Если сеть p2p нестабильна и не может обрабатывать большое количество запросов на данные, узлы могут не получить определенные фрагменты данных. Кроме того, также необходимо предотвратить обращение всех фрагментов данных в одной и той же сети p2p, что приведет к перегрузке пропускной способности сети. В идеале легкий узел должен иметь возможность получать только те данные, которые запрашивает, а не все остальные нерелевантные данные. Поток через его руки через сети p2p.

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

Детали этих трех частей будут подробно рассмотрены в этой серии статей.

Подытожить

  • Проблему публикации данных L2 можно решить с помощью L1 или DAC, но сама L1 также столкнется с проблемами публикации данных - потому что легкие узлы не загружают полные блоки
  • Беря в пример Ethereum, как только большинство валидаторов подпишут блок, легкие узлы поверят, что информация в этом блоке была полностью опубликована. На данный момент, фактически, как только большинство членов Комитета синхронизации имеют подписи, легкие узлы в это верят.
  • Легкие узлы обманываются в доверии блоку с неполной опубликованной информацией, что эквивалентно доверию нелегальному блоку, то есть доверию ветвистой цепи, которая не признается другими.
  • Если легкие узлы должны обеспечивать безопасность, не полагаясь на предположение о том, что "большинство валидаторов - хорошие люди", потребуется DAS
  • В DAS легкие узлы работают вместе, чтобы сохранить фрагментированные данные блоков, и с помощью кодирования стирания, при условии, что легкие узлы сохраняют более определенной доли (например, 50%) данных, можно восстановить 100% полных данных
  • Однако обратите внимание, что безопасность, обеспечиваемая DAS, является вероятностной безопасностью. Злоумышленник все еще может обмануть некоторые легкие узлы, заставив их верить, что данные были полностью выпущены. Если пользователь хочет быть уверен на 100%, что блок полностью выпущен, он может загрузить полные данные блока самостоятельно.
  • Функция сетевой конфиденциальности также является одним из инструментов, которые значительно снижают эффективность атаки злоумышленника. Если злоумышленник не может определить, кто запрашивает этот фрагмент данных, ему будет сложнее заблокировать конкретный легкий узел или это даже может быть невозможно. Способы заблокировать любой легкий узел

Справочные материалы и рекомендуемая дальнейшая литература

Отказ от ответственности:

  1. Эта статья перепечатана с [средний]. Все авторские права принадлежат оригинальному автору [NIC Lin]. Если есть возражения против этого повторного издания, пожалуйста, свяжитесь с Gate Learnкоманда, и они незамедлительно справятся с этим.
  2. Ответственность за отказ от ответственности: Взгляды и мнения, выраженные в этой статье, являются исключительно точкой зрения автора и не являются инвестиционными советами.
  3. Переводы статьи на другие языки выполняются командой Gate Learn. Если не указано иное, копирование, распространение или плагиат переведенных статей запрещены.

Выборочная доступность данных (1): Зачем нужен DAS?

Средний1/7/2024, 6:44:02 AM
Эта статья объясняет преимущества технологии сэмплирования доступности данных (DAS) и почему нужна эта технология.

Каковы преимущества технологии сэмплирования доступности данных? Зачем она нам нужна?

Фото от @testalizeme?utm_source=medium&utm_medium=referral">Testalize.me on Unsplash

Предварительные знания:

  • Имейте базовое понимание работы консенсуса Ethereum
  • Знайте разницу между Full Node и Light Node
  • Знайте проблемы Rollup и публикации данных (доступность данных)

Следующее будет опубликовано в качестве данных, чтобы назвать Доступность данных, но некоторые слова, связанные с Доступностью данных, такие как DAS и DAC, останутся в оригинале, чтобы читатели не потеряли связь с оригинальным английским текстом. Для ознакомления с названием Data Publication, пожалуйста, обратитесь к:

Переименовано доступность данных: Публикация данных заменяет доступность данных

Недавно некоторые люди предложили использовать "Публикацию данных" вместо "Доступности данных", чтобы избежать путаницы, вызванной термином DA. В этой статье будет рассмотрена путаница, вызванная словом DA, и почему вместо "Данные..." следует использовать "Публикация данных".

medium.com

Эта серия статей познакомит с механизмом функционирования DAS через Danksharding, а также сходствами и различиями между Celestia, EigenDA и AvailDA. Первая статья познакомит с необходимостью DAS и преимуществами, которые приносит DAS.

Повторение: Почему обсуждается вопрос о публикации данных?

В настоящее время наиболее распространенной ситуацией, в которой обсуждается выпуск данных в экосистеме Ethereum, является обсуждение проектирования L2: L2 сам по себе также является цепочкой, поэтому у него также будут свои собственные блоки и данные транзакций, так куда же следует поместить эти данные? Пользователям нужна эта информация для обеспечения безопасности.

  • Если это Rollup, он загрузит свои транзакционные данные на L1, такие как Ethereum, используя Ethereum в качестве места для хранения данных.
  • Если это не Rollup, данные будут размещены в другом месте, например, группой доверенных участников. Такой депозитарий называется Комитетом доступности данных (DAC).

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

Rollup и доступность данных

Эта статья познакомит вас с отношениями между доступностью данных и Rollup, а также с тем, как Rollup может сделать некоторые жертвы в доступности данных в обмен на более низкие транзакционные издержки.

medium.com

Но на самом деле это не только L2, сама цепь Ethereum также столкнется с проблемой выхода данных, потому что легкие узлы не будут загружать полные блоки данных, как полные узлы, поэтому легким узлам нужно верить, что «когда появляется новый блок, фактически выпущены полные данные блока». Когда легкий узел обманут в вере в «неполный» блок, последствия те же, что и когда его обманывают в вере в «незаконный» блок - он подключается к ветвям, которые не используются другими. Признанные ветви форков.

Полные узлы не будут верить неполным блокам, но легкие узлы будут

Так кому доверяет текущий легкий узел Ethereum, чтобы гарантировать, что данные нового блока полностью опубликованы? Ответ - "Валидаторам". Когда легкий узел получает новый блок, он не загружает полные данные блока, но видит, сколько валидаторов проголосовали за блок. Когда достаточно валидаторов голосует за этот блок, он поверит, что полная информация об этом блоке действительно была опубликована. Это предположение принадлежит Честному Большинству, то есть убеждению, что большинство валидаторов - хорошие люди.

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

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

Выборочная доступность данных

«Вера в то, что большинство валидаторов — хорошие люди» звучит как разумный и хороший выбор, но что, если мы можем добиться большего? Что, если однажды действительно случится так, что большинство валидаторов захотят объединить усилия, чтобы обмануть нас, говоря, что у них есть полные данные блока, но на самом деле их нет, но пока в p2p-сети есть несколько хороших людей, мы можем избежать обмана?

Такая великолепная способность определенно не появится из ниоткуда. Чтобы обладать этой способностью, вам нужно построить достаточно стабильную p2p сеть, иметь достаточное количество пользователей, и даже добавить функции конфиденциальности на уровне сети. Эта способность является фокусом этой серии статей - Data Availability Sampling (DAS).

В блокчейне с DAS легкие узлы будут не просто пассивно получать данные о новых блоках, а совместно участвовать в работе DAS: каждый легкий узел должен перейти в p2p-сеть за каждым блоком. По пути он ищет несколько фрагментов данных в блоке и сохраняет данные, а также делится ими с другими узлами, когда они запрашивают данные. Как и в случае с децентрализованным протоколом обмена файлами BitTorrent, узлы сети сохраняют и обмениваются данными, которые им нужны, вместе, вместо того, чтобы полагаться на централизованный сервер.

Легкие узлы работают вместе для извлечения и передачи фрагментов блоков через сеть p2p

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

Каждый легкий узел не может поверить, что данные блока были полностью опубликованы, пока он успешно не получит каждый кусок запрашиваемых данных. Однако, как только он получит все запрашиваемые данные, он может безопасно полагать, что данные блока были опубликованы. Информация была опубликована полностью. Но почему легкие узлы могут безопасно полагать, что полные данные блока были опубликованы, даже если у них есть только фрагментированные данные? Это потому, что другие легкие узлы в сети также будут хранить фрагменты данных отдельно, так что когда это необходимо, все смогут работать вместе, чтобы собрать полные данные из фрагментов данных друг друга, и еще одна волшебная способность DAS заключается в том, что данные, сохраненные легкими узлами, не нужно покрывать полными данными блока. Легкие узлы могут восстановить 100% данных, лишь получив 50% данных.

Пока у легких узлов есть более 50% фрагментарных данных, они могут восстановить полные блочные данные.

Примечание: это не обязательно 50%, может быть выше, в зависимости от настройки DAS, но определенно будет меньше 100%.

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

Честное большинство > честное меньшинство

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

Примечание: "Few" означает, что количество легких узлов, которые необходимо отобрать и сохранить для восстановления полных данных, относительно невелико по сравнению со всеми (очень многими) легкими узлами в сети.

вероятностная безопасность

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

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

Тогда этот бедный легкий узел придется обмануть, и это также ограничение и компромисс DAS: гарантия "полного освобождения данных", предоставленная DAS, является гарантией вероятности, а не 100% и категорической гарантией, но это все равно лучше, чем полностью доверять большинству валидаторов. Если вам кажется, что гарантия вероятности недостаточно безопасна, и вы хотите быть уверены на 100%, что данные блока были полностью опубликованы, то, к сожалению, вам придется запустить полный узел самостоятельно, чтобы загрузить полные данные блока.

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

Важность онлайн-конфиденциальности

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

В настоящее время вас, возможно, беспокоит, может ли ваша безопасность основываться только на "не враждебности к лицу, производящему блок", или "злоумышленник не знает, кто я, поэтому он на меня не нацеливается"? Да, но вот почему ранее было упомянуто, что DAS нуждается в функции конфиденциальности сетевого уровня, потому что если злоумышленник может узнать, "кто" запрашивает фрагмент данных, или знает, что три фрагмента A, B и C - "одно и то же" Лицо" ищет, то он естественным образом может легко нацелиться на цель и предоставить информацию другой стороне. Если у сетевого уровня сегодня есть функция конфиденциальности, то злоумышленник не сможет узнать, кто запрашивает этот кусок информации. Естественно, не будет способа обмануть цель, и эффективность атаки злоумышленника будет значительно снижена: у него нет способа определить, была ли цель обманута, или даже какой-либо легкий узел.

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

Безопасная база для DAS

Для обеспечения безопасности DAS требуется:

  1. Блок данных повышает надежность данных благодаря кодированию стирания. Например, узлы могут восстановить исходные 100% данных, передав только 50% данных.
  2. Легкие узлы работают вместе для выборки и сохранения достаточного количества фрагментированных данных, чтобы гарантировать, что полные данные могут быть восстановлены, и
  3. Надежная p2p сеть позволяет узлам обмениваться фрагментами данных.

1. Увеличение надежности блочных данных с помощью кодирования стирания

Какова будет проблема, если блоки не будут кодироваться с использованием кодирования стирания, а легкие узлы будут непосредственно выбирать оригинальное содержимое блока? Ответ: фрагменты данных, выбранные легкими узлами, должны охватывать 100% для обеспечения целостности данных. Даже если легкие узлы вместе выбирают 99% данных блока, этот блок все равно будет неполным и не признан.

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

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

Примечание: 50% - просто пример. Для восстановления различных нужд требуется разный процент.

2. Легкие узлы сохраняют достаточно фрагментов данных

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

Как обеспечить сохранение достаточного объема данных легкими узлами? Нам нужно иметь достаточное количество легких узлов или достаточное количество выборок для каждого легкого узла. Если у нас достаточно легких узлов, количество времени выборки для каждого легкого узла не должно быть высоким; но если легких узлов недостаточно, то количество времени выборки для каждого легкого узла должно быть достаточно высоким, чтобы обеспечить совместную работу легких узлов для сохранения достаточного объема данных.

Примечание: Если количество легких узлов продолжает расти, размер данных, которые они могут хранить вместе, на самом деле может увеличиться, если количество образцов остается неизменным. Например, Celestia, о которой будет рассказано в этой серии статей, может поддерживать гибкий размер блока. Блокчейн: размер блока Celestia может быть отрегулирован в зависимости от количества легких узлов в сети.

3. Звуковая p2p сеть

Легкие узлы должны обмениваться фрагментированными данными через сеть p2p, чтобы при необходимости можно было восстановить полные блочные данные. Если сеть p2p нестабильна и не может обрабатывать большое количество запросов на данные, узлы могут не получить определенные фрагменты данных. Кроме того, также необходимо предотвратить обращение всех фрагментов данных в одной и той же сети p2p, что приведет к перегрузке пропускной способности сети. В идеале легкий узел должен иметь возможность получать только те данные, которые запрашивает, а не все остальные нерелевантные данные. Поток через его руки через сети p2p.

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

Детали этих трех частей будут подробно рассмотрены в этой серии статей.

Подытожить

  • Проблему публикации данных L2 можно решить с помощью L1 или DAC, но сама L1 также столкнется с проблемами публикации данных - потому что легкие узлы не загружают полные блоки
  • Беря в пример Ethereum, как только большинство валидаторов подпишут блок, легкие узлы поверят, что информация в этом блоке была полностью опубликована. На данный момент, фактически, как только большинство членов Комитета синхронизации имеют подписи, легкие узлы в это верят.
  • Легкие узлы обманываются в доверии блоку с неполной опубликованной информацией, что эквивалентно доверию нелегальному блоку, то есть доверию ветвистой цепи, которая не признается другими.
  • Если легкие узлы должны обеспечивать безопасность, не полагаясь на предположение о том, что "большинство валидаторов - хорошие люди", потребуется DAS
  • В DAS легкие узлы работают вместе, чтобы сохранить фрагментированные данные блоков, и с помощью кодирования стирания, при условии, что легкие узлы сохраняют более определенной доли (например, 50%) данных, можно восстановить 100% полных данных
  • Однако обратите внимание, что безопасность, обеспечиваемая DAS, является вероятностной безопасностью. Злоумышленник все еще может обмануть некоторые легкие узлы, заставив их верить, что данные были полностью выпущены. Если пользователь хочет быть уверен на 100%, что блок полностью выпущен, он может загрузить полные данные блока самостоятельно.
  • Функция сетевой конфиденциальности также является одним из инструментов, которые значительно снижают эффективность атаки злоумышленника. Если злоумышленник не может определить, кто запрашивает этот фрагмент данных, ему будет сложнее заблокировать конкретный легкий узел или это даже может быть невозможно. Способы заблокировать любой легкий узел

Справочные материалы и рекомендуемая дальнейшая литература

Отказ от ответственности:

  1. Эта статья перепечатана с [средний]. Все авторские права принадлежат оригинальному автору [NIC Lin]. Если есть возражения против этого повторного издания, пожалуйста, свяжитесь с Gate Learnкоманда, и они незамедлительно справятся с этим.
  2. Ответственность за отказ от ответственности: Взгляды и мнения, выраженные в этой статье, являются исключительно точкой зрения автора и не являются инвестиционными советами.
  3. Переводы статьи на другие языки выполняются командой Gate Learn. Если не указано иное, копирование, распространение или плагиат переведенных статей запрещены.
Comece agora
Registe-se e ganhe um cupão de
100 USD
!