🌈 Rainbow Bridge: как построить «правильный» мост?

Cyber Academy
3 min readAug 17, 2021

--

⚡️ Decentralized Web Meetups

Алекс Шевченко, tech product manager в Near, в рамках очередного митапа от Cyber Academy рассказал про решения для связи между блокчейнами — кроссчейн-мосты. Мы узнали, что такое блокчейн-мосты, какие существуют сложности их построения, их возможности и проблемы дальнейшего развития. Собрали основные тезисы его выступления! ✨

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

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

Загвоздка кроется в точке между заморозкой и выпуском активов. За эти операции отвечают так называемые рилееры, которые дают команды смарт контрактам выпускать или размораживать токены. В качестве рилееров могут выступать определенные доверенные лица. Это наиболее простой вариант в реализации, но требует доверия к людям (proof-of-authority), которые имеют возможность присвоить себе активы замороженные на Escrow-счете.

Сделать мост с децентрализованными рилеерами несравнимо сложнее, потому их ещё никто не делал.

Как правильно построить trustless мост?

Как сделать так, чтобы, например, блокчейн Ethereum знал все, что происходит на блокчейне Near и наоборот? Нужно запустить на Ethereum узел Near, а на Near узел Ethereum. Такие «имплантированные узлы» существуют в форме смарт-контрактов и не хранят в себе все состояние блокчейна от первого блока. Это, так называемые легкие клиенты, которые должны обновляться с определенной частотой. На Near клиент Ethereum обновляется каждый эфириумовский блок, примерно, раз в 14 секунд. А на Ethereum клиент Near достаточно обновлять раз в 12–18 часов.

Сложность заключается в том, что в SDK Ethereum нет инструмента для проверки подписей валидаторов Near. Команде разрабатывающей Rainbow bridge пришлось создавать такой функционал самостоятельно в виде смарт контракта. Он вызывается наблюдателем (Watchdog) в случае, если он считает, что блок в Near был подписан неправильно.

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

Перевод из Ethereum на Near через Rainbow bridge занимает около 5 минут, а в обратном направлении 4–8 часов. Сам мост никаких комиссий с пользователей не берут.

Что именно пересылается: ERC-20, ETH, NEAR или ERC-721 — определяют смарт контракты, которые называются Коннекторами, а валидность транзакции проверяют контракты-пруверы. Коннекторы и пруверы может написать кто-угодно под свои собственные цели.

Управление мостом

Мосты относятся к тому типу архитектуры, которые нельзя бросать на произвол судьбы. Как и реальным мостам им требуется обслуживание. В случае обновления протокола на базовом уровне, как например, недавний форк London, старые контракты моста просто перестанут работать. Потому нужно оставить возможность обновлять контракты при помощи DAO.

Нерешенные проблемы мостов

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

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

Для этого нужны специалисты, которые разбираются в языках программирования для EVM: Solidity и Vyper. Если вы начинающий разработчик и думаете в каком направлении двигаться, начинайте с этих языков. Построение мостов поставит перед вами множество сложных, интересных задач.

Cyber Academy — образовательная платформа для блокчейн-разработчиков. Присоединяйтесь к нам ✨

Анонсы | Website | Twitter | Телеграм-чат | GitHub | Facebook | Linkedin

--

--

Cyber Academy
Cyber Academy

Written by Cyber Academy

Образовательная платформа для блокчейн-разработчиков

No responses yet