Итак, подписав транзакцию закрытым ключом, Алиса отправляет ее остальным узлам биткойн-сети, которые затем проверяют, действительно ли у Алисы есть монеты, которые она пытается потратить. Они проверяют платежеспособность Алисы, сверяясь с общедоступным журналом всех биткойн-транзакций – так называемым блокчейном, копию которого может хранить у себя каждый узел сети. Убедившись, что по адресу Алисы действительно хранится нужная сумма, компьютеры-узлы подтверждают транзакцию и добавляют ее в список (“блок”) недавних биткойн-транзакций.
Пожалуй, самой сложной частью системы является алгоритм добавления блоков с транзакциями в блокчейн. Он представляет собой что-то вроде соревнования между биткойн-узлами, которое во многом напоминает решение задачи, придуманной Адамом Беком для Hashcash. Компьютер, победивший в конкурсе, получает право записать блок недавних транзакций в блокчейн. Зачем ему эта сомнительная честь? Дело в том, что победитель конкурса также получает в награду новые биткойны, и это единственный способ эмиссии новых биткойнов в системе. Именно награда в виде новых монет мотивирует пользователей направлять вычислительные ресурсы своих компьютеров на обработку биткойн-транзакций.
При возникновении разногласий по поводу того, какой компьютер победил в конкурсе, приоритет отдается блоку, принятому большинством узлов сети. Например, если большинство узлов считает, что в последнем раунде конкурса победила Алиса, но какие-то узлы-диссиденты отдают победу Бобу, сторонники Алисы будут игнорировать блоки от компьютеров, поддержавших Боба, пока те не присоединятся к большинству. Этот поистине демократичный способ принятия решений хорош тем, что он предотвращает махинации со стороны “плохих” узлов, которые могли бы попытаться записать на свои счета много новых биткойнов. Благодаря реализованной в Биткойне защите злоумышленникам, задумавшим неладное, пришлось бы заручиться поддержкой большинства узлов сети.
Решения об изменении ПО, работающего на биткойн-узлах, также принимаются демократически. Любой пользователь может внести изменение в ПО Биткойна (исходный код которого открыт), но изменения вступят в силу только в том случае, если новая версия ПО будет установлена на большинстве компьютеров в сети. Если один компьютер ни с того ни с сего перейдет на другую версию ПО, другие узлы просто станут игнорировать его.
Давайте подытожим сказанное, кратко описав процесс в пяти шагах.
1. Алиса инициирует перевод биткойнов со своего счета, подписав транзакцию своим закрытым ключом и сообщив о ней остальным пользователям сети.
2. Узлы сети убеждаются в том, что по адресу Алисы достаточно средств, и добавляют транзакцию в список (блок) недавних транзакций.
3. Компьютеры-узлы соревнуются за право добавить блок в блокчейн.
4. Компьютер, победивший в конкурсе, удостаивается права добавить блок в блокчейн и получает в награду новые биткойны.
5. Компьютеры составляют новый список неподтвержденных транзакций, и начинается новый раунд конкурса.
Объединение всех этих процессов дает нам нечто, чего никогда ранее не существовало, – финансовую сеть, способную создавать и перемещать деньги без банков, эмитентов кредитных карт, регуляторов и вообще каких бы то ни было центральных организаций. Система спроектирована так, чтобы никто, кроме владельца закрытого ключа, не мог потратить деньги, связанные с конкретным биткойн-адресом. Более того, в любой момент времени существует один и только один общедоступный неизменяемый журнал со сведениями о суммах, принадлежащих каждому участнику системы. Чтобы пользоваться Биткойном, не нужно верить Сатоши, в отличие от DigiCash или доллара, которые вынуждают их пользователей доверять Дэвиду Чому или Федеральному резерву. ПО узлов Биткойна работает на собственных компьютерах пользователей, а написанный Сатоши код открыт, и кто угодно при наличии соответствующих знаний и навыков может проверить, все ли с ним в порядке. Если кому-то из пользователей не нравится что-то в правилах, реализованных в Биткойне, никто не мешает ему изменить правила и попытаться убедить других пользователей следовать им. Пользователи биткойн-сети в буквальном смысле являются и клиентами, и владельцами монетного двора и банка. Однако на момент публикации предложения Сатоши ничего этого в реальности еще не существовало. Он лишь вынес на обсуждение описание своей революционной схемы.