November 9, 2023

#6 Кроссчейн-протоколы, мосты. multichain protocols, bridges

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

В самом начале был только блокчейн биткоина. Довольно быстро его стали копировать другие разработчики, создавая собственные отдельные сети. 99% из них так и осталась никому не нужными, выжили лишь единицы. Но более важным стал факт появления нового блокчейна со встроенными смарт-контрактами - Ethereum.

Это стало настоящим прорывом, так как после этого появилась возможность строить по-настоящему децентрализованные приложения. Увидев, успех нового блокчейна появилось множество конкурентов, которые со временем стали оттягивать внимание пользователей на себя. Особенно сильно это стало заметно, в последний бычий рынок при появлении блокчейнов Solana, Avalanche, BNB Chain и многих других. В связи с этим, не только пользователи, стали уходить на другие сети, но и ликвидность.

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

Описание

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

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

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

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

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

Разновидности мостов

1 тип

Другой серьезной проблемой для пользователя и неудобством является тот факт, что в блокчейне получения, актив может не поддерживаться. В этом случае, в смарт-контракте генерируется обернутый актив. Проблема заключается в том, что его нельзя использовать ни в каких dapp. Единственное, что можно с ним сделать - перевести на другой адрес, иными словами, просто проводить транзакции между адресами в блокчейне. Именно этот способ изначально использовался многими протоколами.

Это значит, что для использования такого актива где-либо, необходимо чтобы dapp добавил возможность его использования. Именно так и было, например, с блокчейном Avalanche, где многие DeFi добавляли к себе токены обернутых стейблкоинов. С течением времени, активы, особенно стейблкоины, стали добавляться в различные сети самими родительскими компаниями. Поэтому кросс-чейн переводы стали намного удобнее.

2 тип

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

3 тип

Также с увеличением количества поддерживаемых токенов в различных сетях, появился новый подход в кросс-чейн мостах, который по сути представляет собой механику традиционного АММ (автоматизированный маркетмейкер) на децентрализованных биржах. Это значит, что в каждой из сетей, формируется пул ликвидности из ОДНОГО и того же токена. При переводе на другой блокчейн, средства уходят именно из этих пулов. Для простоты покажем пример.

Есть пул ликвидности:

1000 USDC (Ethereum) - 1000 USDC (BNB Chain)

Пользователь хочет перевести 250 USDC из Ethereum на BNB Chain

Он отправляет транзакцию в сети Ethereum на 250 USDC

Взамен получает 250 USDC в сети BNB Chain

Пул ликвидности стал выглядеть следующим образом:

1250 USDC (Ethereum) - 750 USDC (BNB Chain)

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

Но здесь возникает сложность того, что в некоторый момент времени, ликвидность на одной из сетей может закончиться (если в примере выше отправлять не 250 USDC, а 1000 USDC). В этом случае, пока пул на опустевшей стороне, не пополнится - пользователь либо не сможет проводить транзакцию в данном направлении, либо будет получать обернутый токен, с которым ничего не сможет сделать.

4 тип

Более того, другая часть протоколов пошла по-другому пути - без использования пулов ликвидности в протоколе. Это прежде всего связано с тем, что они не хотели, чтобы пользователи сталкивались с ограничениями объема в пулах. Именно поэтому, они также делают перевод нативных токенов между двумя сетями, но выполнено это другим способом, объединяя логику первых типов мостов.

Пользователь отправляет актив из одной сети в другую. Данный актив приходит в обернутом виде, хотя он поддерживается сетью получения. Этот обернутый актив автоматически обменивается в пуле ликвидности децентрализованных бирж stableswap (самый яркий пример - Curve). В этом пуле ликвидности обернутый актив стоит в паре с нативным активом. При транзакции в обратную сторону, нативный актив обменивается на обернутый на Curve и отправляется обратно. Таким образом, есть довольно хорошая модель для переводов без ограничения в пулах ликвидности пользователей.

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

Итог

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

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

Особенности

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

  • будет получен обернутый токен или нативный
  • если обернутый, то можно ли его поменять на нативный или нет
  • если можно, достаточно ли средств в пуле ликвидности для обмена
  • можно ли использовать обернутый токен в протоколах

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

Также, как и все DeFi-протоколы, кросс-чейн мосты взимают плату за проведение транзакций, которая идет в пользу протокола - валидаторам и поставщикам ликвидности. Обычно, это значение колеблется в диапазоне 0,1% - 0,3%.

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

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