May 25, 2022

Connext

Для чего нужен connext? Как говорят разработчики: «Connext — это протокол взаимодействия Ethereum L2.

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

Предлагаю упомянуть очень привлекательную особенность connext, которая говорит о том, что если вы опытный программист и хотите интегрировать свой смарт-контракт в connext, то это руководство поможет вам это сделать — https://docs.connext.network/developers/ контракты/контракты-быстрый старт

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

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

Теперь давайте посмотрим, как работает транзакция в связи с новым обновлением Amarok (построенным поверх xApps).

Транзакция, проходящая через Connext, будет иметь следующий жизненный цикл:

Пользователь инициирует транзакцию, вызывая функцию xcall в контракте Connext, передавая средства, сведения о газе, произвольные данные и объект целевого адреса (включая информацию о цепочке).

Примечание: xcall предназначен для того, чтобы как можно лучше имитировать низкоуровневый вызов Solidity.

Контракты Connext будут:

При необходимости замените переданный токен на версию Nomad того же актива.

Вызовите контракты Nomad с хэшем деталей транзакции, чтобы инициировать 30–60-минутную задержку сообщений в цепочках.

Создайте событие с деталями транзакции.

Маршрутизаторы, наблюдающие за исходной цепочкой со средствами в цепочке назначения, будут:

Смоделируйте транзакцию (если это не удается, предполагается, что это более «выразительное» кроссчейн-сообщение, которое требует разрешения и поэтому должно пройти только медленный процесс Nomad).

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

Разместите этот объект («предложение») аукционисту.

Примечание: если у маршрутизатора недостаточно средств для перевода, он также может предоставить только часть стоимости перевода.

Аукционист будет наблюдать за всеми основными цепями. Через каждые X блоков аукционист будет собирать ставки для транзакций. Аукционист будет нести ответственность за выбор правильного маршрутизатора (или маршрутизаторов!) для данной транзакции (может быть случайным). Аукционист отправит партии этих ставок в сеть ретранслятора, чтобы отправить их в цепочку.

Когда данная заявка подается в цепочку, контракты будут выполнять следующие действия:

Проверьте, достаточно ли средств для транзакции.

При необходимости обменяйте средства маршрутизатора со вкусом Nomad на канонический актив сети.

Отправьте обменные средства на правильную цель (если это контракт, это также выполнит calldata для цели).

Хэшируйте параметры маршрутизатора и сохраняйте сопоставление этого хеша с адресом маршрутизатора в контракте.

На данный момент транзакция пользователя уже завершена!

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

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

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

На этом рисунке показано то, что мы только что рассмотрели, от А до Я, так что вы можете визуализировать только что полученную информацию.

Спасибо за внимание!