Есть основания надеяться на более децентрализованное будущее, однако дни легкой наживы прошли. Настало время для гораздо более трудной и долгой кропотливой работы над изучением реального мира и возможностей применять в нем созданные нами технологии. В какой-то момент мы окажемся в точке, когда большинство «блокчейнов для X» будут созданы не блокчейн-энтузиастами, которые хотят сделать что-то полезное, натыкаются на X и делают для этого блокчейн, а энтузиастами X, которые смотрят на блокчейн и понимают, что это довольно полезный рабочий инструмент. Этим Х могут быть интернет вещей, финансовая инфраструктура для развивающегося мира, низовые социальные, культурные и экономические институты, улучшение сбора и защиты данных в системе здравоохранения или просто спорные некоммерческие организации и запрещенные законом торговые площадки. Для последних двух переломный момент, вероятно, уже наступил; многие из первых блокчейн-энтузиастов стали таковыми из политических соображений. Но как только это коснется других областей, мы действительно поймем, что блокчейн стал вездесущим и что не за горами величайшие достижения.
Кроме того, мы, вероятно, станем свидетелями исчезновения концепции «блокчейн-сообщества» как квазиполитического движения. Если здесь вообще применим какой-либо ярлык, то лучшим вариантом будет «крипто 2.0». Это справедливо – по той же причине, по которой не существует понятия «сообщества распределенных хеш-таблиц», а под «сообществом баз данных» можно подразумевать просто всех ученых, специализирующихся на этой теме. Блокчейн – это лишь одна из технологий, и прогресс возможен только при ее взаимодействии с другими децентрализованными (и дружественными к децентрализации) технологиями: системами репутации, распределенными хеш-таблицами, «гипермедиа-платформами p2p», распределенными протоколами для обмена сообщениями, рынками прогнозирования, доказательствами с нулевым разглашением и, вероятно, многими другими, которые только предстоит открыть.
Часть 2
Proof of work
30 июля 2015 года Ethereum добыл свой «первичный блок» и вышел в публичное пространство. Новая жизнь началась непросто. Стоимость выпущенных токенов ETH перевалила за сотни миллионов долларов, что привлекло внимание хакеров и потребовало от растущего сообщества Ethereum незамедлительных действий. Оказалось, что безопасность системы не могла держаться на одном лишь коде – не меньшую роль играла традиционная человеческая политика, и Бутерин оказался в ее эпицентре.
Самым серьезным испытанием стал взлом The DAO – экспериментального коллективного венчурного фонда, который собрал ETH на 150 миллионов долларов. («ДАО» – произносится как первая половина слова «даосизм» – это «децентрализованные автономные организации», то есть организации, существующие на основе программного обеспечения блокчейна.) Не успел фонд сделать первые инвестиции, как в июне 2016 года хакер воспользовался ошибкой в коде, чтобы вывести средства.
The DAO владел примерно 15 % всех существующих токенов ETH, и попадание такой доли в руки одного пользователя было бы особенно опасно в случае перехода Ethereum на алгоритм консенсуса proof of stake, как планировал Бутерин. Антихакеры предприняли контрмеры, чтобы приостановить атаку, а в сообществе тем временем бушевали дебаты о том, стоит ли оставлять код таким как есть, со сбоями и прочими недостатками, или лучше действовать радикально. Бутерин отстаивал сценарий с «хардфорком»: предлагал переписать блокчейн Ethereum, чтобы стереть атаку. Бутерин обладал лишь незначительной формальной властью над протоколом: решающим фактором оказалось доверие. В итоге сообщество, сложившееся вокруг Ethereum, прислушалось к его желанию поставить интересы пользователей и свою миссию выше диктата кода.
В текстах Бутерина тех времен между строк проскальзывает беспокойство по поводу его харизматической власти. За несколько месяцев до взлома он сформулировал в блоге Ethereum цель: «выстроить Ethereum как децентрализованный проект, принадлежащий всему человечеству». В статье «Почему исследователям криптоэкономики и Х-рисков стоит чаще прислушиваться друг к другу», написанной во время споров вокруг The DAO, он ссылается на возможную «всемирную демократическую ДАО», своего рода Организацию Объединенных Наций с прямым участием всего человечества. В «Контроле как ответственности» он, кажется, опосредованно сравнивает себя с еще одним тинейджером – основателем глобального проекта Марком Цукербергом и говорит, что в мире блокчейнов, в отличие от корпоративных платформ, лучше избегать централизованной власти, чем обладать ею. В статье «О свободе слова» Бутерин описывает, почему технология не позволит ему получить полномочия цензора, перед которыми так часто не могут устоять Facebook и прочие. В твите 2018 года он утверждает: «На данном этапе развития Ethereum спокойно продолжит свое существование, даже если завтра я внезапно самовозгорюсь». Но сам факт того, что ему пришлось это сказать, наводит на мысль, что ситуация была не такой простой.
В 2017 году произошел колоссальный всплеск цены и популярности Ethereum. Во многом это было связано с использованием платформы для «первичного размещения монет»: стартапы (и гораздо чаще – откровенные мошенники) собирали огромные суммы, продавая токены на основании обещаний в вайтпейперах. Бутерин публично усомнился в точности рыночной оценки Ethereum в твиттере и призвал сообщество «понимать разницу между возможностью выпустить в мир цифровые активы на сотни миллиардов долларов и достичь чего-то общественно значимого». Ethereum должен был изменить мир, но, как показывают эссе в этой части книги, на практике большинство сценариев его использования были связаны с финансовыми и азартными играми.
В статьях первых лет существования Ethereum Бутерин не восторгается взлетом цен и успешными продажами токенов-блокбастеров, а размышляет о проблемах строительства криптоэкономики, задумываясь о том, как экономические стимулы могут обеспечить более эффективные способы взаимодействия между людьми. В этих и более технических постах тех времен его внимание привлекают сложные проблемы идентификации пользователей и управления системами. Но, как видно по «Рождественскому спецвыпуску» конца 2019 года, находилось время и для игр. Когда видишь, с каким азартом Бутерин и другие «эфировцы» играют в шахматы на митапах, может показаться, что весь этот многомиллиардный эксперимент – просто грандиозная головоломка, способ протестировать идеи, созревшие в их головах.
– Н. Ш.
Почему исследователям криптоэкономики и Х-рисков стоит чаще прислушиваться друг к другу
4 июля 2016 года
В последнее время в сообществе, которое традиционно ассоциировало себя с искусственным интеллектом и различными формами футуристических исследований экзистенциальных рисков, наблюдается пока еще слабый, но растущий интерес к блокчейнам и криптоэкономическим системам. Ральф Меркл – изобретатель ныне довольно известной криптотехнологии, на которой работает протокол легкого клиента Ethereum, – выразил заинтересованность в механизмах управления ДАО. Соучредитель Skype Яан Таллинн предложил изучить технологии блокчейна на предмет возможного создания механизмов для решения глобальных проблем координации. Сторонники рынков предсказаний, которые уже давно осознали их потенциал в управлении системами, теперь присматриваются к Augur[31]. Есть ли здесь за что зацепиться? Это всего лишь значит, что компьютерные гики, которых раньше привлекла в сообщество тема А, теперь заинтересовались другой, но тоже близкой темой Б, или существует какая-то реальная взаимосвязь между этими проблемами?
Я бы сказал, что взаимосвязь существует, и вот в чем она проявляется.
Сообщество исследований криптоэкономики и сообщество безопасности искусственного интеллекта / нового киберуправления / экзистенциальных рисков пытаются решить, по сути, одну и ту же проблему: как регулировать очень сложную и очень умную систему, в которой могут появиться новые непредсказуемые свойства, посредством очень простой и глупой системы, свойства которой после ее создания остаются неизменными?
В контексте исследований искусственного интеллекта главная подзадача – определить такую функцию полезности, которая будет руководить поведением сверхразумного агента, при этом не позволяя ему совершать действия, которые удовлетворяют заданной функции, но противоречат заложенному в ней намерению (иногда такие действия называют «экстремальными решениями»). Например, если вы попытаетесь поручить сверхразумному ИИ вылечить рак, он может решить, что самый надежный способ – просто всех убить. Если вы заблокируете эту опцию, следующим его решением будет просто навсегда заморозить всех людей криогенным способом, не убивая их. И так далее. В контексте ДАО-демократии Ральфа Меркла проблема заключается в определении такой целевой функции, которая, во-первых, будет прямо пропорциональна социальному и технологическому прогрессу и стремлениям людей, во-вторых, будет обратно пропорциональна экзистенциальным рискам и, в-третьих, которую будет достаточно легко измерить, избежав политических баталий вокруг точности этих измерений.
Криптоэкономика сталкивается с удивительно схожими трудностями. Основная задача консенсуса – понять, как мотивировать валидаторов поддерживать и развивать сети за счет простого неизменного алгоритма, при том что сами валидаторы – очень сложные экономические агенты, способные на произвольные взаимодействия. В случае The DAO проблема была в расхождении сложной задумки разработчиков, у которых были конкретные представления об использовании функции расщепления, и результатом реального внедрения их программного обеспечения. Augur пытается спроецировать проблему консенсуса на реальный мир. Maker хочет создать децентрализованный алгоритм управления платформой, которая сочетала бы в себе децентрализацию криптовалюты и надежность фиатных денег. Во всех этих случаях глупые алгоритмы должны управлять умными агентами. Безопасность ИИ связана с тем, что агенты с IQ на уровне 150 пытаются контролировать агентов, чей IQ равен 6000, а в криптоэкономике агенты с IQ на уровне 5 пытаются контролировать агентов с IQ на уровне 150. Масштабы, конечно, разные, но сходство все же наблюдается.
Независимо друг от друга оба сообщества уже много лет пытаются решить эти сложные проблемы, и каждое добилось некоторого прогресса. Также для этих проблем начинают обнаруживаться эвристические частичные решения и стратегии смягчения риска. В случае ДАО некоторые разработчики двигаются в сторону гибридного подхода, где активы ДАО контролирует набор кураторов с ограниченными полномочиями – достаточными, чтобы защитить ДАО от атаки, но недостаточными, чтобы они сами могли нарушить работу системы. Этот подход перекликается с текущими исследованиями в области безопасного отключения ИИ.
Сторонники футархии предлагают в качестве целевой функции процентные ставки, а в качестве алгоритма управления – своего рода гибрид футархии и квадратичного голосования[32] посредством добровольной блокировки монет. Также речь идет о различных формах умеренной футархии, которая наделена достаточной властью для предотвращения сговора большинства – который, в свою очередь, неспособна предотвратить демократия, – но в остальном отдает власть процессу голосования. Все эти новаторства как минимум заслуживают внимания тех, кто пытается использовать футархию для создания ДАО мировой демократии.
Еще одно крайне недооцененное предложение – использовать алгоритмы управления, которые намеренно замедляют происходящие процессы. Хардфорк The DAO, предложенный после атаки для спасения хранящихся средств, был возможен именно благодаря набору правил внутри The DAO, требующих для каждого действия длительной задержки. Также заслуживает внимания метод формальной проверки, где одни компьютерные программы автоматически верифицируют другие, чтобы те действовали согласно заданным целям.
Доказать «честность» формально невозможно, поскольку ее очень сложно оценить, но можно обеспечить хотя бы частичную гарантию снижения рисков. Например, формально подтвердить, что определенный вид действий можно совершить не ранее, чем через семь дней, или нельзя совершать в ближайшие 48 часов, если кураторы данного ДАО не проголосуют за обратное. В контексте ИИ такие подтверждения могут предотвратить определенные виды простых ошибок в функции вознаграждения, из-за которых совершенно нежелательное поведение будет казаться ИИ чрезвычайно полезным. Конечно, другие сообщества размышляют о формальной верификации уже много лет, но сейчас изучают возможности для ее применения в новых условиях.
Еще одна концепция, которая давно уже на слуху в сфере безопасности ИИ, может быть очень полезна при создании экономических систем с ДАО: речь идет о теории сверхрациональных решений – своего рода попытке преодолеть дилемму заключенного через исходный код, лояльно настроенный по отношению к агентам, которые обязуются его запускать. Один из примеров, где действие доступно агентам с открытым исходным кодом, но не агентам – «черным ящикам», назван в коротком рассказе Скотта Александера «рукопожатием ценностей»: два агента могут договориться, что обязуются стремиться к результату, в равной степени удовлетворяющему их личным целям. Раньше такие концепции были уделом научной фантастики, но сегодня ДАО-футархии способны воплотить их в жизнь. Если брать шире, ДАО вполне могут обязать социальные институты безукоризненно «исполнять исходный код», обладающий определенными свойствами.
То, что произошло с The DAO, – лишь первый из множества экспериментов, которые мы будем наблюдать в этом году и в следующем. Различные ДАО, учась на взаимных ошибках, начнут предлагать совершенно разные новаторские решения для алгоритмов управления, политики безопасности программного обеспечения, систем кураторства, медленных и поэтапных процессов запуска и развертывания проектов, а также смогут предоставить формально подтвержденные гарантии защиты от криптоэкономического шторма.
Наконец, самый большой урок, который, на мой взгляд, нужно извлечь из криптосообщества, – это сама децентрализация: пусть разные команды реализуют отдельные компоненты системы, в чем-то дублируя работу друг друга, чтобы ошибки в одном компоненте не проявились в других. Криптоэкосистема превращается в живой эксперимент по решению передовых задач разработки программного обеспечения, информатики, теории игр и философии. И независимо от того, найдется ли применение ее достижениям – в нынешнем или радикально преобразованном виде, – они по меньшей мере станут достойной пищей для размышлений.
Философия proof of stake
30 декабря 2016 года
Системы вроде Ethereum (а также Bitcoin, NXT, Bitshares и так далее) сформировали принципиально новый класс криптоэкономических организмов – децентрализованных организаций, не подвластных какой-либо юрисдикции, которые полностью существуют в киберпространстве и действуют на основе комбинации криптографии, экономики и социального консенсуса. Чем-то они похожи на BitTorrent, но вместе с тем и непохожи, поскольку в BitTorrent нет понятия состояния – а это очень важное различие. Иногда их описывают как децентрализованные автономные корпорации, но и это не совсем так – например, хардфорк Microsoft невозможен. Они напоминают проекты программного обеспечения с открытым исходным кодом, но и здесь тоже есть различия: сделать форк блокчейна не так просто, как, например, форк OpenOffice[33].
Эти криптоэкономические сети бывают самыми разными – PoW на основе ASIC, PoW на основе GPU, наивный PoS, делегированный PoS (DPoS) и ожидаемый в скором времени PoS по принципу Casper, – и каждая обязательно подкрепляется собственной философией. Хороший пример – максималистское видение proof of work, где «тот самый» правильный блокчейн (в единственном числе) определяется как цепочка, на создание которой майнеры потратили наибольшее количество экономического капитала. Изначально это было простое правило выбора ответвлений внутри протокола, но во многих случаях его возводили в ранг священного принципа. Платформа Bitshares сделала из DPoS еще одну самодостаточную философию, основополагающий принцип которой можно описать еще проще: голосование акционеров.
Каждая из этих философий – консенсус Накамото, социальный консенсус, консенсус голосования акционеров – приводит к определенным выводам и системам ценностей, которые звучат убедительно внутри своего сообщества, но вполне уязвимы для критики снаружи. Консенсус по принципу Casper также подкреплен определенной философией, пусть пока и не до конца сформулированной.
Я, Влад, Доминик, Джей и другие – все мы по-своему видим смысл существования и будущий путь развития протоколов proof of stake, но в этой статье я хочу поделиться именно своими соображениями.
Сперва я перечислю свои наблюдения, а затем перейду к выводам.
▒ Для XXI века криптография представляет собой нечто особенное, ведь это – одна из очень немногих областей, где в случае конфликта выгоднее быть на защищающейся стороне. Зáмки намного легче разрушить, чем построить; острова можно защитить, что не помешает их атаковать, но ключ ECC дает обычному человеку защиту, через которую не прорвутся даже противники на уровне государств. Философия шифропанка основана на использовании этой драгоценной асимметрии для создания мира с надежной защитой автономии личности. Криптоэкономика в некоторой степени продолжает эту идею, за исключением того, что защищает безопасность и жизнеспособность сложных систем координации и сотрудничества, а не только неприкосновенность и конфиденциальность личных сообщений. Системы, которые считают себя идейными наследниками духа шифропанка, должны придерживаться этого базового принципа и функционировать так, чтобы взломать и разрушить их было бы гораздо сложнее, чем пользоваться ими и поддерживать их.
▒ «Дух шифропанка» – это не только про идеалы. Создание систем, которые будет легче защищать, чем атаковать, требует тщательной подготовки.
▒ В среднесрочной и долгосрочной перспективах люди весьма неплохо справляются с достижением консенсуса. Даже если противник получил доступ к неограниченной мощности хеширования и провел атаку 51 % на любой крупный блокчейн, переписав его историю транзакций за последний месяц, убедить сообщество в легитимности этой цепочки гораздо сложнее, чем превзойти хеш-мощность основной цепочки. Ему придется поставить под сомнение авторитет обозревателей блоков, каждого доверенного члена сообщества, New York Times, archive.org и многих других интернет-источников. В насыщенном информационными технологиями XXI веке убедить мир в правоте тех, кто совершил атаку, примерно так же сложно, как убедить мир в том, что американские астронавты никогда не высаживались на Луну. В долгосрочной перспективе именно этот социальный фактор защищает любой блокчейн, даже если само сообщество блокчейна этого не признаёт (к слову, Bitcoin Core признаёт главенство социального консенсуса).
▒ Однако в случае защиты одним лишь социальным консенсусом блокчейн будет слишком медленным, неэффективным и погрязнет в бесконечных дискуссиях (хотя, вопреки всем трудностям, подобные системы существуют[34]); так что экономический консенсус чрезвычайно важен для жизнеспособности и безопасности блокчейна в краткосрочной перспективе.
▒ Поскольку в proof of work безопасность обеспечивается только через вознаграждение за блок, а стимулы майнеров связаны только с риском потери своих будущих вознаграждений, алгоритм неизбежно действует по логике затрат огромных мощностей ради огромных вознаграждений. После атак в PoW очень сложно восстановиться: когда это случается впервые, можно создать хардфорк, чтобы изменить алгоритм PoW и тем самым сделать ASIC злоумышленника бесполезными, но во второй раз такой возможности не будет, так что атаки будут происходить снова и снова. Следовательно, размер сети майнинга должен быть настолько большим, чтобы атаки были немыслимы. Злоумышленнику, который готов потратить на атаку менее X, не будет смысла что-либо предпринимать в сети, которая тратит X каждый день. Эту логику я не принимаю, потому что, во-первых, она убивает деревья и, во-вторых, она расходится с духом шифропанка – стоимость атаки и стоимость защиты соотносятся друг к другу как 1:1, так что у защищающейся стороны нет преимуществ.
▒ Proof of stake нарушает эту симметрию и вместо вознаграждения за безопасность полагается на штрафы. Когда валидаторы ставят на кон свои деньги («депозиты»), они получают небольшое вознаграждение за блокировку своего капитала и поддержание нод, а также за принятие дополнительных мер предосторожности для обеспечения безопасности своих закрытых ключей. Основная часть затрат на изменение транзакций приходится на штрафы, которые в сотни или тысячи раз превышают вознаграждение. Если сжать философию proof of stake до одного предложения, то она не про «безопасность за счет сжигания энергии», а скорее про «безопасность за счет риска экономических потерь». Конкретный блок или состояние будет безопасен на $X, если вы сможете доказать, что любой соревнующийся с ним блок или состояние не смогут достигнуть такого же уровня финализации, пока вредоносные ноды, замешанные в попытке подмены, не заплатят внутрипротокольный штраф в размере $X.
▒ Теоретически большинство валидаторов могут сговориться, захватить цепочку proof of stake и приступить к злонамеренным действиям. Однако, во-первых, дизайн протокола достаточно продуман, чтобы максимально ограничить возможность получения дополнительной прибыли за счет таких манипуляций, и, во-вторых, что еще важней, если они попытаются помешать присоединению новых валидаторов или выполнить атаку 51 %, сообщество сможет просто согласовать хардфорк и удалить депозиты этих валидаторов. Успешная атака может обойтись в 50 миллионов долларов, но процесс устранения ее последствий выйдет не дороже консенсусной ошибки geth/parity, которая произошла 25.11.2016[35]. Через два дня блокчейн и сообщество вернулись в прежнее русло, злоумышленники обеднели на 50 миллионов долларов, а остальная часть сообщества, вероятно, наоборот – обогатилась, поскольку сокращение предложения токенов после атаки привело к
▒ Из вышесказанного не следует, что незапланированные хардфорки станут обычным явлением; при желании стоимость
▒ Не все упирается в экономику. На отдельных акторов могут влиять внешние мотивы: их могут взломать, их могут похитить, они, в конце концов, могут просто напиться и решить разрушить к чертям весь этот блокчейн, наплевав на все издержки. Но здесь есть и плюсы: моральные принципы и проблемы с коммуникацией отдельных людей часто предотвращают атаки намного эффективнее, чем угроза экономических потерь. Нельзя серьезно полагаться на это преимущество, но и пренебрегать им не стоит.
▒ Следовательно, лучшие протоколы – это протоколы, которые хорошо работают при различных моделях и допущениях: экономической рациональности при согласованном выборе, экономической рациональности при индивидуальном выборе, простой отказоустойчивости, византийской отказоустойчивости (в идеале и с адаптивными, и с неадаптивными противниками), моделях экономического поведения в духе Ариели/Канемана («мы все немного жульничаем») и желательно любой другой вообразимой и осуществимой модели. Важно иметь оба уровня защиты: экономические стимулы, препятствующие антисоциальному поведению централизованных картелей, и антицентрализационные стимулы, препятствующие сговору в принципе.
▒ Протоколы консенсуса, работающие по принципу «как можно быстрее», сопряжены с определенными рисками, и стоит подходить к ним очень осторожно, если вообще стоит. Если
Конечно, существует еще множество деталей и способов эти детали оспорить, но здесь я изложил основные, на мой взгляд, принципы консенсуса Casper. Отсюда можно перейти к обсуждению компромиссов между конкурирующими ценностями. Назначим ли мы эфиру годовую эмиссионную процентную ставку в 1 % и заплатим 50 миллионов долларов за принудительный корректирующий хардфорк или назначим нулевую годовую эмиссионную процентную ставку и заплатим 5 миллионов долларов за принудительный корректирующий хардфорк? Когда нам повышать безопасность протокола в рамках экономической модели в обмен на снижение его безопасности в рамках модели отказоустойчивости? Что для нас важнее – предсказуемый уровень безопасности или предсказуемый уровень эмиссии? Все это – вопросы для отдельного поста, а всяческие способы
Значение децентрализации
6 февраля 2017 года
«Децентрализация» – одно из самых популярных понятий в криптоэкономическом пространстве. Часто его даже называют главной причиной существования блокчейна. Вместе с тем этот термин крайне расплывчат. Тысячи часов исследований и колоссальные объемы вычислительной мощности брошены на попытки достичь децентрализации, усовершенствовать ее и защитить. Для проектов она считается сильнейшим козырем: когда дискуссии перерастают в соперничество, сторонники отдельного протокола (или расширения протокола) часто нокаутируют оппонента заявлением, что его вариант – более «централизованный».
Но не всегда ясно, что именно означает это слово. Вспомним, например, совершенно бесполезную, но, к сожалению, очень популярную диаграмму[37].
Теперь заглянем на Quora и прочитаем пару ответов на вопрос «В чем разница между “распределенным” и “децентрализованным”?» Первый ответ воспроизводит приведенную выше диаграмму, второй же утверждает совершенно другое: «“Распределенный” означает, что не вся обработка транзакций сосредоточена в одном месте, а “децентрализованный” – что ни у одного объекта нет контроля над обработкой транзакций». В то же время самый популярный ответ на тот же вопрос со страницы Ethereum на Stack Exchange выдает почти такую же диаграмму – только «децентрализованный» и «распределенный» в ней поменялись местами! Очевидно, здесь есть в чем разобраться.
Под децентрализацией программного обеспечения на самом деле можно подразумевать одну из
▒ Архитектурная (де)централизация отвечает на вопрос: «Из скольких компьютеров состоит система?» При скольких одновременно вышедших из строя компьютерах система продолжит работать?
▒ Политическая (де)централизация отвечает на вопрос: «Сколько организаций или отдельных людей контролируют компьютеры, из которых состоит система?»
▒ Логическая (де)централизация отвечает на вопрос: «Интерфейс и структуры данных, поддерживаемые системой, напоминают скорее единый неделимый объект или бессвязную массу?» Ответить на него поможет простой эвристический тест: если разделить всю систему вместе с пользователями и провайдерами пополам, продолжит ли каждая половина функционировать как полноценная независимая единица?
Можно попытаться объединить все три направления в одной схеме.
Разумеется, расположение многих элементов на этой схеме приблизительно и спорно. И все же попробуем их разобрать.
▒ Традиционные корпорации централизованы политически (один СЕО), архитектурно (один головной офис) и логически (не будет работать, если разделить на две части).
▒ Гражданское право опирается на централизованный законодательный орган, а общее право – на многочисленные прецеденты судебных процессов. У гражданского права наблюдается некоторая архитектурная децентрализация, поскольку каждый суд выносит решение самостоятельно, однако у общего права ее больше. И оба логически централизованы («закон есть закон»).
▒ Языки логически децентрализованы: Алиса с Бобом говорят на том же английском, что и Чарли с Дэвидом, и все они поймут друг друга без предварительных договоренностей. Языки спокойно существуют без централизованной инфраструктуры, а правила английской грамматики не подконтрольны какому-то отдельному человеку или организации (в свою очередь, эсперанто был изобретен Людвиком Заменгофом, хотя сейчас это скорее живой язык, который развивается самостоятельно и бесконтрольно).
▒ BitTorrent, как и английский язык, логически децентрализован. Сети доставки контента похожи на них, но подконтрольны одной конкретной компании.
▒ Блокчейны децентрализованы политически (их никто не контролирует) и архитектурно (у них нет центральной точки отказа), но логически они централизованы (есть одно общепринятое состояние, и система
Перечисляя преимущества блокчейна, люди часто упоминают удобства «единой центральной базы данных» – проявления логической централизации. Такой вид централизации во многих случаях считается полезным (хотя Хуан Бенет из IPFS выступает за тотальную логическую децентрализацию, поскольку логически децентрализованные системы хорошо переносят разделение сети, работают в регионах с плохой связью и так далее).
Архитектурная централизация часто приводит к политической, хотя и не всегда: при формальной демократии политики встречаются и голосуют в конкретном физическом помещении, но это не значит, что весь персонал этого помещения получает право голоса. В компьютеризированных системах может сложиться архитектурная, но не политическая децентрализация: например, онлайн-сообщество для удобства может использовать какой-то централизованный форум, но договориться коллективно перейти на другой в случае злонамеренных действий со стороны владельцев этого форума (с большой вероятностью так будут поступать сообщества, объединенные борьбой с тем, что они воспринимают как цензуру).
С логической централизацией сложно достичь архитектурной децентрализации, но не невозможно: сети децентрализованного консенсуса уже доказали свою эффективность, хотя поддерживать их сложнее, чем BitTorrent. Также с логической централизацией сложно добиться политической децентрализации – в таких системах непросто разрешить все разногласия по принципу «сам живи и другим не мешай».
Следующий вопрос: чем хороша децентрализация? Вот несколько самых популярных доводов.
▒ ОТКАЗОУСТОЙЧИВОСТЬ – децентрализованные системы менее подвержены случайным сбоям, поскольку полагаются на множество отдельных и независимых составляющих.
▒ СОПРОТИВЛЕНИЕ АТАКАМ – попытки взломать, уничтожить или взять под контроль децентрализованные системы обойдутся дороже, поскольку у таких систем нет уязвимых центральных точек, атаковать которые будет дешевле относительно стоимости окружающей их экономической системы.
▒ СОПРОТИВЛЕНИЕ СГОВОРУ – участникам децентрализованной сети гораздо сложнее сговориться между собой и нажиться за счет других участников, в то время как лидеры государств и корпораций постоянно вступают в сговоры, пользуясь менее скоординированными гражданами, клиентами, работниками и просто людьми.
Все три довода важны и обоснованны, однако они ведут к совершенно другим и весьма интересным заключениям, если рассмотреть их в контексте протоколов. Присмотримся к каждому повнимательней.
В случае отказоустойчивости ключевой аргумент довольно прост. Что произойдет с меньшей вероятностью: откажет один компьютер или одновременно откажут 5 компьютеров из 10? Принцип вполне логичный и часто используется в реальной жизни, например для реактивных двигателей, источников бесперебойного питания в местах вроде больниц, военной инфраструктуры, диверсификации финансовых портфелей и, само собой, компьютерных сетей.
Однако этот несомненно эффективный и важный вид децентрализации, вопреки наивной математической модели, часто оказывается далек от того, чтобы стать панацеей. Причина тому – отказ общего характера. Конечно, один двигатель откажет с большей вероятностью, чем одновременно сразу четыре, но что, если все четыре были изготовлены на одном заводе и по вине конкретного недобросовестного работника вся эта партия вышла с браком?
Могут ли блокчейны в сегодняшнем виде защититься от отказа общего характера? Не факт. Рассмотрим следующие сценарии.
▒ Все ноды блокчейна выполняют программу одного клиента, и в коде программы обнаруживается баг.
▒ Все ноды блокчейна выполняют программу одного клиента, но группу разработчиков этой программы подкупили.
▒ Исследовательскую группу, предлагающую апгрейды протокола, подкупили.
▒ 70 % майнеров блокчейна на базе proof of work находятся в одной стране, правительство которой принимает решение конфисковать майнинговые фермы в интересах национальной безопасности.
▒ Бóльшая часть майнингового оборудования производится одной и той же компанией, которую подкупом или угрозами заставляют встроить в оборудование бэкдор, позволяющий его отключить.
▒ В блокчейне на основе proof of stake 70 % монет, сданных в стейкинг, хранятся на одной и той же бирже.
Целостный взгляд на децентрализацию отказоустойчивости помогает учесть все эти аспекты и постараться их минимизировать. Отсюда несколько очевидных заключений.
▒ Критически важно иметь множественные, конкурирующие между собой реализации протокола.
▒ Необходимо демократизировать информацию о технических аспектах обновлений протокола, чтобы люди могли спокойно участвовать в исследовательских обсуждениях и критиковать откровенно неудачные изменения.
▒ Главные разработчики и исследователи должны работать в разных компаниях и организациях (или, как вариант, многие могут быть волонтерами).
▒ Дизайн майнинговых алгоритмов должен быть ориентирован на минимизацию рисков централизации.
▒ В идеале с помощью proof of stake мы хотим полностью избавиться от риска аппаратной централизации (но не стоит забывать, что proof of stake чреват другими рисками).
Нужно отметить, что простейшие требования отказоустойчивости связаны с архитектурной децентрализацией, но в вопросе отказоустойчивости сообщества, которое управляет продолжением разработки протокола, мы переходим к не менее важной политической децентрализации.
Теперь поговорим о противодействии атакам. В некоторых чистых экономических моделях децентрализация не так уж и важна.
Если протокол гарантирует, что валидаторы потеряют 50 миллионов долларов в случае атаки 51 % (то есть отмены завершенных транзакций), то не так важно, одна или сто компаний контролируют валидаторов, ведь риск потери 50 миллионов долларов в любом случае гарантирует экономическую безопасность. На самом деле в области теории игр существуют основания[38] полагать, что централизация может даже
Но как только мы внедряем более развитую экономическую модель, в частности такую, которая допускает возможность принуждения (или более деликатные методы вроде прицельных DoS-атак против нод), децентрализация становится куда важнее. К примеру, когда злоумышленник угрожает валидатору убийством, если тот не совершит определенных действий, перспектива потери 50 миллионов долларов отходит на второй план. Однако если эти 50 миллионов распределены между десятью валидаторами, злоумышленнику придется угрожать всем десяти, причем одновременно. Во многих случаях асимметрия атака/защита склоняется в пользу атакующего – здание, строительство которого стоит 10 миллионов долларов, можно разрушить меньше чем за 100 000 долларов, однако преимущество атакующего зачастую нелинейно: если строительство здания стоит 10 миллионов, а разрушение – 100 000, то разрушение здания, построенного за 1 миллион, вполне может обойтись в 30 000. Чем меньше суммы, тем лучше соотношение.
Какие отсюда следуют выводы? Во-первых, это демонстрирует серьезное преимущество консенсуса proof of stake перед proof of work, поскольку компьютерное оборудование легко обнаружить, контролировать или атаковать, в то время как монеты можно надежно скрыть (но есть и другие причины, по которым proof of stake успешно сопротивляется атакам). Во-вторых, здесь наблюдается явная польза распределенных команд, в том числе распределенных географически. В-третьих, и экономическую модель, и модель отказоустойчивости необходимо учитывать при разработке протоколов консенсуса.
Наконец, мы переходим к самому запутанному доводу в пользу децентрализации – сопротивлению сговору. Сложно точно сказать, что такое сговор, хотя самым простым определением будет «скоординированные действия, которые нам не нравятся». Часто в реальной жизни, несмотря на вроде бы очевидные выгоды наилучшей координации между всеми участниками, способность одной подгруппы к координации на фоне
Простой пример – антимонопольное законодательство, то есть специальные регуляторные барьеры, которые предназначены для того, чтобы участникам конкретной рыночной ниши было сложно объединяться и действовать как монополист, получая прибыль за счет других игроков этой ниши и благосостояния всего общества. Другой пример – правила, запрещающие активную координацию между кандидатами на выборах и суперкомитетами по политической активности[39], хотя проконтролировать соблюдение этого запрета оказалось очень трудно. Менее масштабный пример – запрет в некоторых шахматных турнирах одним и тем же игрокам слишком часто играть друг с другом, чтобы повысить очки конкретного игрока. Куда ни взгляни, с нежелательной координацией пытаются бороться в самых разных сложных структурах.
В случае протоколов блокчейна математические и экономические рассуждения о безопасности консенсуса часто опираются на модель нескоординированного выбора или на допущение, что в игре участвует множество мелких акторов, принимающих решения независимо друг от друга. Если кто-то в системе proof of work получает больше 1/3 майнинговой мощности, он может начать получать дополнительную прибыль посредством эгоистичного майнинга[40]. Однако можно ли говорить о том, что модель нескоординированного выбора реалистична, если представители 90 % майнинговой мощности Bitcoin достаточно хорошо скоординированы, чтобы оказаться вместе на одной конференции?