Двойные расходы
Эта статья нуждается в дополнительных цитатах для проверки . ( декабрь 2022 г. ) |
Двойные траты — это несанкционированное производство и трата денег, как цифровых, так и обычных. Это представляет собой проблему денежного дизайна: хорошие деньги проверяемо дефицитны, и там, где единица стоимости может быть потрачена более одного раза, денежная собственность дефицита подвергается сомнению. Как и в случае с фальшивыми деньгами , такие двойные траты приводят к инфляции , создавая новое количество скопированной валюты, которого ранее не существовало. Как и все более богатые ресурсы, это обесценивает валюту по сравнению с другими денежными единицами или товарами и снижает доверие пользователей, а также обращение и сохранение валюты.
Фундаментальными криптографическими методами предотвращения двойных расходов при сохранении анонимности в транзакции являются введение полномочий (и, следовательно, централизация) для слепых подписей и, особенно в автономных системах, разделение секретов . [1]
Централизованные цифровые валюты
[ редактировать ]Предотвращение двойных расходов обычно реализуется с помощью онлайн- централизованной доверенной третьей стороны , которая может проверить, был ли потрачен токен. [1] Обычно это представляет собой единую точку отказа как с точки зрения доступности, так и с точки зрения доверия.
Децентрализованные цифровые валюты
[ редактировать ]В децентрализованной системе проблему двойных расходов решить значительно сложнее. Чтобы избежать необходимости в доверенной третьей стороне, многие серверы должны хранить идентичные и актуальные копии общедоступного реестра транзакций , но поскольку транзакции (запросы на трату денег) транслируются, они будут поступать на каждый сервер в несколько разное время. Если две транзакции попытаются потратить один и тот же токен, каждый сервер будет считать первую транзакцию, которую он увидит, действительной, а другую — недействительной. Если серверы расходятся во мнениях, невозможно определить истинный баланс, поскольку наблюдения каждого сервера считаются одинаково достоверными.
Большинство децентрализованных систем решают эту проблему с помощью алгоритма консенсуса , позволяющего снова синхронизировать серверы. Двумя известными типами механизмов консенсуса являются доказательство работы и доказательство доли .
К 2007 году был предложен ряд распределенных систем для предотвращения двойных расходов. [2] [3]
Криптовалюта Биткойн связанного реализовала решение в начале 2009 года. В ее криптографическом протоколе использовался механизм консенсуса доказательства работы, при котором транзакции группируются в блоки и объединяются в цепочку с использованием списка хеш-указателей ( блокчейн ). Любой сервер может создать блок, решив сложную в вычислительном отношении головоломку (в частности, обнаружив частичную коллизию хешей ), называемую майнингом . Блок фиксирует всю историю транзакций биткойнов, а также новый набор входящих транзакций. Майнер получает вознаграждение в биткойнах за решение этой задачи.
Однако проблема двойных расходов сохраняется, если два блока (с конфликтующими транзакциями) добываются примерно в одно и то же время. Когда серверы неизбежно расходятся во мнениях относительно порядка двух блоков, каждый из них временно сохраняет оба блока. По мере поступления новых блоков они должны фиксироваться в той или иной истории, и в конечном итоге одна цепочка будет продолжать работать, а другая(ие) — нет. Поскольку самая длинная (более технически «самая тяжелая») цепочка считается действительным набором данных, майнеры заинтересованы в создании блоков только в самой длинной цепочке, о которой они знают, чтобы она стала частью этого набора данных (и для их вознаграждения за это). быть действительным).
Таким образом, транзакции в этой системе никогда не являются технически «окончательными», поскольку конфликтующая цепочка блоков всегда может перерасти текущую каноническую цепочку. Однако, поскольку блоки создаются поверх транзакции, она становится все более дорогостоящей и, следовательно, маловероятно, что другая цепочка сможет ее обогнать.
51% атака
[ редактировать ]Из-за природы децентрализованного блокчейна и отсутствия центрального органа для этого правильная последовательность транзакций определяется только доминирующим консенсусом. Это приводит к возможности того, что один участник получит контроль над большинством субъектов, принявших решение об указанном консенсусе, и навязывает свою собственную версию событий, включая альтернативные и двойные транзакции. Из-за задержек распространения информации атаки 51% временно возможны и для локализованной подгруппы субъектов.
Общая вычислительная мощность децентрализованной системы доказательства работы представляет собой сумму вычислительной мощности узлов, которая может существенно различаться в зависимости от используемого оборудования. Увеличение вычислительной мощности увеличивает шансы получить вознаграждение за майнинг за каждый новый добытый блок, что создает стимул для накопления кластеров узлов майнинга или пулов майнинга . Любой пул, мощность хэширования которого составляет 51%, может эффективно отменять сетевые транзакции, что приводит к двойным расходам.
Один из форков Биткойна, Bitcoin Gold , подвергся такой атаке в 2018 году, а затем снова в 2020 году. [4]
Восприимчивость конкретной криптовалюты к атаке зависит от существующей хэш-мощности сети, поскольку злоумышленнику необходимо ее преодолеть. Чтобы атака была экономически жизнеспособной, рыночная капитализация валюты должна быть достаточно большой, чтобы оправдать затраты на аренду вычислительных мощностей. [5] [6]
В 2014 году майнинговый пул GHash.io получил 51% мощности хеширования Биткойна , что вызвало серьезные споры по поводу безопасности сети. Пул добровольно ограничил свою хеш-мощность на уровне 39,99% и попросил другие пулы последовать его примеру, чтобы восстановить доверие к сети. [7]
Ссылки
[ редактировать ]- ^ Перейти обратно: а б Марк Райан. «Цифровые деньги» . Школа компьютерных наук Бирмингемского университета . Проверено 27 мая 2017 г.
- ^ Яап-Хенк Хопман (2008). «Предотвращение распределенных двойных расходов». arXiv : 0802.0832v1 [ cs.CR ].
- ^ Осипков И.; Вассерман, EY; Хоппер, Н.; Ким, Ю. (2007). «Борьба с двойными расходами с использованием совместных P2P-систем». 27-я Международная конференция по распределенным вычислительным системам (ICDCS '07) . п. 41. CiteSeerX 10.1.1.120.52 . дои : 10.1109/ICDCS.2007.91 . S2CID 8097408 .
- ^ Канеллис, Дэвид (27 января 2020 г.). «Bitcoin Gold пострадал от атак 51%, 72 тысячи долларов в криптовалюте были потрачены дважды» . Хард-форк | Следующая сеть . Проверено 29 февраля 2020 г.
- ^ «Стоимость атаки 51% для разных криптовалют | Crypto51» . www.crypto51.app . Проверено 29 февраля 2020 г.
- ^ Варшни, Нир (24 мая 2018 г.). «Почему Proof-of-work не подходит для небольших криптовалют» . Хард-форк | Следующая сеть . Проверено 25 мая 2018 г.
- ^ «Популярный пул для майнинга биткойнов обещает ограничить свою вычислительную мощность, чтобы предотвратить страшное фиаско «51%»» . ТехКранч . 16 июля 2014 года . Проверено 29 февраля 2020 г.