Bit Gold — предложение Ника Сабо, объединяющее создание цифровых объектов с помощью затратных вычислений, временные метки и совместно поддерживаемый реестр владельцев. По позднейшим воспоминаниям Сабо, идея возникла в 1998 году; известное публичное описание относится к 2005 году. Это не была запущенная валюта или биткоин, обеспеченный физическим золотом.
Обычный файл можно отправить другому человеку и сохранить копию. Для фотографии это не проблема. Для денег это означало бы возможность снова и снова тратить одну и ту же сумму. Поэтому Ник Сабо не искал файл, который каким-то чудом нельзя скопировать. Он хотел связать затратное создание цифрового объекта с публично проверяемой записью о его владельце. Название Bit Gold отсылает к золоту из-за сложности его получения. Оно не означает запас металла в сейфе, под который кто-то выпускает цифровые расписки. [1] [2] [7]
Отправной точкой должно было стать публичное задание: последовательность битов, то есть нулей и единиц, на основе которой компьютер ищет результат, отвечающий заданным условиям. Поиск требует множества вычислений, а проверить готовое решение другим участникам проще. Этот принцип называется Proof of Work — доказательство выполненной вычислительной работы. Сабо хотел, чтобы вычислительную сложность создания каждой новой единицы Bit Gold можно было проверить. Само по себе это ещё не создаёт деньги. Нужно определить, когда появился результат, кому он принадлежит и как передать право собственности. [1] [2]
Последняя созданная единица должна была задавать исходные данные для следующих вычислений. Результаты образовывали бы связанную историю, а не набор независимых задач. Представьте процесс, в котором следующий шаг зависит от завершённого предыдущего. Эта связь важна для понимания предложения, но её нельзя путать с готовой цепочкой блоков Bitcoin, то есть связанных между собой групп транзакций. Простое связывание результатов ещё не объясняет, как вся сеть придёт к согласию при конкурирующих записях или нечестных участниках. [1] [2] [6]
Ещё одной частью были временные метки — подтверждение, что определённые данные существовали не позднее указанного момента. Предложение предусматривало несколько независимых служб времени, чтобы пользователю не приходилось полагаться на одного хранителя часов и записей. Метка сопровождала бы доказательство работы при публикации. Почему время важно? На будущих устройствах те же вычисления могут стать намного дешевле. Поэтому для оценки редкости результата нужно знать и время его получения. Сама метка не определяет рыночную цену и не подтверждает всё, что кто-либо утверждает о результате. [1] [4]
Задание и результат с временной меткой должны были попадать в реестр собственности. Представьте публичный список, в котором каждой единице соответствует открытый ключ. С его помощью другие могут проверить подпись распоряжения. Соответствующий приватный ключ, которым создают подпись, владелец держит в секрете. Список поддерживал бы не один сервер, а несколько взаимодействующих серверов. Сабо ссылался на методы, устойчивые к византийским отказам: ситуациям, когда компьютеры не просто выходят из строя, но намеренно отправляют ложные сообщения. Такая устойчивость действует при определённых условиях. Распределение базы между несколькими машинами само по себе не обеспечивает безопасность, если злоумышленник контролирует достаточно большую их часть. [1] [8]
Если бы Алиса передавала свою единицу Петру, решающей была бы подписанная запись о передаче в реестре. Программа вычисляет цифровую подпись из распоряжения и приватного ключа. По ней другие могут проверить, что передачу подписал владелец этого ключа. Пётр проверял бы последовательность предыдущих передач и то, что последнее право действительно переходит к нему. Повторять исходные затратные вычисления при каждом платеже не требовалось бы. При этом публичные данные мог копировать кто угодно. Копия не делает человека владельцем, как фотография документа сама не меняет имя в реестре. Главное — согласие о том, какая передача действительна. [1] [8]
От обычной валюты ожидают взаимозаменяемости одинаковых единиц: одну чешскую крону принимают так же, как другую. У Bit Gold здесь возникала сложность. Вычисления в разные периоды и на разных устройствах могли обходиться неодинаково. Кто-то мог разработать гораздо более мощное оборудование и быстро создать множество новых единиц. Поэтому Сабо предлагал рыночную оценку и объединение единиц разной стоимости в наборы с близкой общей стоимостью. Затем эти наборы делились бы на привычные платёжные единицы. Это сложнее, чем просто посчитать результаты или длину их записи. [3] [9]
Здесь полезно ненадолго отвлечься от техники. Большие затраты труда ещё не означают, что кто-то захочет купить результат или что его цена не будет меняться. Bit Gold должно было сделать предложение и историю создания публично проверяемыми; спрос от этого автоматически не возникал. В тексте Bit gold markets Сабо объяснял, почему, по его мнению, рынок сможет оценивать отдельные единицы и превратить их в пригодную для использования валюту. Это ожидание было частью предложения, а не результатом многолетней работы такой валюты. Редкость, принятие для платежей и стабильность цены — разные вопросы. [3] [9]
20 июля 2010 года Сатоши Накамото написал на форуме, что Bitcoin реализует идеи b-money Вэй Дая и Bitgold Сабо. Это документированное признание предшественников, а не утверждение, что обе разработки уже содержали готовый Bitcoin. В 2011 году Сабо прямо описал слабости своего предложения и отличия от Bitcoin. Он упомянул устойчивость к захвату голосующих участников и изменение сложности вычислений. Bitcoin не полагается на простое голосование по числу компьютеров: выбирая между допустимыми цепочками, он использует накопленную работу. Поэтому похожие компоненты могут образовать разные системы. [5] [6] [7]
Рассматривайте Bit Gold как продуманное предложение, предшествовавшее Bitcoin. Это не была более ранняя работающая версия Bitcoin или современный одноимённый токен. В нём не было лимита Bitcoin в 21 миллион или его готового механизма создания и проверки блоков. Но неверно говорить и о том, что все родственные идеи остались на бумаге: Хэл Финни действительно реализовал свою отличающуюся систему RPOW (Reusable Proofs of Work) для передачи доказательств вычислительной работы. Начинающему читателю Bit Gold прежде всего помогает различить три задачи: как создать цифровой объект, как доказать право собственности и как разным людям согласовать смену владельца. Bitcoin пришлось соединить эти части в работающую сеть. [1] [6] [7]
Для полной картины прочитайте эту статью вместе с Nick Szabo, Proof of Work, b-money, Hashcash, Reusable Proofs of Work, Bitcoin. На эту статью также ссылаются b-money, Reusable Proofs of Work, Nick Szabo.