Аналіз розвитку та застосування технології zk-SNARKs: від захисту приватності до масштабування Layer2

Розвиток та застосування zk-SNARKs

zk-SNARKs історія

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

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

Одним із важливих проривів у сфері нульових знань стало коротке парне неінтерактивне нульове знання, запропоноване Гротом у 2010 році. Це заклало теоретичну основу для zk-SNARKs. У 2015 році Zcash впровадив систему нульових знань для захисту приватності транзакцій, що стало знаковим моментом для широкого застосування нульових знань.

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

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

Крім того, PLONK, Halo2 та інші є важливими досягненнями, які вдосконалили zk-SNARKs.

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

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

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

захист конфіденційності

Ранні проекти з приватної торгівлі, такі як Zcash та Monero, після свого запуску стали важливим напрямком. Але через те, що необхідність у приватній торгівлі не виправдала очікувань, такі проекти поступово перейшли до другої та третьої ліги.

Zcash використовує технологію zk-SNARKs, а його етапи транзакції включають: налаштування системи, генерацію публічного та приватного ключів, карбування монет, генерацію доказів, верифікацію та отримання. Але Zcash базується на моделі UTXO, він лише приховує частину інформації про транзакції, а не повністю приховує. Рівень використання його конфіденційних транзакцій становить менше 10%.

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

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

розширення

Розширення ZK може бути реалізоване в мережі першого рівня (, такій як Mina ), або в мережі другого рівня (, тобто zk-rollup ). zk-rollup включає дві ролі: Sequencer та Aggregator. Sequencer відповідає за пакування транзакцій, Aggregator об'єднує велику кількість транзакцій і генерує zk-SNARKs, оновлюючи дерево станів Ethereum.

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

Наразі основні проекти zk-rollup включають: StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll тощо. Вони мають різні вибори SNARK/STARK та сумісність з EVM.

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

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

Принцип реалізації zk-SNARKs

ZK-SNARK(Стислий неінтерактивний аргумент Knowledge) з нульовим розголошенням - це система доведення з нульовим розголошенням з наступними характеристиками:

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

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

Процес доказування ZK-SNARK Groth16 включає:

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

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

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

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