Как работает и как устроен биткойн

Если вы уже знаете, что такое Биткойн, самое время узнать, как он работает. Хотя на первый взгляд все может выглядеть очень похоже на конечного пользователя, централизованные системы значительно отличаются от децентрализованных. Однако, прежде чем мы ответим на вопрос «как работает?», нам нужно ответить на несколько вопросов:

  • что наиболее важно в денежной системе;
  • денежное обращение;
  • развитие вышеупомянутых двух пунктов.

I поколение – это монеты, банкноты

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

II поколение – это электронный банкинг

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

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

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

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

Кто смотрит в ваш в кошелек?

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

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

III поколение – Биткойн (и другие криптовалюты)

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

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

Блокчейн – книга транзакций биткойнов

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

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

Возникает вопрос: чем он отличается от электронного банкинга, который, в конце концов, работает аналогичным образом?

Сверху похоже – радикально отличается снизу

Мы не смогли бы ответить на вопрос «как работает биткойн?», не углубляясь в его внутренности. Начнем, однако, с краткого изложения особенностей централизованных систем, используемых в традиционной банковской деятельности. Здесь банки ведут бухгалтерские книги. Поэтому они могут перезаписывать их, переписывать, изменять и манипулировать содержащимися в них записями. Как аутсайдер, мы никогда не можем гарантировать, являются ли текущие данные историческими или правильные ли они после модификации. Для биткойнов текущие копии бухгалтерской книги доступны всем пользователям сети. Эта сеть состоит из сотен тысяч компьютеров, на которых установлен традиционный биткойн-клиент. Любой, кто является системным пользователем и имеет собственный биткойн-сетевой кошелек, хранит такую копию книги дома. Несанкционированные или санкционированные изменения в этом типе бухгалтерской книги требуют одновременного внесения всех остальных копий. Каждая сделанная транзакция будет записана в книге учета раз и навсегда, без какой-либо возможности изменения. Единственный вариант изменения – это добавить новые транзакции в децентрализованную расчетную книгу, то есть в систему блокчейнов (совершить перевод с кошелька на кошелек).

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

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

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

Владение нашими биткойнами

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

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

Остается открытым вопрос, как найти получателей переводов в сети биткойнов? Биткойн использует хеш-функцию RIPEMD-160 в открытой части ключа ECDSA, которая служит уникальным адресом, на который отправляются биткойны. Адрес хранится в системе кодирования Base58, это публичный адрес, поэтому он может быть распределен среди пользователей сети. Важно отметить, что любой может генерировать любое количество адресов, на которые он будет принимать биткойны.

Биткойн-сеть и блоки транзакций

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

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

Сама цепочка блоков создается следующим образом: блок «n» указывает на блок «n-1» путем включения функции хеширования содержимого блока «n-1». Блок содержит хеш-функцию блока «n-2», поэтому сокращение последнего блока в цепочке зависит от сокращения каждого предыдущего блока в цепочке. Вы можете описать аббревиатуру для блока 5 как функцию:

hash (block4 + hash (block3 + hash (block2 + hash …))).

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

Майнинг — обслуживание сетей

Кто и как сохраняет транзакции в блоке и строит из них цепочку блоков? Ответ: шахтеры. Мы говорим здесь не о традиционной горнодобывающей промышленности, а о цифровом майнинге с использованием устройств с высокой вычислительной мощностью. Чтобы сеть была безопасной и работала должным образом, ей необходимы вычислительные мощности для решения сложных математических задач. Работа должна быть выполнена для сети, что в дополнение будет легко подтвердить – доказательство работы.

Любой может стать цифровым майнером, просто вооружившись необходимым оборудованием. Именно благодаря майнерам транзакции могут проводиться в сети. За свою работу сеть награждает цифровых майнеров новыми биткойнами (по состоянию на день написания статьи это 12,5 биткойнов на блок) – так создаются новые биткойны. Как вы уже знаете из предыдущей статьи, биткойны могут создавать ограниченную сумму – до 21 миллиона.

Блокчейн – цепочка блоков

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

Короче говоря, он состоит из:

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

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

Сеть биткойнов представляет собой саморегулирующуюся сеть и поддерживает заранее определенные параметры. Если количество майнеров или майнинг-оборудования увеличится, биткойны не будут добываться быстрее. Для этого и нужен параметр, задающий сложность криптографической задачи, выполняемой майнерами. Сеть корректирует сложность так, чтобы блок извлекался каждые 10 минут, независимо от мощности сети. Параметр сложности меняется каждые 2016 блоков. В настоящее время приз за роспуск блоков составляет 12,5 BTC и падает наполовину каждые 210 000 блоков, то есть каждые 4 года.

Подведем итоги

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

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

0 Комментариев

Оставить комментарий

Ваш адрес email не будет опубликован.