Оглавление

  • Введение

  • Проблемы масштабируемости блокчейна

  • Что такое решение для масштабирования вне сети?

  • Введение в боковые цепи

    • Что такое боковая цепь?

    • Как работают сайдчейны

    • Зачем использовать сайдчейны?

  • Знакомство с платежным каналом

    • Что такое каналы оплаты?

    • Как работают платежные каналы

    • Путь оплаты

  • Подведем итог


Введение

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

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


Проблемы масштабируемости блокчейна

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

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

Поэтому, когда это происходит, мы сталкиваемся с узким местом. Мы можем думать о блокчейне как о поездах с фиксированными интервалами отправления. Количество мест в каждом вагоне ограничено, и пассажиры должны делать ставки, чтобы получить билет. Если все захотят сесть в поезд, стоимость проезда, естественно, вырастет. Аналогичным образом, сеть, перегруженная неподтвержденными транзакциями, потребует от пользователей платить непомерные комиссии за то, чтобы их транзакции были приоритетными.

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

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

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


Что такое решение для масштабирования вне сети?

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


Введение в боковые цепи

Что такое боковая цепь?

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

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


Как работают сайдчейны

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

Не забывайте, что сайдчейны — это независимые блокчейны с разными блоками, узлами и механизмами проверки. Чтобы получить монеты сайдчейна, Алиса отправит свои пять биткойнов на другой адрес. Адрес может принадлежать кому-то. После получения биткойнов владелец адреса кредитует эти 5 монет боковой цепи на адрес боковой цепи Алисы. Кроме того, адрес может иметь своего рода максимально безопасную настройку: программное обеспечение автоматически зачисляет монеты боковой цепи при обнаружении платежа.


侧链扩展


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

Например, она может заплатить Бобу монету сайдчейна, чтобы он купил толстовку Binance. Когда она захочет обменять свои биткойны обратно, она может отправить оставшиеся четыре монеты сайдчейна на специальный адрес. После подтверждения транзакции четыре биткойна будут разблокированы и переведены на адрес, который она контролирует в основной цепочке.


Зачем использовать сайдчейны?

Вам может быть интересно, зачем вам использовать сайдчейны. Разве не нормально, если Алиса просто использует блокчейн Биткойна?

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

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

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

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

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

Ethereum Plasma похожа, но есть существенные различия. Пожалуйста, прочитайте «Что такое Ethereum Plasma (Plasma)?» ",Узнать больше:


Знакомство с платежным каналом

Что такое каналы оплаты?

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

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


Как работают платежные каналы

В популярной модели Lightning Network обе стороны сначала вносят токены на совместно принадлежащий адрес. Это адрес с несколькими подписями, и для расходования средств требуется две подписи. Поэтому, если Алиса и Боб создадут такой адрес, перевод средств возможен только по обоюдному согласию.

Предположим, что оба человека вносят 10 биткойнов на один и тот же адрес, а баланс адреса составляет 20 биткойнов. Они могут легко определить начальный баланс, который заключается в том, что у Алисы и Боба есть по 10 биткойнов. Если Алисе необходимо передать токен Бобу, реестр можно обновить следующим образом: Алисе принадлежит 9 биткойнов, а Бобу принадлежит 11 биткойнов. Им не нужно публиковать транзакции в блокчейне для обновления своих балансов.


how a payment channel works


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

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

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


Путь оплаты

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

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


Подведем итог

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

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