«ZK – первый звоночек того, что грядет»: Артем Григор рассказал об Aragon, разработке приватного голосования и технологиях будущего в web3

«ZK – первый звоночек того, что грядет»: Артем Григор рассказал об Aragon, разработке приватного голосования и технологиях будущего в web3

GuideDAO

ПРО БЭКГРАУНД. Все началось где-то в 10-м классе. Тогда мой брат интересовался криптовалютами и трейдингом. Я решил попробовать. Прошло какое-то время, и вот — я с несколькими одноклассниками торгую на биржах. Был 2017 год — ажиотаж, биржи закрыли новые регистрации и меня просили купить крипту вместо них. Через пару лет меня за это сильно поблагодарили. Позже я прочитал книжку про биткоин. Потом прочитал White paper — ничего не понял. Создал генератор кошельков на эфире, чтобы углубиться в тему, понять работу приватных и публичных ключей.

Уже к концу школы я помогал в MetaHash. В университете работал в R3. А потом меня позвали в Aragon. Получилось, что с каждым шагом я набирался технического опыта. Параллельно учился математике и computer science — в купе это очень помогло изучить web3.


ПРО ARAGON. В MetaHash работал как techsupport и в R3 sales-инженером — уже целых 3 года опыта. Поэтому в Aragon я работал уже на втором курсе университета. Еще я всегда старался не акцентировать на том, что я студент. Эту деталь всегда опускал в самый низ резюме. Гайды на ютубе советовали писать: что принес в компанию, что сделал, какие фактические результаты получились — это и помогло попасть в Aragon. 

Рабочий график довольно свободный: строишь день, как хочешь. Иногда его можно чуть сократить, а на следующий, наоборот, приналечь.

Сейчас, грубо говоря, проснулся, пошел на утренний рабочий созвон, а потом приступаешь к работе. Мне она нравится. Иногда есть конкретные проекты, когда ты пишешь код, делаешь proof-of-concept. Бывают дни, когда больше исследовательской работы. Тогда мы с командой смотрим всякие статьи, ролики с конференций или блоги. И потом устраиваем семинары, что бы обмениваться знаниями. Вообще, постоянно растет список того, что нужно прочитать и посмотреть. Очень много новых технологий, которые нужно изучить, и курсов, которые нужно пройти. Похоже на учебу в университете. Есть интересные поездки на конференции и митапы. Это свободная профессия, учитывая, что это full-time remote. 

Сейчас Aragon — это не настолько известная компания, как была раньше. Его запустили в 2017 году. Тогда было время ICO. Aragon стал самым большим ICO на тот момент. Было собрано 4 или 5 миллионов долларов, а на те времена это огромные деньги. За полчаса продали все токены. С тех пор команда занималась разработкой DAOs — созданием фреймворка для их запуска. У нас очень проверенный проект, потому что мы работаем давно, в своем деле мы самые старые. И наши контракты ни разу никто не взламывал (тьфу-тьфу-тьфу). Люди могут доверять нам.

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

Я пришел уже в новую волну найма. Это был май 2021 года. С тех пор команда растет. Цель все та же — создать более хорошее приложение и User Experience по созданию своего DAO. 

Я — исследователь-разработчик. Особенность профессии в том, что большинство технологий, что мы используем, — написаны нами. Они очень экспериментальные. Наша задача – изучать технологии и находить что-то новое, прорывное, что потом будет использовано в продакшене. Например, я сейчас работаю над проектом для голосования на блокчейне. Задача – сделать протокол максимально масштабируемым. Мы работаем с Ethereum, а также используем Artworks — библиотеку на Rust. Соответственно, для подключения ее к Solidity и Ethereum я лично люблю Hardhat и Web3. js или аналоги. 

Aragon выделил грант на работу Snapshot.  Snapshot изначально был нашим проектом. Потом он отделился, и теперь является одним из наших самых больших конкурентов. 

Snapshot сейчас используют многие DAO. В нем можно проголосовать, подписав свой голос приватным ключом. Потом он отправится на централизованную систему Snapshot, и тут проблема: она может не вписать ваш голос в итоговый результат, тем самым смухлевав выборы. Snapshot, конечно, все считает правильно и отправляет все на IPFS, но его ничто не обязывает считать все правильно. Особенно опасно, если заберется в систему Snapshot хакер. Наша работа построить систему, где никому не нужно доверять. 

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

Мы также хотим, чтобы голосование было приватным и бесплатным. Одна из мыслей: киты (которым не жалко потратить деньги на оплату газа, но при этом они хотят сохранить приватность того, кто проголосовал) могут в принципе использовать ZK для генерации своего голоса вместо того, чтобы голосовать оффчейн. Потом загрузить просто свой голос в смарт-контракт и доказать корректность голосования (но это доказательство будет прятать их айдентити).

То есть, ты берешь снешпот блока в Ethereum и показываешь, что есть кошелек, а в нем есть 1000 монеток. Я, например, могу сделать доказательство этого. Потом я могу загрузить это в сеть Ethereum и сказать, что было столько монеток, проголосовал за то-то и вот доказательство. Одновременно я могу спрятать свое айдентити специальным образом в своем доказательстве и никто не узнает, кто проголосовал, но все будут уверены, что корректно проголосовал, а 1000 монеток появились не из воздуха. Это наше конечное видение. Ончейн голосование тоже будет существовать, и есть люди, которые готовы на это тратиться. 

ПРО КОНКУРЕНЦИЮ С GNOSIS. Это наш самый большой конкурент. Но есть большая разница. Gnosis все-таки больше сфокусирован на мультисиге. Мы же рассчитаны на более большие DAOs, где 200, тысячи участников. И они определяются не тем, что захардкодено в смарт-контракте, а скорее тем, кто владеет токенами. Кроме Gnosis и нас, я бы не назвал никого серьезного.

У нас разный функционал. Трежери лучше у Gnosis, все-таки это мультисиг. Они изначально были сфокусированы на трежери. Мы же были сфокусированы на разном функционале. Aragon всегда представлял собой такой фреймворк, с помощью которого ты можешь подключать другие приложения как плагины. Gnosis до предыдущего года такого не предоставлял. Сейчас у него есть Gnosis Zodiac, но там еще не все понятно, и экосистема довольно новая. А у нас уже 4 года — для криптовалют это очень много. Скоро мы будем выкатывать новую версию, где все будет еще более понятно. 

Надеюсь будем конкурировать с Gnosis напрямую в трежери менеджмент. Опять же, всегда можно эти вещи совмещать — использовать в арагоновском DAO трежери менеджмент от Gnosis. Есть приложение «Агент». Оно помогает DAO взаимодействовать с другими смарт-контрактами.

То есть, как раз, когда я устанавливаю связь между Gnosis и Aragon, я использую «Агента», чтоб он работал с мультисигом в Gnosis и использовался как трежери менеджмент. Приложение, кстати, переименуют в новой версии. Еще появится app store, куда люди будут выкладывать свои приложения, и это будет в одном месте. Также все смогут увидеть, как еще можно проапгрейдить свое DAO: какие модули добавить и как его расширить. 

ПРО ГОЛОСОВАНИЕ. Мы уже пробуем новую систему. То есть, не только на Ethereum, но и оффчейн с помощью ZK, который мы разрабатываем сейчас.

Как вариант – квадратическое голосование: считаются голоса людей, исходя из количества токенов, которое у них есть. Ты голосуешь за А, и все твои токены считаются за А, а другой голосует за Б, и все его токены считаются за Б — все довольно линейно. 

Принцип квадратичного голосования такой: у меня четыре токена, а у друга восемь токенов. Тогда мой голос будет считаться как два токена (ведь у меня два в квадрате токенов), а его голос как три токена (три в квадрате – это восемь). Так киты не могут запушить свое решение, потому что, если у кита много токенов в кошельке, его голоса будут в квадратичной пропорции меньше. Но проблема: как удостовериться в том, что кит не создаст себе 10 кошельков и не раскидает по ним свои токены. На это есть всякие DIDs. Их делает много проектов, например, Керамик. Это все тоже очень сложно, потому что мы же не хотим, проходя идентификацию, показывать свой паспорт на Ethereum. Все-таки хочется приватности. В этом случае как раз помогает ZK. Он доказывает, что я реальный человек, и мне не придется показывать паспорт. 

ПРО ПРИВАТНОЕ ГОЛОСОВАНИЕ. Мы сфокусированы на этом. Для приятности при голосовании тоже используется ZK. Кроме приватности, нам еще важно снижение газа, который тратится при голосовании. 

Мы используем роллапы голосов: люди голосуют оффчейн, а потом агрегатор собирает голоса и отправляет с доказательством в смарт-контракт на Ethereum. Смарт-контракт принимает результат голосования и видит, что все корректно — тогда все происходит куда дешевле. Больше не надо платить за каждый голос, ведь раньше платили по 8-10 долларов. Но тут есть сложности с ZK VM. Нужно разрабатывать способы, как отправлять голос в обход агрегатора, и это сложно. Нужно убедиться, что человек не может одновременно отправить свой голос сам в сеть Ethereum и одновременно проголосовать за агрегатора. То есть, много всяких таких моментов, которые нам приходится продумывать. 

Мы сами создаем роллапы голосований. Решили не ждать, пока будут эти ZK VM. Я общался с разработчиками из Polygon Hermez и Aztec — у них примерный таймлайн 2 года. Мы столько ждать не хотим.

Вот есть Snapshot. Через него голосуют в DAO. Там все решает по сути централизованная система, еще и бесплатно. И ребята из Snapshot решили поработать со StarkNet. Они там тоже делают отдельный блокчейн, используя ZK, но они используют особую технологию старков в ZK. Snapshot начали работать с StarkNet год назад и все еще не могут закончить свой протокол приватного голосования, потому что StarkNet не поспевает.

Мы не хотим попасть в подобную ситуацию: поверим, что Polygon Hermez выйдет через полгода и застрянем на два года, потому что они не смогут проверить свои смарт-контракты. 


ПРО ZERO KNOWLEDGE. Попробую описать на простом примере. Вы хотите доказать кассиру, что вам есть 18 лет, и вы можете купить бутылку спиртного. При этом, вы не хотите показывать паспорт, потому что боитесь, что камера заснимет данные или сам кассир запомнит их, а потом возьмет на ваше имя кредит. А может вы просто не хотите показывать свое имя. Тогда вы можете сгенерировать специальное математическое доказательство с помощью многочленов и дать это кассиру.

Кассир проверит его в одной точке. Подставит в этот многочлен одно значение, проверит, что получившийся результат соответствует его ожиданиям (что вам 18 лет) — и если это будет так, то он поверит, что вам 18 лет. При этом все, что вы сделали — сгенерировали доказательство, используя свой паспорт, дали доказательство этому человеку, и он уже знает, что вам 18 лет.

В этом суть ZK. Ты представляешь доказательство, а другой человек этому верит. Не нужно пересылать 1000 сообщений, чтобы что-то доказать, в этом суть Sussinct Argument of knowledge.

Базовые концепты ZK можно выучить на ZK Whiteboard sessions. Разобраться во всем этом можно и без технического бэкграунда, но нужно знать математику — без этого никак. Если вы уже что-то понимаете в ZK, то можете написать пробное приложение, например, миксер токенов. Важно набрать себе портфолио. 


ПРО ПОДОБНЫЕ ZK ТЕХНОЛОГИИ. Конечно, самый большой лимит ZK — это именно то, как оно работает. ZK позволяет только доказать, что что-то было сделанно корректно. Но так ограничиваться не обязательно. Можно делать так, чтоб функция делала любое преобразование, будучи одновременно приватной. 

Мощнее ZK — fully homomorphic encryption. Оно позволяет вычислять функции и одновременно сохранять приватность. Это самое идеальное решение. 

Есть другие технологии с тем же функционалом, но с другой системой безопасности — confidential computing. Её нельзя математически проверить, но она самая готовая к производству в данный момент. Уже можно сейчас использовать ее, чтоб создавать Production-Ready applications. В то время как у fully homomorphic encryption всё еще очень плохо с эффективностью. Им долго еще развиваться. 

Нужно смотреть в двух направлениях: по готовности пока что мощнее confidential computing, а по функционалу и защищенности — fully homomorphic encryption. Но наравне с этим ZK находится на перекрестке и совмещает защищенность, верифицируемость и уже какой-то Production-Ready. 

Скорее всего, будущее за fully homomorphic encryption, и confidential computing. А ZK в данный момент — просто самая доступная технология. В будущем она будет еще совершенствоваться. Но через какое-то время уйдет на вспомогательные роли, где будет помогать развивать другие технологии, которые будут написаны на более мощных криптографических системах. 

ZK — первый звоночек того, что грядет. Понимая ZK, можно понять, как работать с будущими новыми более сложными технологиями. Несколько причин, почему за этим будущее: во-первых, сама технология постоянно совершенствуется и становится более эффективной, во-вторых, это дешевый протокол, а для них строятся специальные  процессоры, плюс криптография, она уже везде. 


ПРО БУДУЩЕЕ WEB3. Есть такое понятие как ubiquitous computing — когда данные постоянно обрабатываются и собираются. Было бы классно, если б всё было использовано для благих целей. Например, обучить машинную модель предсказывать твой паттерн поведения, чтобы свет в доме включался, когда ты приходишь или пол подогревался, исходя из твоих привычек. 

Лично я не хотел бы, чтоб мои данные уходили со всех моих гаджетов и обрабатывались абы кем. Это слишком большая цена. 

У ZK и других технологий есть возможность защитить этот процесс. Мне будет комфортно и удобно, когда мой пол будет включаться с моим пробуждением, понимая мои паттерны поведения или моя кровать будет подстраивать музыку именно для моего хорошего сна. Одновременно с этим все данные, которые были использованы после получения с устройств, будут защищены, а во время обработки их никто не сможет видеть. 

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

Я надеюсь, что web3 сольется с web2. В мире web3 я совершенно забываю про мир web2. Ну и конечно DAO. Организовать сообщества будет нужно, и я надеюсь, мир web3 станет по-настоящему децентрализованным, ведь DAO просто необходимы. DeFi уже взлетело, вряд ли там будет что-то интересное. 

Приватность на Ethereum в транзакциях будет в ближайшем будущем. Я так думаю. Secret finance занимаются этим, насколько мне известно. Другой вопрос — мне интересно, как это будет работать в web2. Там больше денег и больше технологических потребностей. Там же реально есть корпоративные тайны, там точно нужно будет принять какое-то решение. 

Но мне сложно представить Ethereum полностью приватным. Будет точно приватным web2, на который люди будут уходить, если им нужно будет перевести куда-то деньги, чтоб никто не видел. Есть гипотеза, что сам Ethereum L1 будет использоваться только для роллапов, а все транзакции будут проходить в L2. 




Report Page