Биткоин-узлы теперь на шаг ближе к мгновенной синхронизации

Биткоин-узлы теперь на шаг ближе к мгновенной синхронизации

Внутри ZeroSync: роль доказательств с нулевым разглашением в мгновенной синхронизации узлов Биткоина.

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

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

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

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

Доказательства ZK улучшают эту систему, сжимая заголовки в одно доказательство, без необходимости согласования изменений в Биткоине. Подобно тому, как каждый блок Биткоина эффективно сжимает данные своих транзакций в дерево Меркла и включает корень этого дерева в свой заголовок, ZeroSync берет каждый заголовок блока и группирует их в другое дерево Меркла. Этот процесс позволяет синтезировать цепочку заголовков в короткий и легкий фрагмент данных – доказательство.

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

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

Выпуск первой полной цепочки заголовков ZK-доказательства стал первой вехой ZeroSync. Чтобы реализовать свои более широкие замыслы – обеспечить полную проверку исторического блокчейна для полных узлов, не требуя от пользователей его загрузки и обработки – команде необходимо восполнить еще два пункта плана: позволить узлу синхронизироваться аналогично функции Assume Valid в Bitcoin Core и обеспечить полную предусмотренную синхронизацию блокчейна Биткоина.

Assume Valid – это параметр Bitcoin Core, включенный по умолчанию, который предполагает, что все скрипты до заданной высоты блока действительны. Это означает, что новые полные узлы, синхронизирующие блокчейн с начальной загрузкой блока (IBD), могут пропускать проверку скриптов из генезис-блока, пока высота блока не будет установлена клиентом Bitcoin Core. Эти сценарии являются частью данных транзакций свидетелей – в основном это подписи, разрешающие сценарии блокировки и разблокировки средства, которые будут потрачены, а также временные блокировки и другие запрограммированные условия расходов. У пользователей есть возможность установить `assumevalid=0` и заставить своего клиента выполнять полную проверку всех скриптов в дополнение к проверке другого содержимого блока. Однако общее и довольно безопасное предположение, лежащее в основе включения Assume Valid по умолчанию, заключается в том, что до данной заданной высоты блока было показано достаточно доказательств работы, что позволяет справедливо полагать, что предшествующие ему сценарии действительны.

Промежуточное предложение ZeroSync, когда оно будет завершено, позволит пользователям Биткоина синхронизировать свои узлы аналогично Bitcoin Core IBD по умолчанию. Узел загружает все данные с момента создания Биткоина до сегодняшнего дня, но проверяет данные-свидетели только после высоты assumevalid. Набор UTXO также является необходимой частью уравнения. Чтобы решить эту проблему, ZeroSync использует проект Utreexo для повышения эффективности синхронизации узлов Биткоина. Utreexo предоставляет последний набор UTXO для данного блока, а ZeroSync может добавить его в свой фреймворк, основанный на доказательствах ZK. В результате получается гораздо более короткая цепочка заголовков и более компактный и эффективный набор UTXO, который клиенты могут использовать для проверки платежей.

Это предложение высшего уровня позволяет сделать шаг вперед и позволит узлам синхронизироваться с последним состоянием Биткоина, не предполагая, что какой-либо сценарий действителен. Используя доказательства ZK, полные узлы смогут добиться гораздо более быстрой начальной синхронизации с, возможно, даже более высокими гарантиями безопасности, чем настройка Bitcoin Core по умолчанию, использующая acceptvalid.

Важно отметить, что даже если пользователи Bitcoin Core отключат assumevalid – проверка всех скриптов и достижение аналогичных предположений безопасности, как у предложения верхнего уровня ZeroSync – большая ценность последнего по-прежнему состоит в существенном увеличении эффективности и скорости проверки всей этой информации. Хотя в настоящее время в блокчейне Биткоина хранится 510 ГБ данных, подход ZeroSync, когда он будет завершен, позволит значительно ускорить процесс, учитывая создание короткого и легкого доказательства размером чуть более 1 МБ – улучшение производительности на несколько порядков по сравнению со стандартным IBD, использующим Bitcoin Core, гарантируя при этом соблюдение одних и тех же правил консенсуса.

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

Биткоин или недвижимость: лучшее средство сбережения во время войны Биткоин или недвижимость: лучшее средство сбережения во время войны Анализ различных ценностных предложений Биткоина и недвижимости во времена геополитической нестабильности. Леон Ванкум 18 февраля 2024
Вопросы от ноукоинеров: зов бычьего рынка Вопросы от ноукоинеров: зов бычьего рынка Как ноукоинеры решают, приобретать ли им биткоин? Как им это сделать? Как им взаимодействовать с Биткоином? На каждом этапе этого пути есть множество вариантов выбора. Сантьяго Варела 17 февраля 2024
Сэндвич «Рубен» и активация CTV Сэндвич «Рубен» и активация CTV Вы видели эти сэндвичи вместо фото профиля? Они являются социальным сигналом в попытке достичь консенсуса относительно активации изменений в Биткоине. George 203 11 февраля 2024