Анатомия криптовалюты Биткоин

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

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

Анатомия криптовалюты Биткоин
Анатомия Биткойна

Биткойн был создан как peer-to-peer цифровая денежная система, которая не требует посредника для расчета транзакции. Децентрализация и демократия предоставляют всем в мире доступ к единой платежной сети. Биткойн разрушает традиционную финансовую систему так же, как Интернет сделал это с информацией и СМИ. Сатоши разработал систему распределенного реестра, в которой каждый участник сети может просматривать и проверять каждую транзакцию в сети.

Бухгалтерская книга сети биткоин

Один из способов представить себе работу блокчейна Биткойна — расширить аналогию с Монополией, которую мы кратко упомянули в предыдущей статье «Что такое Биткоин?». Мы представили игру «Монополия», в которую играют четыре друга. Назовем игроков в этой игре Алисой, Бобом, Чарли и Дебби.

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

Для простоты мы предположим следующее для игры в Монополию:

  1. Игроки начинают с разных частей доски и имеют по 10 BTC каждый.
  2. Им также будет предоставлен случайный выбор монопольной собственности, за которую они будут платить друг другу арендную плату.
  3. С каждым ходом, транзакции записываются на новую страницу в блокноте, и только один игрок может пройти «Go» в каждом раунде, чтобы получить награду в 50 BTC.

Начало игры в монополию

Допустим, игра началась 1 ноября 2020 года в 8:00 утра. В первом раунде этой игры произошли следующие действия:

  1. Алиса приземлилась на собственность Боба и заплатила ему 1 BTC.
  2. Боб приземлился на территории Чарли и заплатил ему 5 BTC.
  3. Чарли прошел Go и получил 50 BTC. (Примечание: передачу Чарли в Го можно рассматривать как получение награды за блок. Подробнее об этом позже.)
  4. Дебби бросила кости, но не попала ни на чью собственность.

Раунд закончился после того, как все игроки бросили свои кости. Теперь представьте, что все четыре игрока сделали одинаковые записи в своих блокнотах, а затем перепроверили друг друга, чтобы убедиться, что у них у всех одинаковая информация. Транзакция будет выглядеть так, как показано на рисунке ниже, в блокнотах каждого игрока.

Начало игры в монополию
Игра Монополия блокнот

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

Игра в монополию
Игра монополия

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

Игра монополия
Игра в Монополию

Приведенная выше таблица представляет собой представление того, что произошло в раунде 1. Игра «Монополия» может продолжаться, где каждая страница фактически похожа на блок в цепочке блоков и содержит сведения о транзакциях. Таким образом, с записью всех происходящих транзакций баланс каждого игрока может быть получен в любой момент времени.

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

Как генерируются страницы?

В игре «Монополия» единственная вещь, которая не была объяснена, — это вознаграждение за блок в 50 BTC, которое получил Чарли. Действие по переходу на новую страницу аналогично действию под названием МАЙНИНГ и генерации нового блока.

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

Понимание структуры блокчейна

В приведенной выше аналогии с Монополией мы представили, как транзакции записываются в блокчейне. Краткий обзор:

  1. Игра «Монополия» — имитирует экономику, в которой люди взаимодействуют друг с другом.
  2. Блокнот — имитирует блокчейн, который содержит запись каждой транзакции. Дополнительно у каждого участника будет копия блокнота (блокчейна).

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

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

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

Цепочки блокчейна – хэш-функции заголовок

Хэш-функция преобразует входные данные в выходные данные фиксированной длины, состоящие из случайных букв и цифр. Эта хэш-функция вернет тот же результат при точно таком же вводе. Биткойн использует алгоритм хеширования SHA256, который также используется правительством США для защиты определенной конфиденциальной информации.

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

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

  1. 1 * 100 = 100
  2. 10 * 10 = 100
  3. 5 * 20 = 100
  4. … и так далее (невозможно определить правильный ответ)

Что касается самих хэшей, то даже малейшее изменение может привести к совершенно другому результату. Например, хэширование текста «How to Bitcoin» с помощью функции SHA-256 дает следующий результат:

f8943d8870b292b2137e0e68d5dbae7562fa7666f60e5b17e3dadbe62fcd00b1

Если мы изменим букву i в слове Bitcoin на 1, текст «How to B1tcoin» будет выглядеть следующим образом:

01a8f0c498a439685cbf6929f988379f2f53d5ca41ee169002fd00af83d43817

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

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

Другим компонентом блокчейна является блок, состоящий из двух компонентов:

Заголовок блока представляет собой сводку всего блока и содержит:

a. Хэш заголовка предыдущего блока,
b. Хэш всех транзакций текущего блока,
c. Отметка времени — отметка времени, когда блок «добывается» в UNIX.
d. Версия — версия программного обеспечения Биткойн.
e. Nonce — счетчики, используемые майнерами для генерации правильного хэша.
f. Целевая сложность блока – целевая сложность блока.

Обратите внимание, что пункты (c)–(f) подобны «идентификационным» документам каждого блока. Мы рассмотрим их более подробно в следующих разделах.

Тело блока — содержит записи всех транзакций, включенных в блок.

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

В каждом блоке список транзакций косвенно хешируется через Merkle Root и включается в заголовок блока, так что даже 1000 транзакций во всем теле могут быть представлены в виде одной строки хэша. Заголовок блока — это, по сути, «резюме» всего блока плюс ссылка на предыдущий блок.

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

Merkle Root

Merkle Root фактически является хэшем всех хэшей всех транзакций в блоке. В каждом блоке могут быть тысячи транзакций — Merkle Root — это хэш всех этих транзакций.

Это чрезвычайно эффективный метод хранения и проверки данных транзакций. Merkle root позволяет легко проверить, действительно ли транзакция была проверена, без необходимости просматривать весь список транзакций.

Поскольку Merkle Root содержится в заголовке блока, заголовок блока фактически содержит всю информацию, необходимую для:

  1. Суммируйте транзакции всего блока (Merkle Root).
  2. Ссылка на предыдущий блок (содержит хэш заголовка предыдущего блока).

Собираем все вместе

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

Мы рассмотрели, что составляет блокчейн, но некоторые ключевые детали по-прежнему отсутствуют:

  1. Что мешает кому-то создать другую версию всей книги Биткойн, а затем распространить ее как действующую?
  2. Что мешает кому-то печатать больше биткойнов?
  3. Как все участники договариваются о конкретной версии реестра биткойнов в любой момент времени?
  4. Как разрешаются конфликты в случае наличия конфликтующих и разных версий реестра биткойнов?

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

Узнайте как увеличить заработок биткоинов на сайте FreeBitcoin совершенно без вложений. Читайте статью Увеличиваем Заработок.

Узнайте как начать майнить биткоины без вложений и как создать 3 вида дохода с CryptoTab. Намайненные биткоины можно без проблем вывести на свой кошелек. Подробнее читайте в статье Вывод CryptoTab.

Понравилась статья? Поделись с друзьями!