Еволюція технології zk-SNARKs: від теоретичного прориву до розширення застосувань

robot
Генерація анотацій у процесі

zk-SNARKs: еволюція від теорії до застосування

Розвиток zk-SNARKs

Система нульового знання виникла в 1985 році завдяки статті Голдвассера, Мікалі та Ракофа «Складність знання інтерактивних доказових систем». У цій статті розглядається кількість знань, які потрібно обміняти під час багатократної взаємодії для підтвердження правильності твердження в інтерактивних системах. Якщо доказ може бути завершено без розкриття будь-якої додаткової інформації, то це називається нульовим знанням.

Ранні системи zk-SNARKs мали низьку ефективність і практичність, залишаючись переважно на теоретичному рівні. Лише за останні 10 років, з широким застосуванням криптографії в сфері криптовалют, zk-SNARKs поступово стали важливим напрямком досліджень. Серед них розробка універсальних, неінтерактивних протоколів zk-SNARKs з обмеженим масштабом доказів є ключовою метою.

Прорив у нульових знаннях стався завдяки статті Грота, опублікованій у 2010 році, яка заклала теоретичну основу для zk-SNARKs. У 2015 році Zcash застосував нульові знання для захисту приватності транзакцій, відкривши широке застосування нульових знань у практичних сценаріях.

Після цього деякі важливі наукові досягнення включають:

  • Протокол Pinocchio 2013 року суттєво підвищив ефективність доказів та верифікації
  • Groth16 2016 року ще більше спростив масштаб доказів і підвищив ефективність перевірки
  • У 2017 році Bulletproofs запропонували короткі алгоритми доказів без необхідності надійних налаштувань.
  • У 2018 році були представлені zk-STARKs, які запропонували квантово-стійкий протокол нульового знання.

Інші нові розробки, такі як PLONK, Halo2 тощо, також покращили zk-SNARKs в різних аспектах.

HashKey ZK 101 Перший випуск: Історичні принципи та індустрія

zk-SNARKs основні застосування

Найбільш поширеними двома застосуваннями zk-SNARKs на сьогодні є захист приватності та масштабування.

Ранні додатки для конфіденційних транзакцій, такі як Zcash та Monero, користувалися великою увагою, але потреба в конфіденційності не виявилася настільки вираженою, як очікувалося, і такі проекти поступово відійшли на другий план. У порівнянні з цим, потреба в масштабуванні стає все більш терміновою. Особливо після переходу Ethereum 2.0 на маршрут, орієнтований на rollup, рішення для масштабування на основі zk-SNARKs знову стало в центрі уваги галузі.

приватні транзакції

Представницькі проекти приватних транзакцій включають:

  • Zcash: використовує zk-SNARKs для забезпечення конфіденційності транзакцій
  • Monero: використовує алгоритм Bulletproofs
  • Tornado Cash: змішувальний пул на основі Ethereum, що використовує zk-SNARKs

Процес приватних транзакцій Zcash включає в себе налаштування системи, генерацію ключів, емісію монет, генерацію доказів транзакцій, верифікацію та отримання. Однак у Zcash також є деякі обмеження, такі як модель UTXO, що ускладнює інтеграцію з іншими додатками, фактичний рівень використання приватних транзакцій не є високим.

Tornado Cash використовує єдиний великий змішувальний пул, що забезпечує кращу універсальність. Він базується на реалізації zk-SNARKs на основі Groth16, що гарантує, що тільки внесені монети можуть бути витрачені, і кожна монета може бути витрачена лише один раз.

HashKey ZK 101 Перший випуск: Історичні принципи та галузь

розширення

zk-SNARKs в контексті масштабування в основному використовується в zk-rollup. Основні ролі zk-rollup - це Sequencer і Aggregator. Sequencer відповідає за упаковку транзакцій, Aggregator об'єднує велику кількість транзакцій і генерує zk-SNARKs для оновлення дерева станів Ethereum.

Переваги zk-rollup полягають у низьких витратах, швидкості транзакцій та захисті конфіденційності. Недоліки – велике навантаження на обчислення для генерації доказів, а також SNARK потребує надійного налаштування.

Наразі основні проекти zk-rollup включають:

  • StarkNet: використовує zk-STARKs, не підтримує EVM
  • zkSync: використовує PLONK, підтримує EVM
  • Aztec: розробила протокол PLONK, з пріоритетом на конфіденційність
  • Scroll: прагне реалізувати EVM-сумісний zk-rollup

Сумісність з EVM є великою проблемою для zk-rollup. В даний час основні рішення мають два напрямки: повна сумісність з операціями Solidity або розробка нової віртуальної машини, дружньої до ZK, з сумісністю з Solidity. Покращення сумісності з EVM матиме великий вплив на розвиток екосистеми ZK.

HashKey ZK 101 Перший випуск: Історичні принципи та індустрія

Основні принципи zk-SNARK

zk-SNARKs означає "нульові знання, стислі неінтерактивні докази знань". Він має такі характеристики:

  • zk-SNARKs: не розкриває додаткову інформацію
  • Простота: низка витрат на верифікацію
  • Неперервна взаємодія: не потребує багаторазової взаємодії
  • Доказ: обчислювально надійний
  • Знання: Доказуючий повинен знати дійсну інформацію

Принцип реалізації zk-SNARK на базі Groth16 включає такі етапи:

  1. Перетворіть проблему на схему
  2. Перетворення схеми в формат R1CS
  3. Перетворення R1CS у форму QAP
  4. Генерація параметрів довірених налаштувань
  5. Генерація та верифікація zk-SNARKs

HashKey ZK 101 Перший випуск: Історичні принципи та галузь

Технологія zk-SNARKs швидко розвивається, і в майбутньому має можливість відігравати важливу роль у багатьох сферах.

HashKey ZK 101 Перший випуск: Історичні принципи та галузь

ZK5.3%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Поділіться
Прокоментувати
0/400
Немає коментарів
  • Закріпити