Федеративные сайдчейны — это оригинальная обновляемая реализация сайдчейна Биткойна PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Федеративные сайдчейны — это оригинальная обновляемая реализация сайдчейна Биткойна

Это редакционная статья Шиноби, преподавателя-самоучки в биткойн-пространстве и ориентированного на технологии ведущего биткойн-подкастов.

Федеративные сайдчейны в настоящее время являются единственным развернутым типом боковой цепи Биткойна (последняя статья здесь). Идея использования федеративной системы привязки и консенсуса на самом деле была приложением к Оригинальный технический документ по сайдчейнам. Не существовало конкретного проекта для любого типа двусторонней привязки с участием майнеров, поэтому федеративная привязка описывалась как способ развернуть сайдчейн сейчас и перейти на двустороннюю проверенную привязку с использованием доказательств простой проверки платежей (SPV), аналогичных что софтчейны делать, когда было конкретно разработано что-то безопасное и пригодное для развертывания. Также было отмечено, что с точки зрения стимулов для очень маленьких систем может быть опасно использовать привязку на основе майнеров, поскольку они могут украсть у очень небольшой группы людей без особого консенсуса о том, что делать с этим, в более широкой системе Биткойн. . Федерации могут быть полезны для небольших систем, где группа пользователей недостаточно велика, чтобы у майнеров не было стимула красть монеты.

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

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

Это делает модель безопасности системы двунаправленной с точки зрения порогов безопасности. Как указывалось ранее, для того, чтобы средства были активно украдены, пять из семи участников в этой гипотетической ситуации должны вступить в сговор или быть принуждены к сговору с целью кражи средств боковой цепи. Однако только трое из семи участников должны потерять, уничтожить или быть принуждены отключить свои ключи, чтобы средства боковой цепи остались замороженными и не подлежащими перемещению — возможно, навсегда. Пороги представляют собой баланс между этими двумя рисками.

Оба они одновременно должны быть достаточно высокими, чтобы исключить вероятность возникновения обоих худших случаев.

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

жидкость

Liquid была первой федеративной боковой цепью, развернутой на Биткойне и предназначенной для частных транзакций между биржами для торговли и выпуска других активов, таких как стейблкоины или токены акций. Его кодовая база почти полностью построена на базе самого Биткойна. Одной из основных особенностей сети Liquid была реализация Конфиденциальные транзакции, функция, использующая доказательства криптографического диапазона, чтобы скрыть суммы, отправляемые в транзакциях, но при этом обеспечивает гарантию при определенных предположениях, что не тратятся несуществующие деньги. Жидкость также реализована Конфиденциальные активы, расширение конфиденциальных транзакций. Конфиденциальные активы скрывают, какой токен тратится помимо суммы.

Эти две функции в совокупности обеспечивают надежное решение одного из больших недостатков федеративной боковой цепи: цензуры. Пороговое большинство (в нашей гипотетической федерации 5 из 7, описанной выше) могло бы согласиться подвергнуть цензуре определенные транзакции или UTXO, если бы у всех были для этого основания, например, подозреваемая или подтвержденная незаконная деятельность. В таком случае у них даже будет рациональный стимул сделать это, чтобы не давать правительствам повода преследовать всю систему. Конфиденциальные транзакции/активы могут обеспечить достаточно высокий уровень конфиденциальности, поэтому, даже если у федерации есть причины подвергать цензуре определенные типы транзакций, ей будет очень трудно выбрать их для этого.

Транзакция привязки на Liquid — это относительно простой двухэтапный процесс. Пользователь, желающий подключиться, берет мультиподписной адрес федерации, а затем «настраивает» каждый задействованный в нем открытый ключ, используя оплата по контракту с адресом Liquid, который они контролируют, для создания новых открытых ключей. Члены федерации могут получить соответствующие закрытые ключи, как только узнают используемый адрес Liquid. Пока эта информация не будет раскрыта, никто, даже федерация, не знает, что транзакция на этот измененный адрес является привязкой Liquid. Затем пользователь транслирует транзакцию в основную цепочку и ждет 100 подтверждений. Как только подтверждения будут получены, пользователь может отправить транзакцию в сети Liquid, чтобы отправить свои монеты себе. Эта транзакция использует специальный ввод, который содержит адрес Liquid, с помощью которого они настроили ключи федерации, подпись, доказывающую, что они контролируют ее, и доказательство Меркла, показывающее, что транзакция привязки к основной цепочке имеет не менее 100 подтверждений.

Процесс вырубки намного проще. Пользователь создает транзакцию, которая сжигает биткойны в Liquid, используя OP_RETURN, содержит адрес для отправки в основной цепочке и специальное доказательство с нулевым разглашением от одного из членов федерации (который скрыт). Когда члены федерации увидят такую ​​транзакцию с действительным доказательством членства, они подпишут вывод средств в основной цепочке. Доказательство реализовано для предотвращения мошеннического или недействительного вывода средств и позволяет любому члену федерации, предоставляющему доказательство, применять белый список или ограничения на привязку. Любой может свободно привязать биткойны к сети Liquid, но для привязки необходимы отношения с членом федерации.

Что касается управления ключами и обеспечения безопасности, Blockstream разработала аппаратные модули безопасности (HSM) для обработки ключей и выполнения операций подписи. Эти устройства защищают ключи, используемые для подписания блоков и привязки входов/выходов, защищая их от несанкционированного доступа или извлечения ключей. Чтобы обеспечить некоторые средства восстановления в случае потери ключей неисправными устройствами, а также для защиты от извлечения ключей в злонамеренных целях, резервные копии каждого ключа-участника сохраняются зашифрованными таким образом, чтобы требовать от этого участника и Blockstream сотрудничества для расшифровать ключ для загрузки в новый HSM. Ни одна из сторон не может расшифровать резервную копию самостоятельно. Последней линией защиты от потери ключей являются ключи аварийного снятия. Каждый адрес, на который федерация пересылает монеты привязки, имеет два пути расходования: требуемый порог федерации и примерно через месяц блокировки (хотя продолжительность времени может быть изменена) требуемый порог аварийных ключей. Это второй набор ключей, который может храниться федерацией, другой стороной или их комбинацией, чтобы обеспечить возможность восстановления монет, если будет потеряно слишком много ключей федерации. Федерация регулярно перемещает монеты в основной цепи под свое хранение до истечения срока блокировки, поэтому, пока федерация не потерпела неудачу, этот аварийный путь никогда не будет использован. В настоящее время Blockstream поддерживает географически распределенные ключи восстановления.

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

Rootstock (RSK)

Rootstock — это интегрированный сайдчейн, имеющий множество конструктивных отличий от Liquid. Во-первых, это по сути копипастный клон Ethereum с точки зрения функциональности. Он полностью поддерживает Solidity, язык сценариев, используемый Ethereum, поэтому любой контракт, развернутый на Ethereum, легко переносится на Rootstock. Причиной этого, очевидно, является то, что Ethereum пользуется большим спросом и может предоставить функциональность, на которую не способен Биткойн. Очевидно, что у архитектуры Ethereum есть много недостатков и рисков, но нельзя отрицать, что на нее есть спрос.

Еще одним важным отличием с точки зрения архитектуры является то, что делает федерация: они коллективно управляют мультиподписью, которая хранит средства в основной цепочке, но в обычных обстоятельствах федерация не участвует в чеканке блоков. Это делается майнерами биткойнов посредством объединенного майнинга, что позволяет им одновременно добывать биткойны и Rootstock. Хотя это не обеспечивает существенной разницы в безопасности для Биткойна, привязанного к цепочке Rootstock, оно дает некоторые преимущества для других активов, выпущенных в боковой цепи. Федерация всегда может украсть биткойн в основной цепочке, если вступит в сговор, но поскольку майнеры фактически добывают боковую цепь, она может продолжаться и позволять другим активам продолжать транзакции. Если эти другие активы имеют достаточную ценность, даже без поддержки реальных биткойнов, токен Rootstock BTC все равно должен иметь достаточный рыночный спрос, чтобы платить комиссию за использование других активов, чтобы стимулировать майнеров продолжать добычу полезных ископаемых.

Однако участие майнеров не является абсолютным. Пока большинство майнеров биткойнов также майнят Rootstock, они полностью контролируют организацию транзакций и их добычу в блоки, но если этот процент майнеров упадет до половины (или немного ниже), существуют правила консенсуса, позволяющие федерация должна подписать контрольные точки, предотвращающие реорганизацию до контрольной точки. Если скорость хэширования упадет более резко, они даже смогут стать подписывающими блоками, как члены федерации Liquid. Это очень динамичная система, которая может функционировать как без майнеров, так и без федерации, чтобы поддерживать развитие блокчейна.

Процесс привязки очень прост: отправьте биткойны на адрес привязки RSK, а затем дождитесь достаточного количества подтверждений. После того, как будет получено достаточное количество подтверждений, смарт-контракт Solidity в сайдчейне распознает транзакцию и зачислит ее на счет в сайдчейне, контролируемый тем же ключом, к которому был заблокирован UTXO, к которому вы привязали. Привязка также контролируется смарт-контрактом, который будет связываться с HSM федерации, которые подпишут транзакцию вывода средств из основной цепочки, когда об этом будет указано в контракте.

Когда Roostock впервые запустил, все, что требовалось для привязки, — это то, что большинство HSM федерации подписали транзакцию после получения указания от смарт-контракта в боковой цепи. В 2020 году они внедрили новый механизм привязки под названием POWPeg. Это обновление позволило HSM фактически проверять доказательства SPV от майнеров. HSM теперь отказываются подписывать транзакции привязки, если только большинство нынешних майнеров RSK не будут опираться на транзакцию с момента инициации привязки. Модель безопасности в конечном итоге сводится к тому, что HSM остаются в безопасности, но если большинство из них не будут подделаны и ключи не будут извлечены, они не подпишутся без достаточного доказательства работы, подтверждающего привязки.

Закрыть

Люди работают над созданием сайдчейнов уже восемь лет, и в то время как мы Ушел через четыре различных проектов (и их еще несколько: это только те, которые получили поддержку технических биткойнеров), в настоящее время не используется ничего, кроме федеративных цепочек. Федеративные системы, возможно, не являются той не требующей доверия боковой цепью, которую хотят многие люди, но они по-прежнему остаются очень полезными системами — особенно в любом контексте, где единственный способ удовлетворить рыночный спрос — это доверить одному хранителю что-то арбитражное. Федерации сразу же становятся улучшением по умолчанию, распределяя риск контрагента между несколькими игроками.

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

Это гостевой пост Шиноби. Высказанные мнения являются полностью их собственными и не обязательно отражают точку зрения BTC Inc или Bitcoin Magazine.

Отметка времени:

Больше от Биткойн-журнал