Как устроен блокчейн?

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

Многие концепции в основе распределенного реестра использовались десятки лет, прежде чем создатель Биткоина объединил все составляющие в инновационную технологию. Редакция BITSIDE изучила ключевые аспекты блокчейна, его механизмы и компоненты. и разобралась как работает вся система в целом.

Оглавление

Что такое блокчейн

Блокчейн — распределенная децентрализованная база данных, состоящая из взаимосвязанных блоков. Если объяснять blockchain простыми словами, то он похож на дневник или бухгалтерскую книгу, где каждая запись связана с предыдущей. Это позволяет защитить сеть от изменений и обеспечить безопасное хранение информации.

Blockchain впервые описал Сатоши Накамото в белой книге Битокина, опубликованной в 2008 году. До этого момента его составляющие, включая хеширование и пиринговую сеть, прошли долгий путь развития. Нельзя сказать, что представленный Накамото блокчейн — идеальная разработка. Спустя почти девять лет работы, сеть Биткоин столкнулась с рядом проблем, включая низкую пропускную способность и высокую энергоемкость майнинга. Но технология распределенного реестра и достижения консенсуса между участниками сети, стала основой других криптовалют и нашла новые применения.

Некоторые проекты создавались именно с целью решить проблемы блокчейна Биткоин и предложить альтернативу. Например, Эфириум (Ethereum), который прочно занял позицию второй главной криптовалюты, известен проработанными смарт-контрактами и более высокой пропускной способностью сети. Платформа сумела сделать проще и доступнее процесс создания токенов, чем спровоцировала рост популярности ICO.

Ethereum многие считают «убийцей bitcoin», но проекты выполняют разные роли. К 2018 году появилось огромное количество проектов, которые претендуют уже на роль «убийцы эфира». Например, скорость cети EOS составляет 1275 транзакций в секунду. Ethereum способен лишь на порядка 20.

Сам же блокчейн, лежащий в их основе, способен исправить следующие проблемы:

  • Увеличить скорость проведения любых транзакции.
  • Устранить необходимость в посредниках.
  • Обеспечить прозрачность сделок.
  • Гарантировать безопасное хранение данных.
  • Снизить коррупцию и бюрократию.
  • Решить проблему доверия незнакомых сторон.
  • Уменьшить издержки при проведении транзакций.
  • Дать компаниям возможность получать инвестиции без использования венчурного капитала с помощью ICO. Некоторые считают, что эта проблема уже решена. Но отрасль ICO пока слабо регулируется и полна мошенников.

блокчейн изнутри как устроен биткоин

Блокчейн изнутри: как устроен биткоин

Говоря простыми словами, распределенный реестр выглядит, как взаимосвязанная цепочка блоков. Но подобное определения дает расплывчатое понимание. Разберем блокчейн изнутри, как устроен Биткоин.

Хеширование

В основе блокчейн лежит метод хеширования. Этот подход из криптографии позволяет представить данные в виде относительной короткой уникальной символьной строки. Он используется для сравнения крупных массивов данных.

Если два хеша одинаковы, то вероятность, что в них представлены те же данные составляет почти 100%. Если кто-то попытается изменить хоть один символ записи перед хешированием, поменяется вся хеш-строка. Чтобы удостоверится, исходные данные не меняли, достаточно просто повторно произвести хеширование и сравнить результат. Это один из подходов, который лежит в основе блокчейна.

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

В таком случае, злоумышленник может подделать данные. Ему придется изменить нужные строки, просчитать для них хеш-сумму и заменить на нее старую. Подмену не заметишь.

Чтобы усложнить задачу мошеннику, можно связать хеши разных строк между собой. Хеш для каждой новой строчки в учетной книге стоит рассчитывать на основе текущей записи и хеша предыдущей. Если кто-то решит отредактировать одну строку, изменятся все последующие. Это значит, что для внесения изменений придется пересчитать все хеши заново.

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

как устроен блокчейн

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

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

Но только этим безопасность блокчейна не обеспечивается. В распределенном реестре много участников. Нет причины, почему миллионы незнакомых людей (компьютеров) должны доверять друг другу. Потому копию блокчейн хранят все узлы сети.

Чтобы добавить новую транзакцию в блокчейн, участник должен сообщить об этом всем узлам. Таким способом обеспечивается работа платформы. Чтобы разобраться в задаче узлов, придется изучить структуру blockchain.

Блоки

Блокчейн — не просто список транзакций. Это цепочка блоков, где хранятся сведения о всех сделках сети. В отличие от примера с учетной книгой, расчеты хеша проводятся не только для одной записи, а и для целой страницы — блока.

Например, сеть Биткоин поддерживает блоки с максимальным размером 1 МБ. Хеш нового блока состоит из суммы хешей транзакций за последние 10 минут, хеша предыдущего block и случайного числа.

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

блоки в блокчейн

Публичный и приватный ключи

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

Приватный ключ нельзя никому сообщать и следует бережно хранить. Если такой ключ потеряется, то восстановить его не получится. Владелец потеряет биткоины или другую криптовалюту навсегда. У блокчейн нет централизованной организации, в которую можно обратиться для восстановления контроля над счетом.

Когда пользователь проводит транзакцию, она не сразу записывается в блок. Сначала такая сделка попадает в специальный пул.

Узлы сами выбирают, какая транзакция будет следующей подтверждена и включена в блок. На это влияет заложенное в сделку вознаграждение — комиссия майнера. Создание блока происходит до тех пор, пока не наберется нужное количество транзакций. Затем узел включает его в blockchain.

Майнинг

Перед тем как добавить транзакции в блок, узлы проверяют их правомерность. Их интересует: создал ли ее владелец приватного ключа, а также наличие достаточно количества криптовалют на счету. Чтобы доказать свою платежеспособность, пользователю приходится добавлять в транзакцию ссылки на сделки, по которым он получил требуемую сумму.

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

Зачем они это делают? Система Биткоина гарантирует первому узлу, который найдет решение, награду — новые монеты. По мере майнинга, бонус постепенно уменьшается. При старте сети 9 лет назад решение задачи и добавление блока приносило 50 BTC. Но каждые 210 000 блоков вознаграждение делится на два. В 2018 году она составляет 12,5 BTC. Так происходит из-за того, что количество биткоинов ограничено. Их добудут не больше 21 млн.

Чтобы получить бонус, майнеры подбирают случайные числа — выполняют работу. Потому такой механизм “права на добавление транзакции и награду” называет “доказательство работы” — Proof of Work. Подробнее об устройстве майнинга, его технической стороне и функциях мы писали ранее.

Майнинг порождает конкуренцию — все зависит от скорости решения задачи, а значит от того, как быстро процессор сможет подставлять случайные числа. Чем мощнее чип — тем быстрее вычисления и больше шанс на вознаграждение. Это привело к неконтролируемому увеличению вычислительной мощности сети Биткоин.

как устроен майнинг
Специализированный ASIC-майнер для добычи биткоинов

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

Но Proof of Work не единственный метод нахождения консенсуса в сети. Вместо того, чтобы вкладывать “работу”, можно получить право на добавление блока, вложив “долю”. Подход Proof of Stake — доказательство доли — построен так, что шанс сформировать блок зависит от принадлежащей майнеру доли от общего количества монет. В отличие от Биткоина, их выпускают заранее. Подробнее о Proof of Stake и других подходах мы писали в отдельном материале.

Смарт-контракты

Технологию блокчейн также ценят за смарт-контракты. Если в случае Биткоин в блокчейн записываются транзакции (“Вася отправил Пете Х монет”), то Ethereum позволяет вносить в распределенную базу целую программу — смарт-контракт. Они работают по принципу: “Если произошло Х, сделай У”. Такой алгоритм после добавления в блокчейн нельзя изменить, при этом его код известен каждому.

Таким образом, смарт-контракт может заменить любого посредника из мира людей. К примеру, для продажи квартиры не нужно идти к нотариусу. Если покупатель переведет оговоренную сумму на счет, указанные в контракте, алгоритм внесет изменение в реестр прав собственности.

Смарт-контракты используют и для проведения ICO. Этим сокращением обозначают initial coin offering — первичное размещение монет. ICO — способ привлечения денег в проект с помощью выпуска и продажи токенов стартапа.

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

В процессе ICO человек, желающий купить токены проекта, отправляет на указанный адрес кошелька нужное количество криптовалюты. За счет смарт-контракта отправленные средства конвертируются в соответствующее количество ICO токенов и поступают инвестору.

безопасность блокчейн

Безопасность блокчейна

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

Но все это справедливо только тогда, когда в сети есть консенсус. Блокчейн управляется большинством — пользователями, в руках которых находится 51% всех вычислительных мощностей. Если такая группа договорится, она сможет и отменять транзакции, и тратить монеты дважды. За историю Биткоина такая концентрация власти была близка несколько раз. Но ни разу не произошла. Этому есть прагматичное объяснение — биткоин ценен децентрализацией и безопасностью. Как только кто-то их монополизирует — монета обесценится.

Выводы

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

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

Вам также могут понравиться