5 различий между Polkadot и Cosmos Network

02.05.2019
48
5

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

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

Вторая причина — суверенитет. Создание приложения на платформе с помощью смарт-контракта заставляет ваше приложение подчиняться правилам и управлению протоколом. 

Cosmos и Polkadot — это попытки решить эту проблему — Cosmos с моделью Hub-and-Zone , Polkadot с моделью Relay Chain / Parachain .

Различие № 1: Локальная безопасность против глобальной

Cosmos и Polkadot функционируют в рамках двух совершенно разных моделей безопасности. Упрощенно, Polkadot работает следующим образом:


Архитектура Polkadot Network

Парачейны — это блокчейны в сети Polkadot. Каждый парачейн может использовать любой функционал, алгоритм консенсуса, структуру транзакционных издержек и так далее. Polkadot имеет общую систему безопасности. Так проще дать старт цепочке, но каждое локальное состояние парачейна (не основной цепочки в Polkadot) в конечном счёте подчиняется глобальному состоянию. Relay Chain имеет свой собственный алгоритм консенсуса, который называется GRANDPA Consensus, который быстро финализирует блоки на парачейнах. 

Недостаток этой модели заключается в том, что валидаторы в Relay Chain имеют последнее слово над изменениями состояния, сделанными в любом парачейне. Например, глобальные валидаторы могут, по какой-то причине, постоянно отклонять блоки, которые поступают от валидаторов определенного парачейна, и постоянно блокировать продвижение парачейна от включения в глобальное состояние. Polkadot пытается предотвратить это, перетасовывая валидаторов, чтобы они проверяли случайные парачейны, снижая вероятность того, что конкретный валидатор подвергнет цензуре определенный парачейн. У Polkadot также есть другой класс валидаторов, называемый Fishermen, который постоянно проверяет глобальных валидаторов на наличие вредоносных действий.

Архитектура Cosmos Network принципиально иная.


Архитектура Cosmos Network

В Cosmos Network вместо использования локальной/глобальной модели безопасности каждый блокчейн независим и защищает себя сам. Каждый блокчейн имеет свой собственный консенсус, и валидаторы каждого блокчейна отвечают за защиту только этого блокчейна. В сети используется модель хабов и зон для взаимодействия, где зоны (независимые цепочки блоков) могут «отправлять токены» в другие зоны путем маршрутизации через хаб (также независимую цепочку блоков). Этот протокол называется IBC (Inter-Blockchain Communication), который является протоколом для отправки сообщений между цепочками для представления передачи токена. Протокол IBC находится в стадии разработки.

Сравнивая эту модель с Polkadot, самое большое отличие здесь состоит в том, что состояние каждой зоны защищено только ее валидаторами.

Различие № 2: Управление и участие

Второе основное различие между Polkadot и Cosmos заключается в управлении и участии. В сети Polkadot есть одна Relay Chain и некоторое количество парачейнов, которые могут поддерживать валидаторы Relay Chain. По нынешним оценкам, будет 100 слотов для парачейнов, но это число может уменьшиться или увеличиться в будущем. Сеть Polkadot выделяет слоты для парачейнов, посредством механизма аукциона — участник, предлагающий самую высокую цену, может занять слот в течение некоторого фиксированного периода времени. Для того, чтобы стать парачейном в сети Polkadot, вам нужно будет купить большое количество DOT (внутренняя валюта сети Polkadot) и застейкать их до тех пор, пока вы хотите оставаться парачейном.

Cosmos Network, с другой стороны, не имеет определенных правил членства — любой может построить хаб или зону. Хабы сами по себе являются суверенными блокчейнами, построенными с целью соединения множества других блокчейнов. Два примера — это Cosmos Hub , который недавно был запущен командой Tendermint, и Iris Hub , который планирует соединить блокчейны, которые в основном работают в Китае и других частях Азии. Эта модель хаба и зоны делает межцепную связь более эффективной, потому что вместо соединения с любым другим блокчейном каждый блокчейн должен соединяться только с хабом.

Хабы более эффективны для соединения нескольких цепей

В Polkadot решения по управлению определяются количеством DOT, которое держат избиратели. Будет формальный механизм on-chain голосования, но он еще не доработан, последние обновления здесь . Помимо регулярного взвешенного голосования, Polkadot также использует идею совета для представления пассивных заинтересованных сторон. Этот совет представляет собой группу людей, начиная с 6 человек и добавляя один раз в две недели до 24 человек. Каждый из членов избирается путем одобрения, несмотря на то, что конкретные детали этого процесса управления еще не определены, это означает, что существуют способы изменения параметров в Relay Chain, такие как время блока, вознаграждение за блок и т.д., а также способы изменения правил членства для парачейнов. Например, процесс управления Polkadot может изменить количество требуемых DOT или механизм аукциона, чтобы стать парачейном. 

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

В Cosmos не существует единого процесса управления. Каждый хаб и зона имеют свои собственные процессы управления, и нет единого набора правил, которые применяются ко всей сети блокчейнов. Когда люди говорят о «управлении Cosmos», они имеют в виду управление Cosmos Hub, блокчейном, запущенным командой Tendermint. У Cosmos Hub есть набор правил, которые позволяют любому отправлять предложение, и держатели АТОМ могут голосовать за него. Это пример того, как выглядит предложение. Чтобы узнать больше о тонкостях процесса управления, эта запись в блоге Chorus One является хорошим руководством по управлению Cosmos Hub.

Различие № 3: Коммуникации между цепочками

Polkadot нацелен на передачу произвольных сообщений между парачейами. Это означает, что Parachain A может вызвать смарт-контракт внутри Parachain B, передавать токен между цепями. Cosmos, с другой стороны, фокусируется на передаче активов между цепочками, что является более простым протоколом. В настоящее время оба протокола связи не определены и не готовы к использованию. Более подробную информацию о двух спецификациях можно найти здесь: IBC (в Cosmos) и ICMP (в Polkadot).

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

Теоретически наличие единой общей безопасности является хорошим способом обеспечения связи между цепями. Однако, чтобы достичь этого, протокол должен иметь возможность перетасовывать валидаторы, назначенные каждому парачейну, часто и случайно. Это приводит к классической «проблеме доступности данных», которая заключается в том, что каждый валидатор должен постоянно загружать состояние для каждого парачейна, которому он назначен. Это одна из самых сложных проблем в Cosmos сегодня, и неясно, сможет ли ее решить Polkadot.

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

Cosmos использует совершенно другой подход к межцепочечному общению. Поскольку у каждого блокчейна есть свои валидаторы, вполне возможно, что есть зоны, которые являются «злыми» и имеют сговор валидаторов. Это означает, что когда одна зона хочет установить связь с другой зоной, зона A должна доверять Cosmos Hub и валидаторам в зоне B. Теоретически, это звучит неэффективно, потому что люди в зоне A должны будут искать валидаторы в зона B, прежде чем они решат отправить сообщение в нее.

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


Cosmos Network с токенами в нескольких зонах

Маленькие красные точки – токен ETM (видимо имеется ввиду Photon), родная валюта зоны Ethermint. Пользователи в зонах A, B и C хотят использовать ETM для некоторых приложений в этих зонах и доверяют зоне Ethermint, поэтому они отправляют сообщение IBC, которое передает ETM в эти зоны. Теперь предположим, что валидаторы Ethermint вступа