Skip to main content
Обзор архитектуры протокола Garden
Теперь, когда мы знаем всех участников и модули системы, подробно рассмотрим с технической стороны, как они взаимодействуют друг с другом. Вот упрощённое представление процесса:
1

Создание намерения

Пользователь запрашивает котировку → Подписывает намерение → Отправляет намерение в книгу ордеров
2

Выбор солвера

Книга ордеров выбирает солвера → Солвер начинает расчёт
3

Расчёт со стороны пользователя

Пользователь инициирует транзакцию → Солвер выполняет транзакцию в целевом блокчейне
4

Завершение

Пользователь получает средства → Солвер завершает расчёт
Далее подробно рассмотрим каждый этап процесса.

Создание намерения

Запрос котировки

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

Принятие котировки

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

Создание намерения

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

Выбор солвера в книге ордеров

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

Процесс аукциона:

1

Отправка котировок

Все солверы отправляют свои котировки на основе параметров намерения.
2

Определение лучшей котировки

Определяется лучшая котировка (самая низкая цена или наибольшая эффективность).
3

Разрешение ничьей

Солверы с более высоким рейтингом стейкеров, чем у солвера с лучшей котировкой, получают 5-секундное окно, чтобы предложить такую же котировку.
  • Никто не принял: побеждает солвер с лучшей котировкой.
  • Принял один солвер: побеждает принявший солвер.
  • Приняли несколько солверов: побеждает солвер с самым высоким рейтингом стейкеров.
4

Подтверждение солвера

После выбора солвер готовится к исполнению обмена.

Расчёт: исполнение на стороне пользователя

1

Начало расчёта

Процесс расчёта начинается после подтверждения выбранного солвера.
2

Инициирование пользователем

Пользователь должен инициировать расчёт, создав для намерения подписанное сообщение с транзакцией.
3

Трансляция через релейер

Подписанное сообщение передаётся релейеру, который транслирует его в блокчейн.
4

Ончейн-обработка

Транзакция обрабатывается ончейн, а средства пользователя блокируются или переводятся на соответствующий контракт или кошелёк.
5

Подтверждение

Когда транзакция набирает необходимое количество подтверждений в блокчейне, расчёт переходит на сторону солвера.

Расчёт: исполнение на стороне солвера

1

Получение подтверждения

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

Исполнение в целевом блокчейне

На этом этапе солвер блокирует в целевом блокчейне средства, предназначенные для пользователя.
3

Подтверждение транзакции солвера

Транзакция солвера также проходит процесс подтверждения в целевом блокчейне, что обеспечивает безопасность и надёжность.

Получение средств

1

Доступность активов

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

Получение средств солвером

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