Halo
Кратко
Halo — это не требующая доверия рекурсивная система доказательств с нулевым разглашением (ZKP), открытая Sean Bowe в Electric Coin Co. Она устраняет необходимость в доверенной настройке и делает практической рекурсивную композицию доказательств, лежащую в основе текущей дорожной карты масштабируемости и безопасности Zcash.
- Что это: конструкция zk-SNARK с эффективной рекурсией и без церемонии доверенной настройки.
- Почему это важно: экранированный пул Orchard сети Zcash, активированный вместе с NU5 в 2022 году, работает на Halo 2 — промышленной реализации этого исследования.
- Ключевое свойство: отсутствие «токсичных отходов» церемоний настройки и доказательства, способные подтверждать практически неограниченное число других доказательств.
- Лицензирование: Halo 2 имеет открытый исходный код по лицензиям MIT и Apache 2.0, поэтому любой участник экосистемы может создавать решения на его основе.
Основное объяснение
Halo — это не требующая доверия рекурсивная система доказательств с нулевым разглашением, открытая Sean Bowe в Electric Coin Co. Она устраняет доверенную настройку и обеспечивает большую масштабируемость блокчейна Zcash. Halo стала первой системой доказательств с нулевым разглашением, которая одновременно эффективна и рекурсивна, — это широко признано научным прорывом.

Два компонента
- Краткая схема полиномиальных обязательств. Позволяет стороне, создающей обязательство, зафиксировать полином короткой строкой, которую проверяющая сторона может использовать для подтверждения заявленных значений зафиксированного полинома.
- Интерактивное оракульное доказательство для полиномов. Проверяющая сторона просит доказывающую сторону (алгоритм) раскрыть все обязательства в выбранных ею точках, используя схему полиномиальных обязательств, и проверяет, что между ними выполняется тождество.
Без доверенной настройки
zk-SNARKs полагаются на общую эталонную строку (CRS) как публичный параметр для создания и проверки доказательств. Эту CRS должна заранее сгенерировать доверенная сторона. До недавнего времени для снижения риска во время этой церемонии доверенной настройки были необходимы сложные безопасные многосторонние вычисления (MPC), подобные тем, которые выполняли сеть Aztec и Zcash.
Более ранние экранированные пулы Zcash — Sprout и Sapling — использовали системы zk-доказательств BCTV14 и Groth16. Хотя они были безопасны, у них имелись ограничения: они не масштабировались, поскольку были привязаны к одному приложению; «токсичные отходы» (остатки криптографического материала, созданного во время генезис-церемонии) могли сохраняться; а приемлемость церемонии предполагала элемент доверия, хотя и крайне малый.
Halo устраняет доверенную настройку, многократно сворачивая несколько экземпляров сложных задач в циклах эллиптических кривых, чтобы вычислительные доказательства могли эффективно рассуждать о самих себе (вложенная амортизация). Побочным эффектом является возможность обновления структурированной эталонной строки (результата церемонии), что открывает путь к таким приложениям, как смарт-контракты.
Halo предоставляет пользователям две важные гарантии безопасности крупномасштабной системы доказательств с нулевым разглашением. Во-первых, она позволяет доказать, что никто из участников генезис-церемонии не создал секретный бэкдор для проведения мошеннических транзакций. Во-вторых, она позволяет показать, что система оставалась безопасной с течением времени, даже проходя обновления и изменения.
Sean BoweОбъяснение от Dystopia Labs
Визуализация / аналогия
Цепочка нотариусов
Представьте обычное zk-SNARK как нотариально заверенный документ: одна печать, одна проверка — готово. Теперь представьте, что вам нужно доказать подлинность стопки из десяти тысяч документов. Без рекурсии проверяющей стороне пришлось бы проверить каждую печать.
Halo превращает каждый проверенный документ в печать на следующем документе, пока вся стопка не сворачивается в один документ с одной печатью. Проверки последнего документа достаточно, чтобы доверять всей цепочке; и, что особенно важно, нотариус Halo (система доказательств) создаёт собственные печати, никогда не нуждаясь во внешнем органе, который настраивал бы его печать.
Почему устранение доверенной настройки важно
В старых системах «печать» (CRS) происходила из церемонии. Участники должны были уничтожить промежуточный материал, и все должны были доверять тому, что они это сделали. Печать Halo создаётся исключительно математикой: здесь нечего уничтожать, нечего раскрывать и нет церемонии, которой нужно доверять.
Подробный разбор
Рекурсивные доказательства
Рекурсивная композиция доказательств позволяет одному доказательству подтверждать корректность практически неограниченного числа других доказательств, сжимая большой объём вычислений и информации. Это важнейший компонент масштабируемости, поскольку он позволяет сети масштабироваться горизонтально, при этом отдельные группы участников всё ещё могут доверять целостности остальной части сети.
До Halo достижение рекурсивной композиции доказательств требовало больших вычислительных затрат и доверенной настройки. Одним из главных открытий стала техника под названием вложенная амортизация: рекурсивная композиция с использованием схемы полиномиальных обязательств, основанной на аргументе скалярного произведения, которая значительно повышает производительность и при этом избегает доверенной настройки.
Статья Halo полностью описывает эту схему полиномиальных обязательств и обнаруживает существование в ней новой техники агрегации. Эта техника позволяет проверять большое число независимо созданных доказательств почти так же быстро, как одно доказательство. Уже сама по себе она предлагала лучшую альтернативу более ранней zk-SNARKs, использовавшейся в Zcash.
Halo 2
Halo 2 — это высокопроизводительная реализация zk-SNARK, написанная на Rust, которая устраняет необходимость в доверенной настройке и создаёт основу для масштабируемости в Zcash.
Она включает обобщение подхода, называемое схемой накопления. Эта формализация раскрывает, как на практике работает вложенная амортизация: добавляя доказательства к объекту, называемому накопителем, где каждое доказательство рассуждает о предыдущем состоянии накопителя, все предыдущие доказательства можно проверить (индуктивно), просто проверив текущее состояние накопителя.
Параллельно многие другие команды открывали Polynomial IOP, более эффективные, чем Sonic (используемый в Halo 1), например Marlin. Самым эффективным из этих протоколов является PLONK, который даёт огромную гибкость при проектировании эффективных реализаций с учётом потребностей конкретного приложения и обеспечивает время работы доказывающей стороны в 5× лучше, чем Sonic.
Обзор PLONK
Halo в более широкой экосистеме
Electric Coin Company заключила соглашение с Protocol Labs, фондом Filecoin и Ethereum Foundation для изучения исследований и разработок Halo, включая возможное использование технологии в их соответствующих сетях. Соглашение нацелено на улучшение масштабируемости, совместимости и конфиденциальности между экосистемами и для Web 3.0.
Кроме того, Halo 2 распространяется по открытым лицензиям MIT и Apache 2.0, что означает, что любой участник экосистемы может создавать решения с этой системой доказательств.
Filecoin. После развёртывания библиотека halo2 была принята в таких проектах, как zkEVM, и существует потенциал интеграции Halo 2 в систему доказательств для виртуальной машины Filecoin. Filecoin требует множества дорогостоящих доказательств пространства-времени и доказательств репликации; Halo 2 играет ключевую роль в сжатии использования пространства и лучшем масштабировании сети. FilecoinВидео фонда с Zooko. Обеим экосистемам также было бы полезно, если бы платежи за хранение в Filecoin можно было осуществлять в ZEC, обеспечивая ту же конфиденциальность при покупке хранилища, что существует в экранированных переводах Zcash, — включая шифрование файлов в хранилище Filecoin и поддержку мобильных клиентов, прикрепляющих медиафайлы к зашифрованной заметке Zcash. ECC × FilecoinПубликация в блоге
Ethereum. Разрабатывается доказательство Halo 2 для эффективной проверяемой функции задержки (VDF). VDF — криптографический примитив со множеством потенциальных применений, включая генерацию случайности общего назначения для смарт-контрактов и выбор лидера в Proof of Stake. ECC, фонд Filecoin, Protocol Labs и Ethereum Foundation также работают с SupraNational, поставщиком, специализирующимся на криптографии с аппаратным ускорением, над потенциальной разработкой VDF для GPU и ASIC. Группа Privacy and Scaling Explorations исследует дополнительные способы, которыми доказательства Halo 2 могут улучшить конфиденциальность и масштабируемость Ethereum.
Другие проекты, использующие Halo
- Anoma — протокол атомарных свопов между несколькими цепочками с сохранением конфиденциальности
- Orbis — L2 zkRollup в Cardano
- DarkFi — приватный блокчейн L1 zkEVM
- Scroll — L2 zkRollup в Ethereum
Практические последствия
Для самого Zcash
- Экранированный пул Orchard, активированный вместе с NU5, является реализацией этой новой системы доказательств в сети Zcash. Он защищён той же конструкцией турникета, которая используется между Sprout и Sapling, с намерением постепенно вывести из эксплуатации старые экранированные пулы.
- После NU5 (середина 2022 года) интеграция рекурсивных доказательств стала возможной, и вместе с ней появились несколько улучшений конфиденциальности — прежде всего введение «Actions», заменяющих входы/выходы, что сокращает объём метаданных транзакций.
- Устранение доверенных настроек исключает системный риск, который в противном случае пришлось бы повторять при каждом крупном обновлении протокола.
Для держателей и операторов
- Рекурсивная композиция доказательств обладает потенциалом для сжатия неограниченных объёмов вычислений, создания проверяемых распределённых систем и повышения пропускной способности Layer 1 для операторов полных узлов — это актуально для таких расширений, как Zcash Shielded Assets, и долгосрочных проектов Zcash.
Распространённые заблуждения
| Распространённое мнение | Как обстоят дела на самом деле |
|---|
| «Halo — это будущее обновление, которого ждёт Zcash». | Orchard, работающий в основной сети с NU5 (2022), уже использует Halo 2. |
| «Отсутствие доверенной настройки означает отсутствие любых параметров». | Halo всё ещё использует структурированные параметры; разница в том, что они не содержат токсичных отходов и могут быть сгенерированы и обновлены без церемонии, которой участники должны доверять. |
| «Halo 2 и статья Halo — одно и то же». | Статья описывает схему полиномиальных обязательств и вложенную амортизацию; Halo 2 — это промышленная реализация Rust со схемой накопления и PLONKish-арифметизацией. |
| «Рекурсия помогает только масштабировать проверку блоков». | Рекурсия также сжимает вычисления на уровне приложений — см. доказательства пространства-времени/репликации Filecoin и работу над VDF для Ethereum. |
Связанные страницы
Дополнительное изучение
Документация