Блокчейн код
— Ethereum, как и биткоин, основан на технологии блокчейн. У нас тоже есть транзакции, подписанные криптографическими ключами. Есть майнеры, которые создают блоки. Каждый новый блок содержит список транзакций и ссылку на предыдущий блок, формируется цепь блоков — блокчейн. Но в биткоине значение транзакции имеет более жесткий формат, чем у нас. В самой транзакции фиксируется только то, что отправитель посылает, например, 20 монет адресату. Язык для верификации подписей ограничен. То есть система заточена на хранение информации о том, кому принадлежат биткоины в какой-то момент времени. Но она не подходит для применений с другими внутренними правилами.
— Ethereum может хранить список передвижений криптовалюты, но это не главное. Наш блокчейн записывает данные о контракте («умный контракт»). У него тоже есть баланс (сколько в нем «эфира» — нашей криптовалюты), история транзакций, в которых он участвовал. Но еще у каждого контракта есть внутренняя память, которая содержит код. Когда объект участвует в транзакции, этот код выполняется, он может работать с данными из памяти и создавать новые транзакции. Все это позволяет закодировать любой вид правил и любую последовательность событий, которые должны произойти, если правила выполняются. Программируемые контракты, управляемые и защищенные блокчейном, могут описывать самые разные отношения участников.
— То есть биткоин нацелен на работу с платежами, а с помощью Ethereum создаются любые децентрализованные интернет-сервисы?
— Да, идея децентрализации, которая гарантирует безопасность системы, центральная. Представьте, что в какой-то деревне решили вести учет всех проезжающих по главной дороге. Можно назначить ответственного за список, который будет каждый день вписывать новых прохожих. Но этому человеку должна доверять вся деревня, ведь он может неправильно описывать события — умышленно или нет. Можно сделать так, чтобы каждый человек имел копию и вносил в нее запись только после того, как убедится, что все написанное ранее верно. Если турист захочет узнать об истории перемещений по главной дороге за последний год, он просмотрит все книги. Если увидит расхождения, он сможет разобраться, что считает правильным большинство жителей.
Биткоин — это такая книга, в которой можно писать только на одном языке и только о перемещениях людей. Ethereum же более гибкий, в его книге язык — это универсальные математические формулы.
Я не единственный думал о том, что у блокчейн, помимо биткоинов, есть множество применений. Идея была в том, чтобы создать максимально общий протокол для работы не только с биткоином, а с более абстрактными объектами. В 2013 году ни одна из команд не решила принципиальной проблемы (новый тип транзакции — новый протокол) и я понял, что надо сделать универсальный язык программирования и «вшить» его в протокол.
— Но у Ethereum тоже есть своя криптовалюта — «эфир».
— Да, криптовалюта помогает хранить историю транзакций. Во-первых, криптовалюта нужна для того, чтобы платить майнерам, ведь они тратят на майнинг время, электроэнергию. Во-вторых, криптовалюта позволяет майнерам брать комиссию с транзакции (это фиксированная сумма). Это предотвращает случаи, когда кто-то может перегрузить сеть, отправив миллион бесплатных транзакций. Но в биткоин-сети криптовалюта — самоцель, а наш «эфир» — это только «топливо» для инфраструктуры приложений.
— Как приложения работают на «умных контрактах»?
— Идея «умного контракта» появилась в 1997 году у криптографа Ника Сабо. Он описал вендинговый автомат, который выдает банку газировки после опускания денег. Машина сама гарантирует реализацию правила. И продажа колы становится проще, быстрее и безопаснее. В сегодняшних «умных контрактах» та же идея. Только из мира физических объектов она переходит в цифровой. «Умный контракт» — это программа, которая ведет реестр сделок по зафиксированным заранее правилам. Алгоритм предусматривает, что любое изменение прав собственности должно быть авторизовано программой. А она проверяет, выполняется ли заложенный набор условий.
— Где это применяется?
— «Умные контракты» уже работают в финансах. Например, в сфере страхования. Несколько фермеров, скажем, могут оформить «умный контракт» о страховании погодных рисков. Каждый фермер перечисляет определенное число монет, затем программа анализирует открытые источники о том, сколько было дождей в районе каждого из них. Если засуха действительно была — определенный объем криптовалюты пострадавшему фермеру перечисляется автоматически.
Другой сценарий — передача права на управление деньгами. Если ты попал в автокатастрофу и находишься без сознания, кто-то должен заплатить врачам за операцию. Чтобы заранее назначить человека, который получит доступ к твоему банковскому счету, если такое случится, можно оформить доверенность в банке. Только услуги юристов обойдутся в Швейцарии, как я знаю, в сумму около $1200. А можно не платить им и задать условия с помощью «умного контракта». Если я не открываю собственным криптографическим ключом мой кошелек с криптовалютой в течение, скажем, двух недель — перечислить средства такому-то адресату или дать человеку право управлять счетом по доверенности.
— Какие необычные проекты на Ethereum уже реализованы?
— «Умные контракты» могут описывать операции с самыми разными объектами собственности. Есть, например, несколько проектов, которые позволяют продавать электроэнергию. «Умный контракт» ведет учет мощностей, вырабатываемых твоей солнечной батареей. Если тебе самому не нужно столько энергии, ты можешь отправить ее по сети соседу, а тот перечислит тебе монеты.
Другой проект помогает музыкантам продавать произведения. Сегодня артист вынужден верить отчетам звукозаписывающей компании о том, сколько его песен скачали. С «умным контрактом» он сам может проследить, кто покупает его музыку. Автор песен сам определяет правила «умного контракта». Он может прописать, например, что 20% с каждой песни перечисляются на рекламу.
На нашей платформе уже больше 210 проектов. Среди них многие созданы программистами-одиночками, которым интересно экспериментировать с технологией. Есть несколько десятков стартапов, которые хотят зарабатывать.
— А корпорации участвуют?
— Они подключаются. Банковский холдинг UBS создал облигации на блокчейне, где «умные контракты» следят за всей цепочкой передачи ценной бумаги от одного участника торгов к другому. Можно обойтись без держателей реестров, брокеров, бэк-офисов. Процентная ставка определяется алгоритмом, платежи идут автоматически. IBM экспериментирует с «умными контрактами» для интернета вещей. Компьютеры и «умная» бытовая электроника смогут самостоятельно перечислять платежи — например, стиральная машина сама сможет заказать порошок, а электросеть дома купить энергию с ветряка в соседнем районе. Пока в корпорациях технологией интересуются единицы, но постепенно, я надеюсь, крупный бизнес будет запускать все новые приложения на «умных контрактах». Все-таки Ethereum — платформа именно для разработчиков и бизнеса. Но через их решения блокчейн вскоре придет в жизнь обычных людей.
— Насколько нужно дорабатывать ваши «умные контракты» для каждого применения?
— В большинстве проектов часть внутри системы Ethereum небольшая. Куда сложнее связать код на блокчейне с реальным миром. Например, чтобы «умный контракт» позволил регистрировать права на землю, нужно не просто написать программу, но и интегрировать ее с правовыми институтами. А прежде чем «умная» электроника сможет расплачиваться криптовалютой, нужно договориться с производителями. Чтобы эти компании захотели работать с «умными контрактами» и инвестировали свои деньги в приложения на Ethereum, — на это уйдет несколько лет.
— У вас были на старте предложения от венчурных инвесторов?
— Мы получили грант от The Thiel Fellowship, фонда Питера Тиля. Венчурных инвестиций мы не привлекали. Те, кто стоял у истоков Ethereum, хотели развивать проект по всем правилам венчурного финансирования. Но я был против. Я хотел, чтобы базовая инфраструктура платформы была создана некоммерческой организацией. Только так люди бы приняли идею децентрализации и независимости системы, на которых основан Ethereum. Сейчас мы работаем через Ethereum Foundation, у него нет цели зарабатывать.
— Тогда откуда у вас были средства?
— В 2011 году мы сделали собственный crowd sale. За полтора месяца мы продали «эфира» примерно на 31 000 биткоинов. По курсу биткоина на тот момент сумма составила $18,5 млн. Мы и сейчас живем на эти деньги, в распоряжении Ethereum Foundation сегодня около $12 млн. У нас есть зарплаты, но деньги нам нужны, только чтобы дальше развивать технологию. У многих участников Ethereum Foundation есть свои проекты на Ethereum, которые они рассматривают как источники будущего дохода.
— Можно ли привлекать финансирование подобным способом другим проектам?
— Для этого есть другая новая тема — краудфандинг через DAO (децентрализованная автономная организация). DAO полностью управляется с помощью блокчейн. Любой может описать идею и начать предварительную продажу токенов — «кирпичиков» криптовалюты на Ethereum. Владельцы токенов могут принимать решения коллективно, голосуя. Этот процесс, благодаря преимуществам блокчейн, прозрачен и лишен единого центра. Владельцы токенов решают, на что именно направить деньги, предназначенные для разработок, переслать их исполнителю с помощью «умного контракта». Владельцы токенов могут решать, должны ли доходы от проектов реинвестироваться, храниться на счете или распределяться в виде «дивидендов».
Одна команда разработчиков, Slock.it, из Германии, уже запустила «децентрализованный венчурный фонд», который позволяет любому человеку вкладывать «эфир» в разные проекты, получая их «акции».
— Как вы оцениваете перспективы Ethereum, когда столько денег пришло в индустрию?
— Да, новым проектам на основе блокчейн довольно сложно развиваться после бума инвестиций в биткоин. Но точно так же можно сказать, что и биткоину сложно развиваться, когда так много инвестируют в традиционную финансовую систему. Но мы видим, как распространяются идеи биткоин. Это доказывает, что новые технологии, если они работают, становятся востребованы.
География нашей сети больше охватывает США и Европу, но ее узлы есть и в Китае, и в России. Мне много пишут разработчики из России, предлагая идеи для «умных контрактов». Уже есть несколько интересных стартапов. Например, проект AIRA сделал контракт на Ethereum для найма дрона. Пользователь создает «умный контракт», передавая координаты начальной и конечной точек полета, — дрон сам рассчитывает расстояние и стоимость. Пользователь отправляет платеж — дрон автоматически вылетает. В российских банках и ИТ-компаниях тоже думают о внедрениях блокчейн. Экспериментируют с Ethereum в Сбербанке, в Acronis, но деталей раскрывать я пока не могу.
— Насколько сильны ваши связи с Россией?
— В середине 1990-х мой папа, программист, познакомился с Владом Мартыновым (сегодня генеральным директором и основателем Yota Phone). Они работали в одной компании, потом ушли из нее и создали несколько новых бизнесов, для продвижения одного из которых отец уехал в Канаду. Я уехал с ним. Я вырос в Торонто, но в семье мы всегда говорили по-русски. С Владом мы продолжали общаться. В конце 2015 года Влад вышел на связь и, рассказав о растущем интересе к блокчейн в России, предложил съездить в Москву.
Думаю, что Россия — один из потенциально крупных рынков для Ethereum. В России очень сильные инженеры. Всегда отправляясь на международные олимпиады по математике в Канаде, я знал, что буду соревноваться с американцами, китайцами и русскими. Возможно, российские разработчики присоединятся к команде Ethereum.