Формальное определение
Блокчейн (blockchain — англ. «цепочка блоков») — это децентрализованная база данных, в которой все записи (блоки) связаны между собой с помощью средств криптографии.
Профессионалам такое определение может показаться исчерпывающим, но у рядового пользователя оно вызывает лишь дополнительные вопросы: что такое децентрализованная база, зачем она нужна и причем здесь криптография? Далее мы постараемся объяснить принципы работы технологии блокчейн и рассказать, что это такое, простыми словами.
Децентрализованная база данных
Чтобы объяснить, что такое блокчейн на понятном языке, будет удобнее использовать типичный случай из реальной жизни. Рассмотрим реестр банковских операций в качестве примера традиционной базы данных. В частности, этот реестр содержит данные обо всех приходах и расходах на личном счете Боба, который является клиентом банка.
Предположим, что Боб переводит часть своих денег Алисе. Очевидно, что в банковском реестре появится запись о снижении количества денег на счете Боба.
База данных расположена на компьютерах банка, то есть хранится централизованно. Она может быть разделена на несколько частей, которые будут сохранены на разных серверах, но общая схема ее устройства не изменится: именно банк будет управлять добавлением, редактированием и удалением информации в реестре. В том случае, если банк по каким-то причинам откажется проводить платеж, Бобу останется лишь обратиться в суд и надеяться на положительный исход дела, либо воспользоваться услугами другой организации.
Децентрализованные (или распределенные) базы данных работают по другим принципам. Информация в таком реестре хранится на множестве независимых компьютеров, которые не связаны между собой единым владельцем или местоположением. Копии одной и той же базы данных распределены между различными серверами, так что единоличное изменение информации становится невозможным. Но как теперь контролировать сохранность данных, если каждый узел может записывать их самостоятельно?
Рисунок 1. Сравнение централизованной и распределенной системы.
Для решения этой проблемы зашифруем каждую транзакцию в виде символьной строки. Каждый шифр является уникальным и может быть получен только на основе конкретного набора данных. При этом каждый новый денежный перевод содержит ссылку на предыдущую транзакцию для быстрого подсчета баланса. Следовательно, все транзакции в этой цепочке оказываются связаны между собой, и любая попытка изменения старых данных будет быстро обнаружена участниками сети с помощью проверки шифра.
Итак, технология блокчейн подразумевает хранение одной и той же базы данных на разных серверах и шифрование данных. Но как независимые узлы договариваются друг с другом о том, какую копию следует считать верной?
Механизм консенсуса
В нашей новой системе Боб может создать перевод в пользу Алисы и передать его в общую сеть. Каждый узел в блокчейне возьмет информацию о предыдущих транзакциях Боба из собственной копии базы данных и произведет подсчет его текущего баланса. Если окажется, что денег достаточно, новый перевод в пользу Алисы можно будет добавить в реестр.
Но что, если Боб — мошенник, который тоже создал несколько узлов в блокчейне? В этом случае он сможет самостоятельно «проверить» свою транзакцию и добавить ее в базу, даже если на его балансе будет недостаточно средств. Технически Боб может создать неограниченное количество узлов за относительно небольшие деньги, в результате чего «честные» серверы окажутся в меньшинстве, и работа сети будет парализована.
Для решения этой проблемы первые блокчейн-протоколы использовали метод «доказательства работой» (Proof-of-Work, PoS). Каждый узел должен не просто проверять транзакции, но и выполнять подбор случайного числа по определенному алгоритму, что требует большого количества вычислительной мощности. Сервер, который первым подбирает это число, помещает новые транзакции в блок и отправляет их другим участникам сети. За успешное решение этой математической задачи владелец сервера получает вознаграждение в криптовалюте.
Вероятность того, что конкретный узел первым совершит эту работу, напрямую зависит от его вычислительной мощности. Так как количество серверов в блокчейне измеряется тысячами, захват контроля над сетью становится невозможным: это потребует огромных затрат на покупку оборудования, которые окажутся значительно больше «прибыли» от мошеннических действий.
В результате каждый узел может контролировать лишь небольшой процент вычислительной мощности. Даже если злоумышленник случайно подберет число первым (и даже если сделает это несколько раз), «честные» серверы продолжат работать со своей копией блокчейна и опередят его спустя несколько блоков.
Рисунок 2. Случайное число (nonce) требуется для создания нового блока на основе предыдущих.
Именно такая схема проверки блоков используется в популярной криптовалюте Bitcoin. Современные блокчейны могут использовать и другие способы защиты, но все они преследуют единственную цель — повысить сложность установления контроля над системой путем максимального удорожания такой операции. Способы защиты блокчейна от несанкционированных транзакций называются механизмами консенсуса.
Подведем итог нашему рассуждению о том, что такое цепочка блоков блокчейн, переписав определение простыми словами.
Блокчейн — это база данных, которая хранится в виде цепочки связанных между собой блоков на множестве узлов. Информация в блокчейне неизменна, а ее достоверность может быть в любой момент проверена каждым участником сети.
История развития технологии
Возникновение блокчейна напрямую связано с развитием Интернета и электронных денег. С начала 90-х годов исследователи искали ответ на вопрос: возможно ли создать такую децентрализованную платежную систему, которая позволит пользователям пересылать друг другу средства в атмосфере полного недоверия?
Идеи, заложенные в современные блокчейн-платформы, впервые сформулировал криптоэнтузиаст Ник Сабо еще в 1998 году. В своей E-mail рассылке он описал теорию работы протокола bit-gold, основные идеи которого впоследствии перекочевали в Bitcoin. Годом ранее Адам Бэк изложил концепцию протокола Hashcash, который фактически представлял собой модель механизма консенсуса Proof-of-Work.
Однако в то время подавляющее большинство пользователей не обладало скоростным доступом в Интернет и винчестерами достаточной емкости, так что эти идеи не нашли особой поддержки. Их реализация была отложена до 2008 года, когда неизвестный пользователь под псевдонимом Сатоши Накамото опубликовал техническое описание своего протокола «цифровой наличности». 3 января 2009 года в новой сети, получившей название Bitcoin, были сгенерированы первые блоки.
Рисунок 3. Логотип Bitcoin.
В 2013 году был разработан протокол NXT, предложивший механизм консенсуса Proof-of-Stake (PoS). Вероятность генерации блока в таком блокчейне зависит не от вычислительной мощности, а от количества криптовалюты на балансе пользователя. При этом NXT также поддерживал создание собственных криптовалют другими пользователями на базе единой платформы.
Рисунок 4. Логотип NXT.
В июле 2015 года канадский программист российского происхождения Виталик Бутерин вместе со своей командой представил первую версию Ethereum — виртуальной машины, одновременно работающей на множестве компьютеров и использующей блокчейн для хранения данных. Главным новшеством Ethereum стали смарт-контракты — небольшие программы на языке Solidity, выполнение которых происходит на удаленных узлах. Криптовалюта в системе используется для оплаты выполнения смарт-контрактов на удаленных серверах. Появление Ethereum означало серьезный прорыв в разработке блокчейн-приложений.
Рисунок 5. Виталик Бутерин.
Эволюция блокчейн-платформ на примере трех перечисленных систем показана в таблице.
Таблица 1. Сравнение блокчейнов Bitcoin, NXT и Ethereum
Bitcoin | NXT | Ethereum | |
Год создания | 2009 | 2013 | 2015 |
Механизм консенсуса | PoW (доказательство работой) | PoS (доказательство владением криптовалютой) | PoW, планируется переход на PoS |
Правила эмиссии | Ограничена 21 млн монет, добываемых постепенно | Единовременный выпуск 1 млрд монет | Без ограничений |
Криптовалюта | Да | Да | Да |
Создание новых активов на платформе | Нет | Да | Да |
Смарт-контракты | Нет | Нет | Да |
Плюсы и минусы технологии
Примечательно, что практически все преимущества и недостатки блокчейна связаны с одними и теми же особенностями технологии, что подробно отражено в следующей таблице.
Таблица 2. Плюсы и минусы технологии блокчейн
Преимущества | Недостатки | |
Неизменность данных | Повышает доверие к системе | Невозможно «откатить» ошибочную или несанкционированную транзакцию |
Отсутствие единого центра | Решения принимаются с учетом интересов всех участников сети | Невозможно запретить нелегальные транзакции (например, оплату покупки оружия на черном рынке) |
Прозрачность транзакций | Повышает доверие между участниками сети | Снижение уровня конфиденциальности (не всегда) |
Отсутствие идентификации пользователей | Простота использования и повышение анонимности | Рост теневого рынка |
Сферы применения технологии
Так как блокчейн — это всего лишь способ хранения и защиты информации, в него можно записывать практически любые данные. Они могут быть связаны не только с переводом денежных средств, но и с любыми другими областями, требующими гарантированной сохранности данных. Смарт-контракты значительно расширили сферу применения технологии, позволив разрабатывать блокчейн-приложения, реагирующие на изменение определенных условий.
В сообществе принято выделять несколько наиболее перспективных областей использования технологии.
- Криптовалюты. Быстрый и дешевый перевод цифровой наличности, не привязанной к конкретному эмитенту.
- Удешевление традиционных банковских переводов.
- Проведение краудфандинга (публичного сбора средств).
- Хранение данных о праве собственности на недвижимость, акции, доли в компаниях и другие активы. Позволяет избавиться от классических государственных реестров и полностью перевести учет активов в цифровой вид. В будущем такой подход может избавить участников сделок от заключения договоров: их заменят криптографические токены.
- Распределенные вычисления.
- Системы голосования.
- Компании с децентрализованным управлением.
Примеры использования
Технология блокчейн вызывает пристальный интерес у пользователей по всему миру Многие криптовалюты уже в течение нескольких лет используются в качестве реального платежного средства — правда, пока речь обычно идет о покупке нелегальных товаров на черном рынке.
Технология блокчейн позволила развиться новому способу финансирования стартапов — ICO. Компании, предлагающие рынку новые идеи, объявляют сбор средств на реализацию своих проектов среди частных пользователей. В обмен на деньги инвесторов организаторы ICO раздают токены, которые могут быть проданы на бирже или сохранены в криптовалютном кошельке в надежде на рост курса.
Цифровая наличность довольно часто применяется для сбора средств в благотворительных проектах. Например, в 2014 году монета Dogecoin несколько раз использовалась для финансирования спортсменов, которым не хватало средств для участия в важных соревнованиях. Благодаря тому, что создатели таких систем описывали работу криптовалют и технологии блокчейн простыми словами, к этому новому течению смогли приобщиться сотни тысяч активных пользователей.
Корпорации и государства также проявляют живой интерес к возможностям технологии. IBM, Alibaba и другие IT-гиганты уже внедряют блокчейн в отдельные сегменты своего бизнеса. Многие российские компании, такие как Сбербанк, Альфа-Банк и S7 Airlines, активно тестируют возможности блокчейна по снижению издержек на содержание IT-инфраструктуры. Глава Сбербанка Герман Греф считает, что многие традиционные виды бизнеса могут исчезнуть по мере совершенствования технологии:
«Меня спрашивают, останется ли Сбербанк после того, как эта технология будет зрелой. Это очень большой вопрос, какой из видов бизнеса вообще останется».
Интерес к блокчейну проявляют и государства. С января 2018 года швейцарский город Кьяссо принимает оплату налогов в биткоинах. В Москве с 2017 года тестируется блокчейн-платформа для голосования по вопросам городского управления в системе «Активный гражданин». Российский премьер-министр Дмитрий Медведев полагает, что появление технологии распределенного реестра может иметь длительные последствия:
«Через несколько лет могут исчезнуть и криптовалюты, а технология, на базе которой они развиваются, — блокчейн — станет частью повседневной реальности.»
Сегодня блокчейн сталкивается со множеством вызовов, которые носят как технический, так и законодательный характер. Если технология успешно преодолеет эти барьеры, она сможет прочно закрепиться во многих сферах нашей жизни.
Видео: как проверяются транзакции в блокчейне
Авторы следующего видеоролика доходчиво объясняют механизм проверки транзакций и кратко рассказывают о сферах применения смарт-контрактов.