> For the complete documentation index, see [llms.txt](https://unit-zero.gitbook.io/russian-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://unit-zero.gitbook.io/russian-docs/markery/krosschein-most.md).

# Кроссчейн-мост

Сеть Unit Zero L1 работает поверх сети Waves L0, служа в качестве маячковой цепочки, облегчая взаимодействие без доверия и обеспечивая консенсус и экономические стимулы. Протокол моста реализует передачу токенов между сетями L1 и L0. В данной статье описаны операционные механизмы передачи разных типов токенов: нативного токена UNIT0 и других активов.

### Переводы нативных токенов <a href="#native-token-transfers" id="native-token-transfers"></a>

#### Перевод с L1 на L0 <a href="#l1-to-l0-transfer" id="l1-to-l0-transfer"></a>

Нативный токен сети L1 можно перенести в сеть L0, конвертировав его в обернутый токен.

1. Отправитель в L1 вызывает контракт Bridge, который навсегда блокирует Unit0, а затем генерирует событие.
2. События фиксируются клиентом консенсуса L1.
3. При вызове Chain Contract в L0 для публикации метаданных блока майнер также применяет криптографический дайджест передач от L1 до L0.
4. Получатель должен дождаться, пока блок не станет необратимым (\~ 200 эпох L1). Это удержание обеспечивает завершенность транзакции, предотвращая двойное расходование и потерю токенов во время потенциальных реорганизаций L1.
5. После этого получатель в L0 вызывает Chain Contract, применяя криптографическое доказательство передачи.
6. Чейн-контракт в L0 чеканит обернутый токен Unit0 и отправляет его получателю.

#### Перевод с L0 на L1 <a href="#l0-to-l1-transfer" id="l0-to-l1-transfer"></a>

Обратные переводы намного проще и практически мгновенны.

1. Отправитель в L0 вызывает контракт цепочки, применяя обернутый токен Unit0.
2. Чейп-контракт сжигает обернутый токен и добавляет запись в его состоянии.
3. Майнер в L1 считывает состояние и добавляет выводы Unit0 в блок. При размещении метаданных блока в L0 майнер помечает переводы как обработанные.
4. Нативный токен Unit0 становится доступным получателю в L1 в следующем блоке.

### Передача пользовательских токенов <a href="#custom-token-transfers" id="custom-token-transfers"></a>

Передача пользовательских (ненативных) токенов обрабатывается аналогичным образом. Соответствие между токенами в L1 и токенами в L0 устанавливается Chain Contract. Если токен изначально создан в L1, Chain Contract выпускает обернутый токен в L0. Если токен изначально создан в L0, его смарт-контракт в L1 должен выдавать события, необходимые для передачи токена обратно в L0.
