гк-СНАРК

 Определение

zk-SNARK (Zero-Knowledge Succinct Non-interactive Argument of Knowledge) — это криптографическая система доказательства, которая позволяет одной стороне (доказывающей) убедить другую сторону (проверяющей) в том, что она знает секрет или что вычисление было выполнено правильно, — не раскрывая сам секрет и не требуя обмена данными. Свойство «краткости» означает, что доказательство небольшое (часто всего несколько сотен байт) и быстро проверяется, независимо от сложности доказываемого вычисления. zk-SNARK являются математической основой Zcash. протокол конфиденциальности, эпохи zkSync ZK рулон блокчейн-системы на основе Groth16 и все более сложные Приложения DeFi.

 Свойства zk-SNARK: объяснение

«zk-SNARK = Нулевое знание + Краткость + Неинтерактивность + Аргумент знания»

Нулевое разглашение: Доказывающий убеждает проверяющего, не раскрывая секрета. «Я знаю пароль» → Доказано без произнесения пароля.

Краткость: Доказательство очень маленькое (~200 байт), проверка выполняется быстро (миллисекунды), даже если базовые вычисления займут несколько часов.

Неинтерактивный протокол: одно подтверждающее сообщение (без обмена данными). Доказывающий генерирует подтверждение → Отправляет проверяющему → Готово (в отличие от «интерактивных» протоколов, требующих нескольких раундов).

Аргумент знания: убедительное доказательство того, что доказывающий действительно «знает» секрет. Криптографическая корректность: невозможно подделать, не зная секрета.

 Применение zk-SNARK в криптографии

Области примененияИспользование zk-SNARKпротокол
Частные транзакцииПодтвердите действительность перевода, не раскрывая сумму/отправителя.Zcash (защищенные транзакции)
Роллапы ZKДокажите корректное выполнение тысяч транзакций.zkSync Era, Scroll, Linea
Частный DeFiПодтвердите наличие достаточного баланса, не раскрывая сумму.Сеть ацтеков
Проверка подлинностиДоказать атрибут, не раскрывая личность.Идентификатор полигона
ЗК мостыДокажите состояние исходной цепочки в целевой цепочке.zkBridge, Succinct
голосованиеДокажите, что вы проголосовали правильно, не раскрывая свой голос.протокол MACI

 Ограничения zk-SNARK

ОграничениеXNUMX
Требуется доверенная настройкаБольшинству zk-SNARK (Groth16) требуется одноразовая церемония утилизации «токсичных отходов».
Вычислительно дорогоСоздание доказательств — ресурсоемкий процесс (его эффективность снижается при использовании аппаратного ускорения).
Квантовая уязвимостьСовременные zk-SNARK не устойчивы к квантовым взаимодействиям (используя эллиптические кривые).
Сложность кодаЧрезвычайно сложная математика; трудно проверить.

Доверенная настройка: В zk-SNARK на основе Groth16 требуется многосторонняя вычислительная процедура для генерации начальных параметров. Если какой-либо участник сохранит секрет «токсичных отходов», он сможет создать ложные доказательства. В доверенной системе Zcash участвовало 6 участников (процедура Sprout), чтобы минимизировать этот риск.

zk-STARKs (см. соответствующие разделы) не требуют доверенных настроек и являются квантово-резистентный но при этом получить более внушительные доказательства.

 FAQ

В: В чём разница между zk-SNARK и zk-STARK?

SNARK: Меньший размер доказательств (200 байт), более быстрая проверка, требует доверенной настройки, не устойчив к квантовым атакам. STARK: Больший размер доказательств (40–200 КБ), не требует доверенной настройки, устойчив к квантовым атакам. Для блокчейн-приложений, требующих частой проверки (свертывания ZK), меньший размер доказательств и более быстрая проверка SNARK часто делают их предпочтительнее, несмотря на требование доверенной настройки.

В: Как ZK-роллапы используют zk-SNARK?

ZK-роллап обрабатывает тысячи транзакций вне блокчейна, а затем генерирует одно доказательство zk-SNARK, подтверждающее действительность всех транзакций. Это единственное доказательство (несколько сотен байтов) отправляется в Ethereum, который проверяет его за миллисекунды, доказывая действительность тысяч транзакций с минимальным объемом данных в блокчейне. В этом заключается математическая магия, обеспечивающая масштабируемость Ethereum в 100–1000 раз.

В: Доказана ли безопасность реализации zk-SNARK в Zcash?

Протокол Sapling от Zcash (2018) использует алгоритм Groth16 zk-SNARK и прошел всестороннюю проверку. В церемонии передачи полномочий Zcash Powers of Tau приняли участие 87 человек. На практике не было продемонстрировано ни одного случая подделки защищенных транзакций Zcash. Риск, связанный с доверительной настройкой, хотя и реален, снижается благодаря широкому участию.

Совет от UPay: Понимание концептуальной основы zk-SNARK (доказательство истинности чего-либо без раскрытия секрета) открывает путь к пониманию быстро развивающейся области разработки блокчейна. Каждый крупный роллап ZK (zkSync, Scroll, Polygon zkEVM), каждый протокол обеспечения конфиденциальности (Aztec, Zcash) и растущее число решений для обеспечения соответствия нормативным требованиям используют zk-SNARK или аналогичные системы доказательств. Основная идея — проверяемые вычисления без раскрытия данных — является, пожалуй, самым значительным криптографическим нововведением в блокчейне со времен доказательства работы в Биткоине.

Предупреждение: Данная информация предназначена исключительно для образовательных целей и не является финансовой консультацией.

UPay — Создание криптоэнциклопедии

Медиа