Halo
Коротко
Halo — це бездовірча рекурсивна система доказів з нульовим розголошенням (ZKP), відкрита Sean Bowe у Electric Coin Co. Вона усуває потребу в довіреному налаштуванні та робить практичним рекурсивне поєднання доказів, що є основою поточної дорожньої карти масштабованості й безпеки Zcash.
- Що це: конструкція zk-SNARK з ефективною рекурсією та без церемонії довіреного налаштування.
- Чому це важливо: екранований пул Zcash Orchard, активований разом із 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 IOPs, ефективніші за Sonic (використовуваний у Halo 1), наприклад Marlin. Найефективнішим із цих протоколів є PLONK, який надає величезну гнучкість у розробці ефективних реалізацій на основі потреб конкретного застосунку та забезпечує у 5 разів кращий час доведення, ніж Sonic.
Огляд PLONK
Halo у ширшій екосистемі
Electric Coin Company уклала угоду з Protocol Labs, Filecoin Foundation та Ethereum Foundation щодо досліджень і розробок Halo, зокрема щодо того, як цю технологію можна застосувати в їхніх відповідних мережах. Угода має на меті забезпечити кращу масштабованість, сумісність і конфіденційність між екосистемами та для Web 3.0.
Крім того, Halo 2 поширюється за ліцензіями відкритого коду MIT та Apache 2.0, тобто будь-хто в екосистемі може створювати продукти за допомогою системи доведення.
Filecoin. Від моменту свого розгортання бібліотеку halo2 було прийнято в таких проєктах, як zkEVM, а також існує потенційна інтеграція Halo 2 у систему доказів для Filecoin Virtual Machine. Filecoin потребує численних дорогих доказів простору-часу та доказів реплікації; Halo 2 має ключове значення для стиснення використання простору та кращого масштабування мережі. FilecoinВідео Foundation із Zooko. Обом екосистемам також було б корисно, якби платежі за зберігання Filecoin можна було здійснювати в ZEC, забезпечуючи для придбання сховища такий самий рівень конфіденційності, який існує в екранованих переказах Zcash — зокрема шифрування файлів у сховищі Filecoin та підтримку мобільних клієнтів, що прикріплюють медіа до зашифрованої пам'ятки Zcash. ECC × Filecoinдопис у блозі
Ethereum. Розробляється доказ Halo 2 для ефективної перевірюваної функції затримки (VDF). VDF — це криптографічний примітив із багатьма потенційними варіантами використання, зокрема для універсальної випадковості в смартконтрактах і вибору лідера в Proof of Stake. ECC, Filecoin Foundation, Protocol Labs та Ethereum Foundation також співпрацюють із SupraNational, постачальником, який спеціалізується на криптографії з апаратним прискоренням, щодо потенційної розробки GPU та ASIC для VDF. Група 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, що працює в mainnet із NU5 (2022), уже використовує Halo 2. |
| «Відсутність довіреного налаштування означає, що параметрів узагалі немає». | Halo усе ще використовує структуровані параметри; відмінність у тому, що вони не містять токсичних відходів і можуть бути згенеровані та оновлені без церемонії, якій мають довіряти учасники. |
| «Halo 2 і стаття Halo — це одне й те саме». | стаття описує схему поліноміальних зобов'язань і вкладену амортизацію; Halo 2 — це виробнича реалізація Rust зі схемою накопичення та PLONKish-арифметизацією. |
| «Рекурсія допомагає лише масштабувати перевірку блоків». | Рекурсія також стискає обчислення на рівні застосунків — дивіться докази простору-часу/реплікації Filecoin та роботу над VDF для Ethereum. |
Пов’язані сторінки
Подальше навчання
Документація