Разработчик Zcash: Биткойн сделал меня энтузиастом криптографии

19 апреля на Московской блокчейн-конференции выступил один из разработчиков Zcash Ариель Габизон. Zcash — криптовалюта на основе Биткойна, использующая доказательства с нулевым разглашением (zero-knowledge proofs) для повышения приватности транзакций. Ариель Габизон получил степень PhD в теоретической информатике в Институте Вейцмана (Израиль) в 2008 году и работает инженером в команде Zcash.

— Как вы узнали о Биткойне?

— Когда я впервые услышал о Биткойне, я подумал, что это так себе идея. Потом кто-то другой рассказал мне про это с энтузиазмом, я прочитал whitepaper. Это оказалось гораздо более блестящим, чем я ожидал, и меня это увлекло.

— Когда это было?

— В 2014 году.

— Вы изучали криптографию ранее?

— Я занимался другими вещами в математике и теоретической информатике. Я немного занимался криптографией, но но мне это не очень нравилось. Биткойн убедил меня в том, что я люблю криптографию. Он превратил меня в энтузиаста криптографии.

— Как вы присоединились к команде Zcash?

— После того, как я увлекся Биткойном, я искал, как войти в эту область. Вошел в исследовательскую группу в Технионе, в Израиле. Они работали над доказательствами с нулевым разглашением. Их использует, в том числе, Zcash. Два года я работал над этим как ученый. Потом присоединился к Zcash: им был нужен кто-то с хорошим математическим образованием, чтобы спроектировать «церемонию«.

— У меня есть глупый вопрос про «церемонию». Если вам нужен публичный ключ, к которому никто не знает приватный ключ, почему вы не можете просто взять n случайных бит и считать это публичным ключом?

— Отличный вопрос! Потому что большинство строк не обладает нужной структурой. Публичный ключ выглядит так: вы выбираете s в вашем поле, у вас есть группа с генератором g, и публичный ключ выглядит так: g^s, g^(s^2), g^(s^3), … . Только очень специальные строки подходят, большинство строк не обладают нужной структурой. Если выбирать строку случайно, придётся перебрать более 20 триллионов вариантов.

— Вы присоединились к Zcash как исследователь. В чем заключается ваша роль в Zcash, над чем вы работаете?

— Моя первая задача была очень четко определена: спроектировать протокол «церемонии». Сейчас я наполовину математик, наполовину программист. Сложно в двух словах описать, в чем моя роль.

— В небольшой команде все делают всего понемногу?

— Скорее, я до сих пор в поисках своей роли. Я берусь за задачи, где требуется больше математических знаний. Например, новые атаки на дискретный логарифм, метод решета числового поля. Понимание того, насколько безопасна наша эллиптическая кривая.

— Вы используете ту же эллиптическую кривую, что и Биткойн?

— Мы используем ту же кривую для цифровых подписей обычных транзакций. Но для zk-SNARKS нужна другая кривая, которая в каком-то смысле должна быть менее безопасной. Потому что для zk-SNARKS она должна поддерживать pairings на эллиптических кривых. Поэтому нужна другая кривая, помимо кривой Биткойна, со специальной структурой.

— Структура финансирования Zcash (так называемая награда основателям — founder reward — в течение четырех лет перечисляет 20% награды за блок на адрес компании-разработчика криптовалюты) привела к возникновению Zclassic (форк Zcash без награды основателям). Сейчас популярен такой способ финансирования, как ICO, выпуск своего токена. Zcash рассматривали такой вариант финансирования?

— Я присоединился к проекту, когда решение уже было принято. Но, насколько я понимаю, идея в том, чтобы дать разработчикам мотивацию работать над Zcash в течение первых четырех лет. Когда монеты поступают постепенно, появляется мотивация добиваться успеха проекта в долгосрочной перспективе. Если же ты получил все монеты в начале, ты можешь их продать.

— Я правильно понимаю, что Zcash — это форк кода Биткойна с добавлением доказательств с нулевым разглашением?

— Точно.

— Bitcoin Core продолжает развиваться. Вы синхронизируетесь с последними изменениями?

— Мы делаем cherry-pick. Мы смотрим на то, что они добавляют, и копируем некоторые изменения. Мы решили, что Zcash достаточно сильно отклонился от Биткойна, и копировать все изменения было бы слишком сложно. С другой стороны, мы добавляем код в Биткойн. Например, мы работаем над проектом atomic trading, который требует добавления нашего кода в Биткойн.

— Разработчики Биткойна уже приняли ваш код?

— Он в процессе рассмотрения.

— Что вы думаете о перспективах внедрения доказательств с нулевым разглашением в Ethereum и другие блокчейн-системы?

— Технически это возможно. Сложно прогнозировать успех таких проектов. Zcash использует очень сложную криптографию. Мы считаем, что успех более вероятен, если команда на этом специализируется.

— Над чем сейчас работают в команде Zcash?

— Я очень увлечен проектом, над которым работаю — XCAT (Cross-Chain Atomic Transactions). Допустим, мы хотим поменять мои ZEC на ваши BTC без участия доверенной третьей стороны. Проблема курицы и яйца: кто должен перечислить средства первым? XCAT — это новый протокол, позволяющий обменивать криптовалюты атомарно: как только я отдал ZEC, у вас нет способа не отдать BTC.

— Я правильно понимаю, что деньги держит «недоверенная» третья сторона, наподобие смарт-контракта?

— Технология называется хешированные, заблокированные по времени контракты (Hashed Timelocked Contracts или HTLC). Мы работаем над тем, чтобы добавить ее в Биткойн. Я выбираю случайную строку, хеширую её и помещаю в контракт на блокчейне Биткойна. Вы можете реализовать это на скриптовом языке Биткойна. Тот, кто предоставил аргумент хеш-функции, сможет забрать деньги. Я не могу описать весь протокол, но это основной принцип. Поищите «bitcoin atomic trading». Эта идея еще не реализована, я как раз работаю над этим.

— То есть это протокол не исключительно для Zcash, а скорее для Биткойна, но с возможностью использовать его в Zcash?

— Да. Для атомарного обмена между двумя блокчейнами нужно, чтобы протокол был реализован в обоих.

 

Интервьюировал Сергей Тихомиров

Источник: bitnovosti.com

No votes yet.
Please wait…

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.