Основы блокчейна: вводный курс для начинающих в 25 небольших главах
Шрифт:
• Наличие только одного реестра связано с риском, так как реестр может быть испорчен, уничтожен или подделан. В этом случае реестр перестает быть надежным средством определения права владения.
• Вместо использования единственного централизованного реестра можно воспользоваться группой независимых реестров для документирования прав владения и выполнения запросов, касающихся права владения, в такой версии отображения реального мира, с которой согласно большинство равноправных действующих партнеров.
• Возможно создание полностью распределенной пиринговой системы реестров с использованием структуры данных блокчейна. Каждая структура данных блокчейна представляет один реестр и поддерживается одним узлом системы. Алгоритм блокчейна отвечает за объединение отдельных
• Целостность полностью распределенной пиринговой системы реестров основывается на ее способности формировать истинные утверждения о праве владения и обеспечить возможность передачи права владения только законными владельцами.
Глава 7
Двойное расходование
Использование уязвимости распределенных пиринговых систем
В предыдущей главе вы узнали о взаимосвязи между полностью распределенными пиринговыми системами и наиболее частым вариантом практического применения технологии блокчейна в качестве средства управления правами владения. Вы также узнали, что целостность полностью распределенной пиринговой системы реестров основывается на ее способности формировать истинные утверждения о праве владения и обеспечить возможность передачи права владения только законными владельцами. Но что означает это утверждение в реальной жизни? Что происходит при нарушении целостности? Эти вопросы рассматриваются в данной главе во всех подробностях. В частности, здесь представлен один из самых важных примеров нарушения целостности в распределенных пиринговых системах: проблема двойного расходования.
Подделка денежных знаков – серьезное преступление в любой стране, поскольку это деяние подрывает экономику страны, создавая средства платежа, в действительности не обеспеченные финансовыми ресурсами. Поэтому большинство банковских билетов (купюр) снабжено средствами защиты, которые делают подделку невозможной или, по крайней мере, слишком дорогостоящей. Средства защиты, такие как уникальные серийные номера, водяные знаки, флуоресцентные волокна, вполне подходят для банковских билетов и другой материальной продукции. А если деньги и товары становятся цифровыми и управляются распределенными пиринговыми системами реестров? В этой главе рассматривается особый случай уязвимости распределенных пиринговых систем, используемых для управления правом владения, и этот случай равнозначен подделке денежных купюр. Кроме того, эта уязвимость представляет собой типичный пример нарушения целостности системы.
Рассмотрим пиринговую систему для управления правом владения недвижимостью. В такой системе реестры, отслеживающие информацию о правах владения, обслуживаются отдельными компьютерами, включенными в эту сеть, а не какой-либо централизованной базой данных. Таким образом, партнеры-участники осуществляют поддержку собственной копии реестра. Сразу после передачи права владения некоторым домом от одного человека другому все копии реестра должны быть обновлены для соответствия самым последним изменениям в реальной жизни. Но передача информации между партнерами и процедура обновления отдельных реестров требует времени. До тех пор, пока все участники системы не получат новую информацию и не обновят свою копию реестра, система не является согласованной. Некоторые партнеры уже знают о последней передаче права владения, другие еще не получили эту информацию. Тот факт, что не все реестры содержат свежую информацию, создает возможность некорректного использования этих реестров лицом, которое уже обладает такой информацией.
Представим следующую ситуацию. Лицо А продает дом лицу Б. Передача права владения от А к Б документируется в одном из реестров в пиринговой системе. Этот реестр должен проинформировать других партнеров о передаче права владения, партнеры, в свою очередь, должны передать
Как и термин блокчейн, термин двойное расходование (double spending) является неоднозначным, поскольку используется для обозначения следующих концепций:
• проблема, связанная с копированием цифровой продукции;
• проблема, которая может возникать в распределенных пиринговых системах реестров;
• пример нарушения целостности в полностью распределенных пиринговых системах.
Двойное расходование как проблема копирования цифровой продукции
В контексте копирования цифровой продукции проблема двойного расходования обозначает тот факт, что данные могут копироваться с некоторого компьютера без каких-либо заметных ограничений. Это создает проблемы использования цифровых денег или любых других данных, считающихся принадлежащими только одному владельцу в текущий момент. Копирование создает возможность размножения данных, представляющих элементы цифровых денег, и использования их более одного раза в нескольких платежных операциях. Это цифровая аналогия размножения денежных купюр на копировальной машине. Если не принимать во внимание чисто техническую возможность, то копирование цифровых денег нарушает основной принцип денежной системы: одни и те же деньги (или их элементы) не могут принадлежать одновременно различным людям. Возможность многократно копировать и тратить одни и те же цифровые деньги фактически делает такие деньги бесполезными, таким образом, возникает проблема двойного расходования.
Двойное расходование как проблема распределенной пиринговой системы реестров
При использовании для описания уязвимости распределенной пиринговой системы реестров проблема двойного расходования обозначает тот факт, что передача информации всем компонентам системы требует времени, то есть не все партнеры получают информацию о правах владения в одно и то же время. Поскольку не все партнеры обладают актуальной информацией, появляется возможность их некорректного использования неким лицом, уже обладающим самой свежей информацией. В результате это лицо может многократно передавать права владения, создавая проблему двойного расходования.
Двойное расходование как пример нарушения целостности в полностью распределенных пиринговых системах
Практическое применение распределенных пиринговых систем не ограничивается управлением права владения. Но проблема постепенной передачи информации между партнерами и неодновременное обновление данных, обслуживаемых участниками такой системы, остается неизменной, вне зависимости от конкретной прикладной области. Таким образом, на более абстрактном уровне проблему двойного расходования можно рассматривать как проблему обеспечения логической согласованности данных в распределенных пиринговых системах. Поскольку согласованность данных является одним из аспектов целостности системы, можно сказать, что проблема двойного расходования представляет собой частный пример нарушения целостности системы.