Как функционирует Биткоин: основные моменты и знакомство с терминологией

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

Реальность цифровых денег

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

  • Цифровые монеты, как и бумажные купюры, ничего не стоят.
  • Можно «изготовить» любое количество Биткоинов.
  • Цифровую валюту несложно скопировать или подделать.

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

Особенности добычи

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

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

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

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

Ограниченность запасов

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

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

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

Материальность

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

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

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

Блоки

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

В большинстве случаях использование Биткоин-клиента (кошелек криптовалюты) предполагает скачивание пользователем всей истории транзакций. Так обеспечивается децентрализация системы. Причем информация совершенно открыта и любой желающий может прочесть ее. В Сети даже функционирует специальный ресурс под названием Bitcoin Block Explorer, на страницах которого есть возможность ознакомиться со всеми платежами.

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

В чем смысл создания блоков? Они записывают информацию об операциях. Причем в каждый блок включены транзакции, выполненные системой за период его генерации, который в среднем равняется десяти минутам. В двух словах процесс создания блока выглядит так: участник сети формирует платеж и отправляет его майнерам. Они добавляют его к блоку, над которым работают в этот момент. После создания очередной единицы, она «запечатывается» и дальнейшее присоединение к ней транзакций уже невозможно. Затем он отправляется в сеть, и другие майнеры проверяют содержимое блока на корректность.

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

Из чего состоит блок?

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

  • Hash. Вычисление хэша занимает строго ограниченное время, а его значение состоит из случайного набора символов. Причем хэшируется исключительно заголовок, транзакции не принимают участия в этом процессе. Другими словами, количество операций не имеет влияние на длительность вычислений.
  • Ver — версия схемы. В настоящее время у блоков одинаковая версия — 1.
  • Prev_block, то есть хэш более раннего блока. Это качество надежно защищает систему от подделок, поскольку все ее элементы взаимосвязаны. Поэтому внести коррективы только в один невозможно. Замена одного блока неизменно повлечет необходимость в корректировке остальных.
  • Mrkl_root. Под этим термином подразумевается перечень хэшей транзакций. Хэш всего блока зависит от включенных в него платежей. Только при таком условии его значение нельзя подделать. Причем сначала хэшируются платежи, а уже затем блок в целом. Некоторым кажется абсурдной необходимость проводить вычисления дважды. На самом деле такой подход вполне оправдан, поскольку хэш Биткоин-транзакций пересчитывается исключительно после добавления нового платежа. Тогда как заголовок может меняться до сотни раз в секунду. И чем ближе его величина к константе, тем проще спрогнозировать время, необходимое для определения хэша.
  • Time — это период времени, необходимой для создания блока. Он ограничен 2140 годом, когда будет добыта последняя монета.
  • Bits — целевое значение. Блок является валидным только при условии, что его хэш будет меньше. Величина Bits показывает сложность процесса генерации. Чем она меньше, тем сложнее определиться с соответствующим хэшем. Данная величина пересчитывается каждые 14 дней. Для этого определяется количество созданных блоков за указанный период времени, которое затем сравнивается с эталоном. В идеале, генерация блока занимает не более десяти минут. Если их добыто слишком много, то уровень сложности автоматически возрастает. Благодаря этому свойству система подстраивается к возрастанию количества участников, а также суммарной мощности используемого для майнинга оборудования.
  • Nonce — это число, которое увеличивается после каждого успешного вычисления хэша. Именно так достигается перебор, при котором хэш становится меньше целевого значения. Все хэши отличаются между собой, даже если различие состоит в одном из элементов заголовка. Версия схемы блоков остается неизменной. Тогда как с появлением новой единицы обязательно обновляется хэш. Показатель Mrkl_root изменяется после добавления к блоку новой транзакции Биткоин. Причем обновления происходят каждые несколько секунд. Сложность генерации пересматривается раз в 14 дней. Эти временные промежутки создают слишком длительный период ожидания. Но благодаря nonce, не приходится ждать обновления каждого свойства. Важность этого параметра можно увидеть на конкретном примере. Допустим, ни одно из значений nonce не подходит для генерации блока. Если не изменится ни одно из ключевых свойств, то произойдет обнуления nonce, и система начнет использовать его значение заново, что неминуемо приведет к образованию одинаковых хэшей. Но существующий алгоритм не допускает такой ситуации. Переполнение nonce приводит к автоматической замене одного их свойств платежа. Затем обновляются список хэшей, благодаря чему заголовки не будет повторяться.
  • N_tx — количество операций, включенных в список.
  • Size — величина блока, определяемая в байтах.

Транзакции

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

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

  • Hach (хэш) операции. Все платежи в системе Биткоин дважды проходят через процедуру хэширования — сначала во время вычисления хэша транзакции, а затем блока. Также и блок, и операция неизменно ссылаются на хэш предыдущей единицы. Таким образом, изменение платежа требует корректировки не только его хэша, но и всей системы. Если даже чисто теоретически предположить возможность такого варианта, то измененная цепочка будет отвергнута майнерами.
  • Ver. Имеется в виду версия схемы. С моменты запуска системы, она еще ни разу не менялась и везде равна 1.
  • Vin_sz — число предыдущих операций, средства из которых перечисляются на новые адреса.
  • Vout_sz — количество адресов, на которые перечисляются виртуальные монеты.
  • Lock_time. На данный момент это свойство не применяется. Его активация позволит создавать отложенные переводы, которые будут добавляться не в находящийся в работе блок, а в следующий. При этом значение Lock_time отражает количество операций, которые нужно пропустить перед добавлением транзакции. Кстати, в отложенный платеж можно внести коррективы и по-новому его подписать.
  • Size — объем операции, обозначенный в байтах.
  • In. Речь идет о перечне источников (входов) платежа, которые одновременно являются выходами в предыдущих транзакциях. Каждый выход обладает такими свойствами:

Hash предыдущей операции.

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

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

  • Out — перечень выходов, каждый из которых обладает такими свойствами:

Value. Это значение указывает на количество монет, отправляемых на новый адрес. Средства черпаются из предыдущих переводов, поэтому их сумма не может превышать максимальное количество имеющихся денег. Объясним этот процесс на примере: пользователь намерен перечислить 25 монет на новый адрес. От предыдущих операций у него есть 10 денежных единиц на одном адресе и 20 — на другом. Чтобы остаток в количестве 5 монет не пропал, владелец отправляет их себе самому. В итоге, криптовалюта Bitcoin будет перечислена на два адреса.

  • ScriptPubKey. Данное свойство принимает участие в проверке платежа на валидность.

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

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

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

Выводы

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

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

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

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

Комментарии


Добавить комментарий