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

Откуда берутся биткоины изначально — простыми словами для новичков

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

Процесс добычи или генерации биткоинов называется майнингом (с англ. Mining – добыча полезных ископаемых). Без этого термина сегодня мы никак не обойдемся.

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

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

Как средства перемещаются от одного пользователя к другому?

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

Пользователь заполняет все поля, подтверждает BTC-транзакцию. Далее происходит самое интересное. В сети есть пользователи, которые подтверждают транзакции. То, что пользователь кликнул на кнопку «Отправить», не значит, что средства ушли к получателю. Это и есть особенность криптовалют. Чтобы получатель получил средства, запись об этой транзакции должна быть записана в специальный реестр – блокчейн (от англ. Blockchain – цепочка блоков). Подтверждением транзакций занимаются майнеры.

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

Так как информация о транзакции рассылается всем участникам сети, то прибыль получает только тот майнер, который сгенерировал блок первым. Генерация блока – это все та же сложная математическая задача, для решения которой нужны специальные устройства (майнинг-ферма на GPU, майнинг-ферма на CPU, ASIC и т.д.), а также определенное количество электроэнергии.

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

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

Читайте также:  Приложения для управления криптовалютой

Итак, еще раз повторим основные моменты:

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

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

Механизмы генерации и передачи криптовалют являются достаточно сложными и определяют преимущества криптовалют по сравнению с фиатными деньгами или электронными платежными системами (WebMoney, Яндекс.Деньги и т.п.).

Поделитесь этим материалом в социальных сетях и оставьте свое мнение в комментариях ниже.

Источник

Блок Биткоина — что это такое и как он устроен?

  1. Как формируется блок Bitcoin
  2. Структура блока Биткоина — заголовок
  3. Структура блока Биткоина — транзакции
  4. Пример блока Биткоина
  5. Характеристики блока Биткоин
  6. Премия за блок

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

Как формируется блок Bitcoin?

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

Для попадания блока в blockchain требуется найти параметр хеша заголовка, показатель которого ниже заданного предела. Цель майнера — подобрать верные входные данные путём перебора вариантов. Для решения задачи применяется мощное оборудование — видеокарты, ASIC-чипы.

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

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

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

Структура блока Биткоина — заголовок

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

    Hash — хеш (алгоритм SHA-256). Этот hash носит случайный характер, поэтому время его определения легко предсказать. Стоит отметить, что хешированию подлежит только заголовок, а к операциям в криптовалютной цепи это не относится. Количество транзакций не оказывает значительного воздействия на расчёт хеша.

Читайте также:  По объектам инвестирования инвестиции бывают

Prev_block — свойство хеша прошлого блока в цепи блокчейн. Наличие такой характеристики повышает надёжность сети и усложняет ее подделку. Если внести правки в один блок, придётся переделывать остальные.

Version — версия блочной схемы (сегодня она одна — 1).

Time — uint32_t — свойство, характеризующее период, за который создаётся очередной блок. По замыслу создателя Bitcoin, последний элемент цепи будет добыт в 2106 году.

Mrkl_root — перечень хешей операций. Суть в том, что хеш блока находится в прямой взаимосвязи с операциями в сети. Цель — защита цепи от подделки. Непосредственное вычисление при большом числе операций занимает много времени. Вот почему сначала хешируются операции в цепи, а далее хеши применяются для расчета хешей блока. Необходимость таких действий объясняется следующей разницей — обновление хеша транзакции происходит после добавления к элементу цепи новой операции. Вычисление хеша заголовка происходит чаще — до 3–5 тысяч в секунду.

Bits — главный параметр блока, сокращённый вариант значения хеша. Следующий элемент признаётся сетью и добавляется к цепи в том случае, если его хеш не превышает параметр bits. От этого параметра зависит сложность добычи нового блока. Обновление числа осуществляется с периодичность раз в 14 дней.
Принцип расчёта прост. Сначала вычисляется объём созданных блоков за 14 дней, после чего полученное число сравнивается с эталонным значением. Как отмечалось, на создание блока уходит 10 минут. С ростом блоков сложность возрастает и наоборот. В результате система подстраивается под количество участников и общую мощность подключенного оборудования.

N_tx — число операций в перечне.

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

Структура блока Биткоина — транзакции

Следующий элемент блока — операции, которые осуществляются в криптовалютной сети. Они имеют вид перечня, который формирует блок и становится составляющей цепи. Каждый пункт списка (транзакция) показывает источник и получателя перевода.

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

Список транзакций в блоке реализуется с помощью таких свойств:

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

Читайте также:  Как долго отвечает поддержка бинанс

Vout_sz — число адресов, куда переводятся средства (может колебаться от одного и больше).

Vin_sz — число прошлых операций, в которых средства перечисляются новым получателям (от 1 и больше).

Ver — версия (пока неизменна — 1).

Size — объём операции (единица измерения — Байты). Формат — JSON.

Loch_time — свойство, которое пока не применяется и равно нулю. Суть замысла в том, чтобы выполнять операции с отсрочкой по времени. В результате они подключаются не к идущему в данный момент блоку, а к будущему или через один элемент. В свойстве Loch_time показывается число элементов цепи, которые требуется игнорировать перед включением транзакции. Потенциально опция может применяться в ситуации, когда требуется отмена операции и её переподпись.

In — свойство, в состав которого входит перечень входов транзакции. Здесь применяются выходы прошлых операций, о которых упоминалось ранее (prev_out). Все выходы имеют индивидуальные свойства, а именно — Hash (хеш прошлой операции), n (порядковый номер операции) и scriptSig. Отправитель обязан доказать, что переводит личные средства. Это происходит путём указания общедоступного ключа прошлой операции, а также включения частного ключа (подписи ECDSA). Этого достаточно, чтобы доказать акт применения собственных денег.

  • Out — перечень выходов. Как и ранее, здесь имеются определенные свойства — Value и ScriptPubKey. Первое включает в себя объём средств, направляемых адресату. Информация берётся из прошлых операций, поэтому общее число не может быть больше итоговой суммы уже выполненных транзакций. Свойство Valuo прописывается с наномонетах (это делается, чтобы исключить появление дробей). Второе свойство представляет собой определенный сценарий. Он состоит из хеша общедоступного ключа и оператора языка. Суть — изучение транзакции и подтверждение её валидности.
  • Общий объём средств на входе операции с криптовалютой идентичен с числом монет на выходе. Раз в 4 года происходит снижение вознаграждения вдвое, что стабилизирует число криптовалюты в обороте. Если вдруг появится мошенник, который подставит блок и присвоит 100 монет, то новый не приживётся в цепи из-за отторжения честными участниками сети. Вот почему чем больше пользователей, тем надёжнее система.

    Пример блока Биткоина

    С учетом приведённой выше информации можно привести пример блока Биткоина:

    Previous block (прошлый блок): 000000000000056a7dcf273f627c2a17c55ffe1937a6ef2bc467d9c524312da2.

    Difficulty (сложность): 1 690 895.803053. Bits — 1a09ec04.

    Transactions (транзакции): 185.

    Total BTC (общее число Биткоинов): 4251.63216934.

    Size (размер): 58.914 kilobytes.

    Merkle root (список хешей): 98c5d975bf556f0344770eee7ab31688a2c108223c14sea908ff99b0ab8fe947.

    Характеристики блока Биткоин

    Главные характеристики блока Bitcoin:

      Добыча блока происходит с периодичностью раз в 10 минут.

    Каждый блок способен хранить не более одного мегабайта информации. Этот лимит прописан в коде криптовалюты, но пропускная способность остаётся высокой. После оптимизации планируется увеличить объем данных до 2 Мб. Для примера Bitcoin Cash имеет объём, равный 8 Мб.

    В один блок, имеющий размер 1 мегабайт вмещается до 3–5 тысяч операций, в которых участвуют два кошелька с ограниченным числом выходов и входов. На текущий момент пропускная способность сети — семь операций за 1 секунду. С ростом числа пользователей дефицит этого показателя всё более заметен, что и привело к появлению Bitcoin Cash.

  • Число операций, которые входят в один блок, снижается по нескольким причинам — проведение транзакции с большим числом адресов (актуально для пулов), а также применение компаниями цепи clockchain для отправки информации или содержания реестра.
  • Источник

    Оцените статью