Цепочки и блоки: из чего состоит блокчейн и как он работает

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com
| Рассуждения | Финансы и криптовалюты

Блокчейн — это «цепочка транзакций». Такое определение есть в Вики, его приводят чаще всего. Но у всех денег есть такая «цепочка»! Просто представьте: монетный двор выпускает купюру в тысячу рублей. Эти деньги привозят в банк. Бизнесмен берет кредит на развитие своего дела, и эта тысяча отправляется сначала в его карман, а потом передается производителю станков. Потом тысячу получит в виде зарплаты один из рабочих и так далее. Разница лишь в том, что историю как бумажных, так и электронных фиатных денег отследить очень трудно. В блокчейне же записываются все транзакции с того самого момента, как криптовалюта попадает на кошелек того, кто ее намайнил. По такой технологии работает не только Биткоин, но все существующие криптовалюты.

Источник: www.freepik.com

Что представляет собой блокчейн

Если коротко — база данных, копия которой есть у каждого. Речь идет о той самой огромной книге приходов-расходов (на английском понятие так и обозначается бухгалтерским термином: ledger, «гроссбух»). Базы данных обычно хранятся на одном или нескольких серверах, но блокчейн — на всех компьютерах или мобильных устройствах, где есть хотя бы одна единица валюты: Биткоина, Эфириума, Ноткоина или других. Работает блокчейн по технологии P2P: от одного пользователя к другому, без какого-либо главного центра.

Главные факты о блокчейне:
  • В цепочке есть данные о предыдущем и следующем блоках — это позволяет не только отслеживать «судьбу» каждого Биткоина, но и считать сумму на кошельках. Ведь фактически монет в виртуальных хранилищах нет! Только информация о приходе-расходе.
  • Изменить информацию в блокчейне нельзя. Данные закодированы методом хэширования — если поменять хотя бы один символ, обрушатся все остальные. Блок просто выпадет и перестанет «считаться».
  • Блокчейн прозрачен. Каждый компьютер сверяется с общим «большим гроссбухом», который, как мы помним, один на всех. Это происходит автоматически.

Блокчейн нельзя переписать или уничтожить. Вместе с тем, нет никаких данных о владельцах биткоин-кошельков: только сама информация об операциях в виде хэша. Допустим, у нас есть операция: «Alice отправляет 5 биткоинов Bob'у». Чтобы закодировать эту информацию в хэш, используем криптографическую хэш-функцию SHA-256. Исходная строка операции:

Alice sends 5 BTC to Bob'у

Применим к этой строке хэш-функцию SHA-256. Результат будет выглядеть так: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Его практически невозможно восстановить до исходной информации.

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

Как работает Блокчейн
Источник: www.freepik.com
Как работает хэш-код

Как уже было сказано, основа безопасности блокчейна — хэширование. Это уникальная цепочка данных из нескольких символов. Сколько именно — зависит от технологии. В основных криптовалютных сетях, таких как Bitcoin и Ethereum, используется SHA-256, который генерирует хэш длиной 256 бит, что эквивалентно 64 символам в шестнадцатеричном формате (16 символов на байт). Каждый хэш уникален, как цепочка ДНК или отпечаток пальца. Поэтому так легко хранить в огромном виртуальном гроссбухе историю каждого Биткоина.

Работает хэширование так. Нам понадобится специальный SHA-256 Hash-калькулятор. Далее:

  • Начнем с фразы «Привет, мир!» как начального блока.
  • Вычислим хэш (SHA-256) этой фразы:
  • Хэш: 4f7f033b03c10e4746eb28e43c1b3f4b2b45c3ce2dc992acc0a4b0d2cdd5b11d
  • Запишем этот хэш в первый блок нашего хэшчейна.
  • Далее возьмем следующую фразу «Как дела?» и вычислим её хэш:
  • Хэш: 3f74e89edafe2d0878b2b3d40ec522f23f2cf6827a9b4e9b31a37a48b4e7477e
  • Запишем этот хэш во второй блок, ссылаясь на хэш первого блока.
  • Продолжим этот процесс для следующих фраз, каждый раз вычисляя хэш на основе предыдущего блока.
Как работает хэш в блоках
Автор: Jorge Stolfi Источник: en.wikipedia.org

Теперь попробуем поменять два слова: «Мир, привет!». Изменился ли смысл? Нет. А вот хэш будет абсолютно другой:

  • Начнем с фразы «Мир, привет!» как начального блока.
  • Вычислим хэш (SHA-256) этой фразы:
  • Хэш: 82ff2e9e37b99c3ea6c1224cc911f2b070b3cde4dd2302686a315bb0a04324b8
  • Запишем этот хэш в первый блок нашего хэшчейна.
  • Далее возьмем следующую фразу «Как поживаешь?» и вычислим её хэш:
  • Хэш: aa3f2ed693a2a13e472ddc4bcb84c8b2a646e828b0b1d70298ecaa93f85c8c9e
  • Запишем этот хэш во второй блок, ссылаясь на хэш первого блока.
  • Продолжим этот процесс для следующих фраз, каждый раз вычисляя хэш на основе предыдущего блока.

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

Схема получения хеша транзакций
Автор: Vla. kas Источник: ru.wikipedia.org

Что такое блоки

Если сравнивать блокчейн с цепочкой ДНК, то один белок в этой структуре — это блок. Это первичная порция данных, из которых потом составляется цепь. Каждая запись блокчейна — это группа блоков, в которых записывается все о Биткоине (или другой криптовалюте). Транзакции связаны между собой хэшами, поэтому в заголовке каждого следующего есть код того, который был прежде. Разумеется, вносить изменения в блоки без оповещения всего гроссбуха нельзя. Если попытаться «обмануть систему», сеть Биткоина сразу же это обнаружит и запретит действие.

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

Дерево хешей блокчейна
Автор: EgorYakovlevMIPT Источник: ru.wikipedia.org
Из чего состоят блоки

Принято считать, что блоки — неделимые частицы. Но это не так. В конце концов, даже атом делится на ядро, электроны, протоны и так далее. У блока тоже есть отделы:

  • Заголовок — в нем записана служебная информация;
  • Payload — история транзакций.

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

Вы решили оплатить услугу VPN Биткоином. Перечисляете деньги поставщику услуги.

В этот момент ломается интернет, пропадает электричество — одним словом, случается сбой.

Дойдут ли деньги до получателя? А в каком виде? Не потеряются ли по дороге? Не волнуйтесь: все дойдет в лучшем виде — система контролирует целостность содержимого блоков, при необходимости исправляет ошибки.

Автор: master1305 Источник: www.freepik.com

Как проходят транзакции

Итак, блокчейн — это большая книга о транзакциях. Происходят они так: «С адреса 1 отправить N биткоинов на адрес 2».

Система использует Входы (Input) — они пополняют биткоин-кошельки и Выходы (Outputs) — соответственно, если деньги уходят на на другие адреса.

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

В результате, транзакция — это:

  • Количество Входов плюс хэш-коды от них;
  • Количество Выходов, их суммы;
  • Временная метка — создается только на период транзакции.

Еще будет комиссия за транзакцию (transaction fee) идет в качестве вознаграждения майнерам, которые добавляют транзакцию в блокчейн. Увы, без комиссий никуда даже в свободном мире криптовалюты.

Основные факты

  • Блокчейн — это база данных, которая представляет собой последовательную непрерывную цепочку блоков.
  • Блок — это «первичная структура» данных блокчейна.
  • Блокчейны распространяются по принципу «от пользователя к пользователю» (peer-to-peer).
  • База блокчейна хранится не на одном сервере, а децентрализовано — то есть, у каждого.
  • Подделать информацию в блоках и блокчейнах нельзя.
  • Можно только дописывать новые транзакции — это процесс обмена, покупки или продажи Биткоинов.

Подписывайтесь на наш новый Telegram, который посвящен только сфере криптовалют. Ссылку на канал можно найти ниже в разделе «Об авторе».

Изображение в превью:
Автор: fullvector
Источник: www.freepik.com
Автор не входит в состав редакции iXBT.com (подробнее »)
Об авторе
Я торгую здесь — BingX (биржа в ТОП-15). Как торговать на бирже через смартфон можно посмотреть на YouTube.

Сейчас на главной

Новости

Публикации

Какая европейская страна с площадью чуть меньше Московской области самая густонаселённая, и какие у неё особенности

Европа — это регион контрастов: от бескрайних равнин и малонаселённых территорий до густонаселённых мегаполисов. Но задумывались ли вы, какая страна в Европе лидирует по плотности...

«Игра в зеркало»: Ученые научились менять «рукость» кристаллов с помощью света

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

Почему домашние кошки и собаки не боятся огня

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

Почему кенгуру считают символом Австралии

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

Тормоз, нейтраль или паркинг? АКПП при кратковременных остановках автомобиля: как избежать ошибок и сохранить коробку передач

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

Как не завалиться на экзамене в ГАИ: билет 28, вопрос 12

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