Покупка произведений искусства через блокчейн биткойна: как это работает Чтобы оплатить часть прав на данный предмет искусства, Дон открыл свое приложение для кошелька биткойна. Он воспользовался им, чтобы создать послание, указывающее на то количество биткойнов, которые необходимы для покупки этого процента прав. Затем он ввел публичный ключ Artlery как получатель того биткойна и использовал свой личный ключ, чтобы «подписать» или, другими словами, подтвердить свое послание. Дон дважды проверил все поля, потому что, в отличие от традиционных систем оплаты, тут не было возможности реверсировать транзакцию. И затем он передал послание не в свой канадский банк, а всей сети компьютеров, которые осуществляют работу блокчейна биткойна.
Некоторые люди называют эти компьютеры узлами (англ. nodes), и некоторые из них отдают свою мощность, чтобы решить математическую задачу, связанную с созданием блока. Как мы уже объясняли, сообщество биткойна называет их майнерами (англ. miners), а их работу майнингом (англ. mining), так же как и gold mining (рус. добыча золота). Это довольно неловкая аналогия, потому что так создается образ экспертов, которые обладают определенным конкурентным преимуществом по сравнению с новичками. Однако это не так. По сути, каждый майнер выполняет роль сервисной программы, а ПО осуществляет все вычисления. Серьезные майнеры умеют оптимизировать производительности своих компьютеров, минимизировать потребление энергии и выравнивать высокоскоростную связность сети. За пределами этих задач не требуется каких-то особых умений от человека за компьютером, даже наоборот, вмешательство человека не приветствуется.
Не все узлы занимаются майнингом. По сути, большинство узлов в сети биткойна просто занимаются верификацией полученных данных, прежде чем передать эти данные пиринговым соединениям. Сеть верифицировала две единицы данных о том, что Дон проконтролировал количество биткойнов и авторизовал транзакцию, и признала послание Дона транзакцией. Майнеры затем наперегонки спешат конвертировать неорганизованны е и незаписанные транзакции в транзакции, которые организованы и записаны в блоке данных. Каждый блок должен включать в себя хеш предыдущего блока транзакций, а также случайное число, известное как нонс (англ. nonce). Чтобы выиграть гонку, компьютер должен воспроизвести хеш блока; у этого хеша должно быть определенное, но случайное количество нулей вначале. Невозможно предсказать, какой нонс произведет хеш с правильным числом нулей, поэтому компьютеры должны попытаться попробовать различные нонсы до тех пор, пока они не найдут верный. И действительно, это все равно что выиграть лотерею, потому что для этого не нужно каких-то особых умений. Однако человек может увеличить свой шанс на победу в лотереи, купив самый продвинутый компьютерный процессор, который специализируется на решение математических задач биткойна, или купив больше лотерейных билетов, то есть использовать различные высокомощные узлы или же, как зачастую делают люди, объединить свой узел с другими узлами — как иногда делают коллеги в офисе — и согласиться разделить выигрыш, если один из узлов победит. Таким образом, победа зависит от везения, мощности процессора и размера пула майнинга.
Уровень хеширования или хешрейт (англ. hash rate) — это показатель общей производительности сети биткойна. Чем выше уровень хеширования целой сети, тем сложнее подобрать верный нонс. Когда майнер находит хеш с верным числом нулей, он делится доказательством выполненной работы (англ. proof of work) с другими майнерами в сети. Это еще один серьезный научный прорыв в распределенной информатике — использование доказательства выполненной работы для достижения консенсуса сети. Он также известен как «Задача византийских генералов» (англ. Byzantine Generals' Problem). Другие майнеры сигнализируют о своем принятии блока, фокусируя свое внимание на создании следующего блока, который должен содержать хеш только что созданного блока. В точности так же, как публичный и личный ключи Дона уникальны, уникален и каждый блок — все это выглядит, как криптографический отпечаток пальца, который верифицирует все транзакции в блоке. Никакие два «отпечатка» блока не будут совпадать. Победивший майнер получает набор новых биткойнов в качестве вознаграждения — программное обеспечение само создает и распределяет новые биткойны, при этом хешированный блок присоединяется к цепочке.
Таким образом, спустя десять минут после того, как Дон передал свое сообщение, он и Artlery получили подтверждение того, что биткойновская транзакция Дона создала то, что называется «неизрасходованным выходом транзакции» (англ. unspent transaction output, UTXO), и это означает, что Artlery может потратить его, сделав то же самое, что только что сделал Дон, — передать сообщение о количеств е, которое надо потратить, и с адресом получателя, а также подтвердить транзакцию с помощью публичного ключа Artlery. Если бы художник и его почитатели знали бы публичные ключи и Дона, и Artlery, то они могли бы увидеть, что сделка между ними совершилась, и также они увидели бы размер транзакции. Вот почему мы называем эту систему публичным реестром (англ. public ledger) — все транзакции транспарентны и осуществляются под «псевдонимами», то есть мы видим адреса участников, но мы не видим имен людей, стоящих за этими адресами. Каждый последующий блок служит еще одним подтверждением совершенной транзакции.
Профиль поклонника нового поколения: новое определение денег