Как работает CCIP - протокол кросс-чейн коммуникации

В настоящее время Chainlink разрабатывает протокол Cross-Chain Interoperability Protocol (CCIP) - стандарт с открытым исходным кодом для кросс-чейн коммуникации. Цель CCIP - создать универсальный открытый стандарт, который позволит разработчикам создавать безопасные сервисы и приложения, способные отправлять произвольные сообщения, передавать токены и инициировать действия в нескольких сетях блокчейн. Кроме того, CCIP нацелен на интеграцию с широким спектром сервисов оракулов для поддержки очень сложных кросс-чейн взаимодействий.

CCIP разработан для обеспечения сквозной безопасности, перспективной совместимости и беспроблемной работы разработчиков. Инфраструктура CCIP позволяет отправителю в сети-источнике отправить сообщение (данные и/или токены) получателю в сеть-получатель. На практике многие экземпляры протокола могут работать параллельно, обеспечивая связь между большим количеством независимых сетей.

Архитектура CCIP включает в себя три уровня - обмен сообщениями (программируемый мост), транспорт (ядро CCIP) и децентрализованные оракловые сети (DON), использующие OCR 2.0, а также четвертый компонент в виде сети защиты от мошенничества (AFN), которая поддерживает каждый уровень. Примечательно, что контракты отправителя и получателя являются единственными компонентами, которые должны быть написаны внешними разработчиками - все остальные компоненты абстрагированы CCIP, обеспечивая единый, простой и элегантный интерфейс для облегчения кросс-чейн взаимодействия.

В своей презентации на SmartCon 2022 Лоренц Брайденбах, руководитель отдела исследований и разработок Chainlink Labs, провел аудиторию через процесс обмена сообщениями между сетями с использованием CCIP.

Инфраструктура, способствующая кросс-чейн передаче данных в CCIP.
Инфраструктура, способствующая кросс-чейн передаче данных в CCIP.

Сначала отправитель вызывает контракт Router, который является единой точкой входа для всех блокчейн сетей назначения. Маршрутизатор выставляет счет за подписку контракта отправителя и направляет сообщения на основе сети назначения и токенов (с выделенным пулом токенов для каждого токена). Примечательно, что передача токенов ограничена по скорости, чтобы уменьшить масштабы потенциальной атаки.

Если отправляются не только токены, но и сообщения, маршрутизатор направляет сообщение соответствующему контракту OnRamp, специфичному для места назначения, чтобы тот выполнил первичную проверку. Если проверка пройдена, OnRamp выдает событие с сообщениями и метаданными. В этот момент Committing DON (оракулы под управлением OCR 2.0) наблюдает за сетью источников, подхватывает событие и ждет окончания событий сообщений, испускаемых OnRamp. Затем, Committing DON отправляет криптографическое обязательство (подписанное кворумом оракулов) в форме корня дерева Меркла контракту Commit Store, работающему на блокчейн сети назначения.

Уникальной особенностью CCIP является Anti-Fraud Network, отдельный уровень проверки, который независимо контролирует все уровни стека. Если узлы AFN заметят какую-либо недобросовестную деятельность, может быть автоматически инициировано аварийное отключение, чтобы остановить кросс-чейн активность. Каждый раз, когда контракт выполняет какое-либо действие, он проверяет состояние AFN, чтобы узнать, находится ли система в состоянии аварийной паузы. Примечательно, что AFN отслеживает только публичную (он-чейн) информацию, что делает его деятельность полностью проверяемой.

Теперь кросс-чейн сообщение может быть выполнено. Выполняющий DON состоит из множества узлов, работающих под управлением OCR 2.0. Исполняющий DON будет ждать, пока сообщение будет зафиксировано в контракте Commit Store и благословлено AFN. Затем исполняющий DON отправляет транзакцию выполнения вместе с криптографическими доказательствами в контракт OffRamp. OffRamp проверяет криптографические доказательства на соответствие обязательству, хранящемуся в Commit Store, и проверяет, было ли обязательство благословлено AFN. Наконец, маршрутизатор в сети назначения выставляет счет на подписку контракта получателя и действует как единая точка выхода для всех сетей источников.

В своей презентации Лоренц продемонстрировал демонстрационный контракт "пинг-понг", который обменивался сообщениями между контрактом в тестовой сети Goerli и контрактом в тестовой сети Rinkeby.

Помимо глубокого погружения в архитектуру, Сергей Назаров, соучредитель Chainlink, и Джонатан Эренфельд-Соле, директор по стратегии SWIFT, объявили во время беседы, что SWIFT использует CCIP в доказательстве концепции, которая позволит сообщениям SWIFT инструктировать переводы токенов на блокчейнах, помогая 11 000+ учреждениям сети финансовых услуг стать совместимыми с сетями блокчейн. CCIP также находится на стадии альфа-тестирования с новыми Synth Teleporters от Synthetix, которые позволяют перемещать синты между различными сетями.

Телеграм канал про web3 разработку, смарт-контракты и оракулы.

Начать дискуссию