Ethereum: платформа для блокчейн-систем и её создатель Виталик Бутерин

Когда Виталик Бутерин впервые узнал о существовании биткойна, , а это было в феврале 2013 года, он решил, что его просто разыгрывают. Поверить в то, что какие-то цифры в базе данных могут покупаться и продаваться за реальные деньги — при том, что у них нет совершенно никакой собственной ценности, — было очень сложно.
b52a993dafac23b6559d0e2c8c992725_cropped
Александр Ершов
6 декабря 2017 12:00

Обсудить 0

Сейчас, когда общая капитализация криптовалют измеряется десятками миллиардов долларов, Бутерин рассказывает о тех временах с улыбкой. Однако ни инвестиции, ни игра на бирже не были интересны Виталику сами по себе. Его внимание было захвачено технологией, которая лежит в основе существования биткойна, и идеей превратить ее в нечто большее. За несколько лет эта идея выросла в платформу, которую сейчас пытаются внедрить в свою работу крупнейшие компании мира и даже правительства. Речь идет о придуманном Бутериным «мировом компьютере», распределенной системе Ethereum.

Виталик родился в России, в подмосковной Коломне. Когда ему исполнилось шесть лет, его семья переехала в Канаду. Еще раньше, в четыре, он познакомился со своим первым компьютером, в котором самым интересным оказались вовсе не игры, а, как ни странно, табличный редактор Excel — ведь его можно было программировать. По‑настоящему увлекся этим занятием Виталик позже: в десять лет к нему в руки попала книга по C++, и от табличных формул можно было перейти к созданию «стрелялок» и «бродилок». После школы основатель Ethereum поступил на отделение компьютерных наук в канадском Университете Уотерлу и даже успел закончить первый курс, но к этому моменту в его жизни появился биткойн.

Жизнеспособность идеи виртуальных денег Виталик решил испытать на практике. Для самостоятельного майнинга не было вычислительных мощностей, так что пришлось добывать биткойны в буквальном смысле вручную: Виталик стал писать заметки о криптовалютах на интернет-форуме, где авторам в ней же и платили. Так он получил свои первые пять биткойнов, что составило около четырех долларов по тогдашнему (или 20 000 по нынешнему) курсу — эксперимент оказался удачным. Впрочем, более важным его результатом стало то, что благодаря этой работе Бутерин занял идеальную позицию для наблюдения за развитием новой технологии, о потенциале которой в мире тогда почти никто не догадывался.

Виртуальные монеты и швейцарские ножи

«Я не виню Сатоси в том, что он не изобрел Ethereum, — улыбается Бутерин. — Когда рождаются радикальные идеи, лучше опробовать их последовательно, а не параллельно». Сатоси Накамото, загадочный создатель биткойна, подозревал о том, что на базе той же общей идеи в будущем можно будет построить нечто большее, чем система электронных платежей. Однако прежде, чем это могло стать предметом обсуждения, пользователи должны были поверить в саму идею хранения информации в блокчейне.

Суть блокчейна, как известно, в том, что это распределенная база данных, существование и единство которой поддерживают независимые друг от друга агенты. Их привлечение обеспечивают экономические стимулы, которые (и в этом принципиальная инновация Сатоси) были исходно встроены в архитектуру системы. Те из участников, кто поддерживает на своих компьютерах копии общей базы, могут создавать в ней новые блоки и получать за эту работу небольшую награду. Их, собственно, и называют майнерами.

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

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

Умные контракты

Как и у всякой хорошей технологической идеи, у концепции Ethereum были свои предшественники. Еще в 1996 году, задолго до появления биткойна, американский математик венгерского происхождения Ник Сабо предложил концепцию умных контрактов — формальных соглашений, которые реализуют себя сами. Простейшим примером может быть вендинговый автомат: вы вносите в него деньги и номер товара, а он по заранее известным формальным правилам сам выдает вам банку с газировкой. Все происходит без банков, счетов и вообще без какого-либо участия людей. Правда, вендинговый автомат существует лишь до тех пор, пока есть фирма, которая его обслуживает. А вот настоящий умный контракт, по Сабо, будет существовать в блокчейне совершенно автономно, сам по себе. Точнее говоря, уже существует — благодаря Сатоси и Бутерину.

  • Технологии

    10 научно-популярных Telegram-каналов, на которые стоит подписаться

  • Технологии

    Новый ум короля: как создаются лучшие системы машинного обучения в мире

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

«Живущие» в блокчейне умные контракты называются распределенными приложениями, или DApps (Decentralized Applications). С момента первой реализации Ethereum в 2014 году в каталоге DApps появилось уже более 600 приложений. Честно говоря, не все они принципиально сложнее лотереи или финансовой пирамиды. Некоторые из разработчиков распределенных приложений, используя безумную популярность темы блокчейна и Ethereum, привлекают количество инвестиций, заставляющее задуматься о финансовом пузыре. Технологии блокчейна переживают сейчас «кембрийский взрыв», в ходе которого возникает множество странных и загадочных существ, большинству из которых уготовлено неминуемое вымирание. Тем не менее среди всего этого зоопарка уже сейчас встречаются приложения, которые в будущем могут сильно изменить нашу финансовую систему, IT-инфраструктуру и даже повседневную жизнь. И главная интрига, конечно, в том, что пока будущих победителей не знает никто.

После пузыря

Мир переживает бум интереса к криптовалютам. В 2017 году перегретость рынка очевидна уже всем: и продавцам видеокарт, чьи склады опустошили начинающие майнеры, и чиновникам, пытающимся вникнуть в тонкости работы криптографии на эллиптических кривых. Миллионы долларов, которые сейчас через механизм продажи так называемых токенов (виртуальных «жетонов» еще не работающих проектов) вливаются в Ethereum-стартапы, заставляют вспомнить о временах тюльпановой лихорадки или бума доткомов. Виталик, однако, смотрит на все эти признаки надвигающегося кризиса спокойно. Да, многие команды привлекают инвестиции на неработающие (а может, и неработоспособные) проекты. Да, спекулянтов это не смущает. Да, ситуация не вполне нормальная. «Надо просто подождать, пока пузырь лопнет», — невозмутимо отвечает он на вопросы о будущем. Сейчас Виталика волнует не ажиотаж вокруг платформы, а ее собственные внутренние ограничения, которые необходимо преодолеть, чтобы она заработала по‑настоящему.

Ахиллесова пята любых блокчейн-сетей (и Ethereum тут не исключение) — проблема масштабируемости: чем больше в сети участников, тем тяжелее системе работать. Вопреки метафоре распределенного компьютера на самом деле в блокчейн-системах каждую транзакцию обрабатывает каждый узел, так что речь идет не о параллелизации, а о дублировании. Из-за этого в какой-то момент время обработки транзакций становится неприемлемо большим. Проблема масштабируемости уже привела к разделению биткойна на две отдельные ветки, и нельзя сказать, чтоб это пошло на пользу имиджу криптовалюты. Когда я спрашиваю Виталика о том, почему до сих пор ни одно из приложений на базе Ethereum так и не стало по‑настоящему зрелым, он честно признается, что это связано прежде всего с ограничениями самой платформы. «Чтобы приложения заработали, нужно, чтобы мы решили проблему масштабируемости, — говорит он. — И мы ее решаем, у нас есть несколько стратегий: это и шардинг, то есть разделение базы, и каналы состояний, и только что опубликованная система Plasma, которая позволяет построить «блокчейн на блокчейне». Но пока бутылочное горлышко — это мы. Так что о будущем давайте поговорим лучше через год-полтора».

Азбука блокчейна

Блокчейн

Как и биткойн, Ethereum существует в блокчейне, то есть цепочке блоков. Каждый блок содержит информацию о предыдущем, причем если возникают разночтения (цепь блоков начинает ветвиться), то правильной считается самая длинная цепочка. Это предпочтение обеспечивается экономическими стимулами: майнерам невыгодно работать над блоками, которые могут не признать их коллеги.

Proof-of-work и Proof-of-stake

Чтобы защитить систему от повторной траты денег, которые уже были потрачены, нужно гарантировать, что между созданием блоков прошло какое-то время. Обычно для этого используется доказательство выполнения работы (Proof-of-work), когда компьютер заставляют выполнять сложную задачу, результат которой легко проверить. Только решив ее, майнер может получить новый блок. Опыт биткойна показал, что такая стратегия работает, однако сопряжена с бессмысленным сжиганием огромного количества вычислительных ресурсов. В качестве альтернативы в Ethereum планируется переходить на принцип Proof-of-stake, когда вероятность получения нового блока пропорциональна не вычислительным ресурсам, а количеству криптовалюты на счету владельца (идея проста: чем больше у тебя денег, тем меньше стимулов мухлевать).

Умные контракты

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

Транзакция

Общение умных контрактов друг с другом и с внешним миром происходит с помощью транзакций. Любая транзакция состоит из следующих частей:

  • nonce (одноразовый криптографический код, обеспечивающий защиту от повторов);
  • gasprice (текущая цена «бензина» для работы автомата);
  • startgas (зарезервированное количество «бензина» для автомата);
  • to (получатель криптовалюты);
  • value (количество переводимой криптовалюты);
  • data (данные, которые сопровождают транзакцию — например, адрес сайта, который вы хотите зарегистрировать);
  • v, r, s (криптографическая подпись).

Параллелизация и масштабируемость

Несмотря на образ «мирового компьютера», узлы сети Ethereum до сих пор работают не параллельно, а лишь многократно дублируют друг друга. Это означает, что общая производительность сети ограничивается ее самым слабым участником. Проблема роста — главная проблема любого блокчейна, и в Ethereum ее пытаются решить несколькими способами. Во‑первых, существуют «легкие клиенты», которые доверяют проверку транзакций другим узлам, пользуясь только полученными результатами (они могут работать даже на телефонах или, например, посудомоечных машинах). Во‑вторых, это шардинг — разделение транзакций на группы, которые проверяются параллельно разными узлами системы, а затем сводятся воедино. В-третьих, использование своеобразного «быстрого кэша» для блокчейна, который может быть реализован как система p2p-платежей Plasma, каналы состояний и т. д. Все эти технологии пока находятся в разработке.

«Бензин» для автомата

Эффективность и предсказуемость работы умных контрактов обеспечивается концепцией «бензина» (gas). «Бензин» в Ethereum — это эквивалент определенного числа вычислительных операций. Чтобы запустить умный контракт, ему нужно выделить некоторое количество «бензина», при израсходовании которого работа просто откатывается назад. Таким образом, даже зависший умный контракт никак не повлияет на работоспособность всей системы. «Бензин» покупается за внутреннюю валюту Ethereum, которая называется эфир, или ETH.

Примеры децентрализованных приложений

Golem

Идея блокчейна как распределенного компьютера реализуется в Golem самым непосредственным способом: система позволяет покупать и продавать вычислительные мощности личных ПК, заменив бессмысленный майнинг полезной работой. Первыми клиентами «коллективного суперкомпьютера» должны стать 3D-дизайнеры, разработчики игр, специалисты по машинному обучению. В будущем же подобные проекты могут составить реальную конкуренцию серверам Amazon и Microsoft. Впрочем, прежде чем это произойдет, предстоит решить множество технических задач, с которыми в области распределенных вычислений еще никто не сталкивался.

StorJ

Если Golem — это «мировой процессор», то StorJ — это «мировой винчестер». Система позволяет не только хранить свои данные на чужих ПК, но и сдавать дисковое пространство в аренду другим участникам сети. Вся информация в системе шифруется и дублируется, так что приход-уход отдельных участников на сохранность информации повлиять не должен. StorJ — одно из немногих DApps, которое уже работает, но, чтобы им воспользоваться, нужно сильно постараться: настройка хранилища требует незаурядного энтузиазма. Впрочем, как в свое время майнинг криптовалют.

Augur и Gnosis

Игры на деньги известны тысячи лет, но платформы вроде Augur и Gnosis обещают принести в эту область силу децентрализации и автономность умных контрактов. Открыть собственные «котировки» сможет любой желающий, и затрагивать они могут не только курсы валют или результаты спортивных матчей, а вообще все что угодно. Например, события будущего сезона «Игры престолов». Главное же отличие в том, что выплаты победителям в блокчейне никак не зависят от создателей площадки, а проводятся умными контрактами. Последние получают информацию о внешнем мире от участников сети — вести себя честно пользователей заставляют экономические стимулы и законы теории игр. И Augur, и Gnosis привлекли уже немалые деньги (даже не начав работать), и полученный кредит доверия скоро придется выплачивать.

LaZooz

Идея LaZooz очень проста: это Uber на умных контрактах с очень оригинальным методом майнинга. Чтобы получать вознаграждение, в LaZooz нужно не проводить вычисления, а фиксировать свои перемещения по GPS — это называется Proof-of-movement. В отличие от Uber, сервис принадлежит не компании, а сообществу, что, конечно, несет с собой значительные плюсы: потенциально более низкие тарифы, прозрачные правила их формирования и т. д. Минусы тоже очевидны: отсутствие инвестора с толстым кошельком лишает сервис демпингового рычага, который, как известно, имеет принципиальное значение для служб такси.

Мнение эксперта

Будущее умных контрактов по версии Сергея Тихомирова, эксперта по блокчейн-технологии, аспиранта Университета Люксембурга

Цифровое удостоверение личности

В блокчейн можно будет записать свою «цифровую личность» (по сути, пару ключей), которая позволит избавиться от контроля со стороны коммерческих компаний. Она станет основой единой цифровой репутации человека.

Цифровые госуслуги

Когда «блокчейн-ID» признает государство, цифровые госуслуги (регистрация собственности, заверение документов) выйдут на новый уровень. Очень интересное движение в этом направлении — эстонский проект e-Residency (они уже интегрируют госуслуги с блокчейном через Oraclize, сотрудничают с Bitnation), грузинский проект с BitFury по реализации земельного кадастра на блокчейне. Идеальное видение: продать дом — одна транзакция, ноль бумажек.

Финансовые рынки

Сегодня среднему пользователю сложно и дорого вложить 1000 рублей в акции Apple. Через умные контракты он сможет сделать это в один клик. Сейчас это реализуется в форме ICO, но пока ICO — это Дикий Запад. Через пару лет государство отрегулирует этот рынок, и на него придут обычные компании, которые будут собирать по 100 долларов с миллионов людей. Цифровой кошелек обычного пользователя через пять лет будет выглядеть примерно так: 0,0…2 биткойна, 0,0.3 эфира, 10 токенов Apple, 20 токенов «Яндекса», 3 мосметро-токена, 35 старбакс-токенов.

Рынки предсказаний

Если приложения вроде Augur/Gnosis взлетят, у человечества появится независимый источник правды. Эффективность финансовых рынков заработает на рынке предсказаний. В блокчейне можно будет найти самый точный ответ на вопрос о будущем, ведь он станет идеальным полем для игры инсайдеров.

Размывание государственных границ

Абсурдно, когда в сети существует программа, написанная разработчиками со всего мира, а мы задаемся вопросом о том, считать ее американской, швейцарской или какой-то еще. В медиаиндустрии люди уже поняли, что всех пользователей торрентов не накажешь, и это привело к созданию новой модели дистрибуции контента. Хочется надеяться, что и за авторами токен-контрактов перестанут гоняться, заставляя их выполнять какие-нибудь американские законы 1933 года (а это будет уже скоро). Лучше, если мы придумаем новую модель для финансовых сервисов, которая учитывает растущую глобализацию мира.

Как будут выглядеть вирусы будущего и системы защиты от них?

Евгений Касперский, программист, основатель и генеральный директор «Лаборатории Касперского»

25366de9f771ed411e2149b4a9097d01_fitted_

Вирусы будущего будут сложными многофункциональными изделиями, которые станут заражать не только привычные компьютеры и мобильные телефоны. Они начнут проникать также в интернет вещей, атаковать самые разнообразные «умные» устройства: «умные» дома, «умные» автомобили — «умное» всё. Их создатели все активнее будут использовать новые технологии — машинное обучение, например. Не исключаю, что к уже традиционным сейчас киберпреступникам, которые охотятся за деньгами, атакуя интернет-банкинг, похищая или шифруя личные и корпоративные данные, добавятся новые группы, целью которых станут промышленные системы и критическая инфраструктура. Это, на мой взгляд, самая большая угроза, которая уже начинает проявляться.


©  Популярная Механика