Если у Биткоина был первоначальный набросок, им был проект b-money Вэй Дая

Если у Биткоина был первоначальный набросок, им был проект b-money Вэй Дая

«Для эффективного сотрудничества требуется средство обмена (деньги) и способ обеспечения выполнения контрактов», — объяснил Дай, когда в ноябре 1998 года представил b-money.

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

Это отсутствие личных подробностей компенсируется работой Вэй Дая и распространением его идей. Талантливый криптограф, Дай создал и до сих пор поддерживает Crypto++: библиотеку C++ для криптографических алгоритмов. Дай также по сей день активно участвует в форумах посвященных рациональному мышлению, таких как LessWrong, где он философствует на такие темы, как искусственный интеллект, этика, эпистемология и многое другое. Его идеи принесли ему похвалу известного исследователя ИИ Элиезера Юдковски, и неоднократные приглашения выступить в его Исследовательском институте машинного интеллекта (MIRI; ранее известный как Институт сингулярности).

Интерес Дая к философии и политике не является чем-то новым. Еще в 1990-х годах, когда он был молодым студентом бакалаврата в области компьютерных наук в Вашингтонском университете, его любопытство привело его к трудам Тимоти Мэя, одного из «отцов-основателей» движения шифропанков. Дай был вдохновлен криптоанархией, за которую выступал Мэй; совершенно новая идеология, распространенная среди шифропанков, основанная на убеждении, что криптография и программное обеспечение могут обеспечить и защитить политическую и экономическую свободу лучше, чем любая правительственная система.

«Я очарован криптоанархией Тима Мэя, – писал Дай в 1998 году. – В отличие от сообществ, традиционно ассоциирующихся со словом «анархия», в криптоанархии правительство не временно уничтожается, а навсегда запрещается и навсегда становится ненужным. Это сообщество, в котором угроза насилия бессильна, потому что насилие невозможно, а насилие невозможно, потому что его участников нельзя связать с их настоящими именами или физическим местонахождением».

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

Но наибольшую известность Даю принесла идея, которую он между прочим озвучил в ноябре 1998 года, сразу после окончания университета. «Для эффективного сотрудничества требуется средство обмена (деньги) и способ обеспечения соблюдения контрактов», – пояснил Дай. «Протокол, предложенный в этой статье, позволяет неотслеживаемым псевдоанонимным субъектам более эффективно сотрудничать друг с другом, предоставляя им средство обмена и метод обеспечения выполнения контрактов. [...] Я надеюсь, что это шаг к превращению криптоанархии в практическую и теоретическую возможность».

Он назвал свой проект «b-money».

B-MONEY

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

Проблема с этим решением, с точки зрения Дая и криптоанархистов, заключается в том, что оно в конечном итоге позволяет правительствам контролировать поток денег посредством регулирования, в то время как участники системы обычно должны идентифицировать себя. «Моя мотивация для b-money заключалась в том, чтобы сделать онлайн-экономику чисто добровольной… такой, которую нельзя было бы облагать налогом или регулировать с помощью угрозы силой», – объяснил он позже.

Итак, Дай придумал альтернативное решение. Вернее, два альтернативных решения.

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

В качестве короткого примера предположим, что Алиса и Боб являются пользователями b-money. У них обоих есть открытый ключ: у Алисы есть открытый ключ «А», а у Боба есть открытый ключ «Б», для которых они оба контролируют свои уникальные закрытые ключи. И, как записано в реестрах, которые ведут все пользователи, оба их открытых ключа содержат единицы b-money; скажем, по три единицы каждый.

Если Боб хочет получить две единицы b-money от Алисы (поскольку он продает ей товар), он отправляет ей свой открытый ключ: Б. Предполагая, что Алиса хочет купить продукт, она затем создает транзакцию в форме сообщения: «2 b-money от А до Б». Затем она подписывает это сообщение своим закрытым ключом, соответствующим A. Затем сообщение и криптографическая подпись отправляются всем пользователям b-money.

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

Если это решение звучит знакомо, то так и должно быть: примерно именно так 10 лет спустя Сатоши Накамото разработал Биткоин.

B-MONEY, Версия 2

Однако Дай считал свое первое решение на основе b-money непрактичным, «поскольку оно интенсивно использует синхронный и незащищенный от помех анонимный широковещательный канал», – пояснил он в своем проекте.

Иными словами, первый проект b-money не решил проблему двойных расходов. Алиса могла отправить две единицы b-money как Б Боба, так и В Кэрол одновременно, передав эти транзакции в разные части сети. И Боб, и Кэрол дали Алисе товар взамен… только чтобы позже узнать, что половина сети не признает их новые балансы.

Вот почему Дай придумал второе решение, связанное с b-money, в одном и том же проекте.

В этой версии не все поддерживают версию реестра. Вместо этого система будет состоять из двух типов пользователей: обычных пользователей и «серверов». Только серверы, связанные через широковещательную сеть в стиле Usenet, могли поддерживать реестры b-money. Чтобы убедиться, что транзакция прошла должным образом, обычные пользователи, такие как Боб и Кэрол, должны были проверить ее на случайном подмножестве этих серверов. (В случае конфликта Боб и Кэрол предположительно отклонят транзакцию Алисы и ничего ей не продадут.)

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

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

Если это тоже звучит несколько знакомо, это тоже неудивительно: второе предложение Дая о b-money отдаленно напоминает то, что сегодня можно было бы назвать системой «доказательства владения» или «доказательства доли» (англ. Proof-of-Stake).

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

Монетарная политика

Тем не менее чем проект b-money наиболее резко отличался бы от Биткоина, так это предложенной Даем монетарной политикой.

Монетарная политика Биткоина, конечно, очень проста. Чтобы ввести монеты в обращение, первоначально выпускалось 50 новых биткоинов на блок, и с тех пор это число падает. Оно будет продолжать уменьшаться с течением времени, пока через несколько сотен лет общее количество выпущенных биткоинов не снизится до чуть менее 21 миллиона. Вопрос о том, является ли такая монетарная политика идеальной, был и есть предметом споров, но ясно одно: до сих пор она не привела к стабильной стоимости монеты.

Напротив, стабильная стоимость монеты была однозначно частью видения Дая. Для этого стоимость b-money должна была быть связана со стоимостью (теоретической) корзины товаров. Например, 100 единиц b-money будут стоить одну корзину товаров. Это должно придать b-money стабильную стоимость, по крайней мере, по отношению к этой корзине товаров: на одни и те же 100 единиц b-money можно было бы купить одну и ту же корзину товаров в прошлом, настоящем и будущем.

Чтобы выпустить новые монеты, пользователи должны были определить, сколько будет стоить корзина товаров по отношению к решению вычислительной задачи: «доказательство работы». Если, например, корзина товаров должна стоить 80 долларов в определенный момент времени, она должна сопровождаться доказательством работы, производство которого в среднем будет стоить 80 долларов. Если 10 лет спустя та же самая корзина товаров будет стоить 120 долларов, те же 100 единиц должны быть сопоставлены с доказательством работы, производство которого будет стоить 120 долларов.

Используя этот индикатор, первому человеку, который предоставит действительное доказательство работы, будет зачислено 100 новых b-money всеми пользователями или серверами. Таким образом, ни у кого не было бы особого стимула предъявлять доказательства работы, если только они не собирались использовать b-money, что ограничивало инфляцию ростом «экономики b-money».

В качестве альтернативы в приложении к своему проекту, Дай предположил, что создание денег может быть реализовано через аукцион. Либо все пользователи (первый протокол), либо серверы (второй протокол) должны сначала определить оптимальное увеличение денежной базы. Затем, если бы это идеальное увеличение должно было быть установлено, например, на уровне 500 единиц b-money, аукцион определил бы, кто должен создать эти 500 единиц: любой, кто бы ни хотел и мог предоставить для этого больше доказательств работы.

Биткоин

Проект B-money так и не был реализован. Этого и не могло быть: «b-money еще не был законченной практичной разработкой», – признал Дай в ветке форума LessWrong пару лет назад. Более того, Дай не ожидал, что b-money станет популярным, даже если будет реализован.

«Я думаю, что b-money в лучшем случае будет нишевой валютой/механизмом принудительного исполнения контрактов, обслуживающим тех, кто не хочет или не может использовать валюту, спонсируемую государством», – объяснил он в электронном письме после своего объявления в списке рассылки шифропанков.

Действительно, некоторые проблемы b-money остались нерешенными или, по крайней мере, недостаточно определенными. Возможно, самое главное, его модель консенсуса была не очень надежной, о чем лучше всего свидетельствует предложенное Даем решение для смарт-контрактов. С тех пор также было обнаружено, что системы Proof-of-Stake создают новые проблемы, которые Дай, возможно, не предвидел; например, неясно, как можно объективно установить «неправомерное поведение». И это даже не касается более тонких проблем проекта, таких как отсутствие конфиденциальности из-за возможности отслеживания средств или потенциальной централизации выпуска монет («майнинга»). Действительно, некоторые из этих проблем для Биткоина до сих пор не решены.

Дай, который после проекта b-money перешел работать в TerraSciences и Microsoft и с тех пор рано ушел на пенсию, не стал бы заниматься решением этих проблем.

«Я не стал продолжать работу над разработкой, потому что к тому времени, когда я придал законченный вид b-money, я несколько разочаровался в криптоанархии», – позже объяснил Дай на LessWrong. Он повторил: «Я не предвидел, что подобная система, однажды реализованная, сможет привлечь столько внимания и использоваться не только небольшой группой хардкорных шифропанков».

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

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

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

Он добавил: «Возможно, это частично моя вина, потому что, когда Сатоши написал мне с просьбой прокомментировать черновик его проекта, я так и не ответил ему. В противном случае, возможно, я мог бы отговорить его (или их) от идеи «постоянной денежной массы».

Примечание автора: после завершения этой статьи было указано, что первая версия Bit Gold Ника Сабо восходит к началу 1998 года. Так как она даже больше похожа на изобретение Сатоши Накамото, чем b-money, вероятно, именно Bit Gold будет точнее считать «первоначальным наброском Биткоина».

Питер Тодд: история канадского разработчика Bitcoin Core Питер Тодд: история канадского разработчика Bitcoin Core Питер Тодд стал известен не только в связи с работой над главным клиентом для Биткоина, но и благодаря участию во многих других Биткоин-проектах, таких как Dark Wallet и Coinkite. Владимир Гришенко 23 апреля 2024
МВФ признал ценность Биткоина МВФ признал ценность Биткоина Фонд отметил, что большие объемы BTC-транзакций зафиксированы в тех странах, где граждане сталкиваются с гиперинфляцией. Владимир Гришенко 22 апреля 2024
Жизнь после халвинга: что происходит с комиссиями Жизнь после халвинга: что происходит с комиссиями Запуск протокола Runes сразу после халвинга повлиял на комиссии в сети Биткоина ощутимее, чем ожидалось. Дмитрий Харьков 22 апреля 2024