Что такое zk-SNARKs?

9 сентября 2020
Mina Protocol

Полное руководство по самым мощным криптографическим доказательствам

Введение

Доказательство с нулевым разглашением. ZK-SNARKs. Эти термины часто используются в крипто кругах, часто в контексте обеспечения конфиденциальности транзакций. В контексте протокола Coda они являются неотъемлемой частью нашей основной инновации: небольшого блокчейна постоянного размера. Их происхождение берет свои истоки из 1985 года, когда доказательства с нулевым разглашением впервые были описаны в статье «Сложность знаний интерактивных систем доказательств». Но остается вопрос: чем они являются на самом деле?

Основное видение криптовалюты состоит в том, чтобы позволить отдельным лицам уменьшить свою зависимость от централизованных сил и сторонних посредников. zk-SNARKs — это инновация, которая может сделать это видение реальностью. Тем не менее, поскольку zk-SNARKs настолько сложны, очень непросто найти ясные и доступные информационные ресурсы. Наша команда криптографов и инженеров собрала, суммировала и проверила доступные ресурсы, чтобы помочь вам начать работу, независимо от того новичок вы или эксперт. Если вы знаете ресурс, который мы должны добавить, дайте нам знать об этом в комментариях.

Во-первых, Izaak и Vanishree, два члена нашей команды криптографов, посвятившие свою жизнь изучению zk-SNARKS, познакомят вас с введением.

Доказательства с нулевым разглашением: интуитивное объяснение

Vanishree Rao, криптограф, работающий над протоколом Coda, предлагает это объяснение, используя классическую задачу раскраски тремя цветами, чтобы ввести ключевые понятия, включая надежность, нулевую осведомленность и верификаторы. Это короткое (<5 минут) чтение — отличное место для старта.

Использование zk-SNARKS для блокчейна с постоянным размером

В этой презентации Izaak Meckler, соучредитель и технический директор O (1) Labs и главный криптограф, работающий над протоколом Coda, предоставляет обзор и введение не только в концепции zk-SNARKs. но и в ряд практических примеров того, почему они имеют значение.

Дальнейшее изучение

Это лучшие ресурсы в стиле 101, которые делают Zero Knowledge Proofs и zkSNARKs более доступными. Визуальные метафоры и упрощенные объяснения используются для уточнения и расширения представленных выше концепций.

Введение в доказательства с нулевым разглашением

Это хороший стартовый материал. Во-первых, в нем есть немного исторического фона, объясняющего оригинальный контекст статьи 1985 года «Сложность знаний об интерактивных системах доказательств», которая и привела в действие все это. Во-вторых, он имеет несколько упрощенный и более наглядный пересказ истории о пещере Али-Бабы. В-третьих, она дает хорошее краткое описание трех свойств, которые должно удовлетворять доказательство с нулевым разглашением: полнота, разумность и нулевое знание.

Объяснение для тех, кому 5 лет: Доказательство нулевого знания — Хэллоуин издание

Этот пример рассматривает хорошо известную «проблему миллионера Яо» — когда два миллионера хотят выяснить, имеют ли они одинаковую сумму денег, при этом ни один из них не хочет озвучить сумму своих активов, — и помещает ее в контекст двух детей (очевидно, названных Алиса и Боб), которые хотят выяснить, получили ли они одинаковое количество конфет.

[Видео] Доказательство с нулевым разглашением — ZKP

Если мы действительно хотим улучшить визуальные эффекты, давайте перейдем прямо к YouTube. Этот короткий (10 минут) анимационный ролик демонстрирует пользователям еще одну простую версию возможности доказать, что что-то происходит, не раскрывая конкретных обстоятельств, которые приводят это в действие. В данном случае в качестве примера используется человек, который пытается убедить своего друга-дальтоника в том, что между зеленым и красным шариком есть разница. Это видео также показывает разницу между интерактивными и не интерактивными ZKPs, создавая основу для обсуждения SNARKS.

[Видео] Доказательство с нулевым разглашением

Если приведенное выше видео представляет собой стартер с 101 уровнем для ZKPs, подумайте об этом видео как о видео 102 уровня. Оно показывает больше контекста и несколько различных наглядных примеров — включая колоду карт, которая доказывает, что карта определенного цвета, не раскрывая ничего кроме непосредственно цвета. Это видео также повторяет основные свойства, необходимые для доказательств с нулевым разглашением.

Нулевые доказательства: иллюстрированное введение — 1 и 2

Хорошо, теперь мы переходим к действительно хорошим вещам! Эта серия из двух частей написана Matthew Green, который занимается Zcash с самого начала проекта и проводит большую часть своего времени в качестве криптографа и профессора в Университете Джона Хопкинса. Первая часть рассказывает о нескольких вещах. Во-первых, речь пойдет о происхождении и истории ZKPs, в том числе о том, почему мы заинтересовались ими в первую очередь. Во-вторых, используется набор примеров из реальной жизни, включая телекоммуникационную версию задачи о трехцветном графике, чтобы объяснить, что делает эти типы взаимодействия «нулевым разглашением». Втретьих, вводится дополнительные важные понятия, такие как схемы обязательств. В то время как часть 1 явно не техническая, часть 2 несколько переходит в техническую территорию, за которой все еще относительно легко следовать.

WTF — доказательство с нулевым знанием & введение в доказательство с нулевым знанием: протокол Blockchain следующего поколения

Теперь, когда у вас была возможность по-настоящему осмыслить основную идею доказательств с нулевым разглашением, и вы увидели множество различных визуальных метафор, давайте введем несколько дополнительных понятий. Обе эти части очень похожи и работают в паре. Хотя они все еще очень похожи на 101, они расширят вашу перспективу, включив: 1) разницу между интерактивными и не интерактивными доказательствами с нулевым разглашением и 2) zk-SNARKS. В частности, вторая часть делает хорошую работу по разбивке каждой части аббревиатуры, помогая понять вовлеченные концепции.

Доказательства с нулевым знанием, часть первая: криптографические протоколы и их вариации

Эта часть более или менее повторяет множество концепций, обсуждавшихся в предыдущих частях. Одним ценным дополнением является дополнительное упрощенное определение zk-SNARKs и сравнение с zk-STARKs.

[Видео] Что такое ZK-Snarks?

Теперь, когда мы перешли от доказательств с нулевым разглашением к SNARKs, давайте добавим еще одно короткое вступительное видео для визуалов. Этот 4- минутный обзор даст вам основы, которые помогут вернуться к более содержательному контенту.

Объяснение zk-SNARKS и zk-STARKS

Эта статья взята из Binance Academy и еще больше объясняет разницу между zkSNARKS и zk-STARKS. Это одно из самых кратких и ясных существующих не технических объяснений.

Что такое zk-SNARKs? Комплексное руководство по математике Spooky Moon

Хотя это в основном не техническая информация, в ней используется немного математики, чтобы углубиться в объяснение zk-SNARKs. Тем не менее, она подается только после многих полезных наглядных пособий и упрощенных начальных объяснений, и делается это так, что, после прочтения, вы все поймете.

Почему zk-SNARKs имеют решающее значение для конфиденциальности данных в блокчейне

До сих пор мы видели много наглядных объяснений того, что такое доказательства с нулевым разглашением, а также упрощенных определений, которые помогали нам понять концепцию zk-SNARKs. То, что мы еще не видели, — это простое и ясное объяснение того, почему все это имеет значение. В этой части для Forbes Samantha Radocchia делает именно это. Она проводит черту между обильным количеством данных, которые собирают окружающие нас сервисы, повсеместным злоупотреблением и ненадежностью этих данных и потребностью в технологии конфиденциальности, такой как SNARKs.

[Видео] Рапсодия о нулевом знании: доказательство без раскрытия

Этот замечательный доклад берет многие из понятий, найденных в вышеупомянутых статьях, и помещает их в краткую, ясную последовательность. Если вам нужно всего лишь одно видео, которое поможет подвести итог всем остальным видео в этом разделе и подготовиться к следующему, более техническому разделу, это именно то, что вам нужно.

Технический контент

Если вы дошли до этого места, вы готовы перейти к технической части. Ниже более подробно объясняется применение zk-SNARKs и почему на них возлагаются такие большие надежды относительно выполнения основной задачи криптовалюты.

Введение в zk-SNARKs с примерами

Эта статья, опубликованная в блоге ConsenSys, включает все ключевые концепции, которые вы изучили выше, такие как верификаторы, доказательства и свидетели , и может обеспечить основу для глубокого технического понимания. Даже для не технической аудитории это по-прежнему интересное чтение, за которым вы, вероятно, сможете следить.

[Видео] Введение в SNARKs

Этот 20-минутный доклад, снятый на DevCon 3, представляет собой введение в SNARKs от доктора Christian Reitweissner. Одним из ценных аспектов этого разговора является установка фреймов. Еще до того, как углубиться в тему, он объясняет, почему SNARKs так важны для блокчейнов, обсуждая как масштабирование, так и конфиденциальность.

[Видео] Eli Ben-Sasson, ученый-основатель ZCash, соавтор zk-SNARKs, соучредитель Starkware

Иногда вам нужно идти напрямую к источнику. Eli Ben-Sasson был соучредителем Zcash, со-изобретателем SNARKs и обладает (как вы могли ожидать) богатым знанием, которым может поделиться. Это не просто стандартное видео-интервью, но фактически вводный семинар по этой теме. Будет еще лучше, если вы освоите введение в некоторые из перечисленных выше ресурсов. Но в любом случае это видео необходимо посмотреть.

Доказательства с нулевым разглашением, настольная игра: как я выучил zkSNARKs с нуля

Говоря о вышеупомянутом сообщении в блоге, эта часть написана программистом, который, помимо прочего, использовал ее, чтобы научиться работать с zk-SNARKs. Это отличное сочетание журнала личного обучения и некоторых идей, которые смогут помочь и вам.

Изучая zk-SNARKs

Zaki Manian, из команды Tendermint собрал это руководство, чтобы людям было легче погрузиться и узнать больше о ZKPs и SNARKs. Он организует содержание в несколько различных категорий: опросы, квадратичные арифметические программы, парная криптография, основные статьи о SNARKs и недавние исследования. Если наше руководство — ваш 101 гид, то это отличная отправная точка для более глубокого изучения.

Серия SNARKs от Vitalik Buterin

Когда дело доходит до SNARKs, это супер контент. С конца 2016 до начала 2017 года создатель Ethereum Vitalik Buterin написал серию из трех частей. Первая часть была «Квадратичные арифметические программы: от нуля до героя», копаясь (как выразился Виталик) в «механизме, лежащем в основе технологии». Часть 2 была «Изучение пар эллиптических кривых, а часть 3 -« zk-SNARKS: Под капотом ». Это гораздо более техническое исследование, построенное на основе двух других. Все это не для слабонервных, но, тем не менее, удивительный контент.

Источник: https://codaprotocol.com/blog/what-are-zk-snarks