January 13, 2023

ZetaChain

ZetaChain — первый и единственный в мире блокчейн, соединяющий все. Он упрощает переводы активов, доставку сообщений и вызовы смарт-контрактов между разными блокчейнами и уровнями — таким образом обеспечивая возможности для первых в своем роде омничейн-dApps (odApps), которые могут использовать ликвидность множества сетей и обновлять состояния всех подключенных сетей.

ZetaLabs позволяет вам принимать участие в развитии блокчейна ZetaChain, тестируя dApps с технологией омничейн, созданные на базе тестовой сети ZetaChain. Участники могут приглашать других присоединиться к тестированию различных продуктов в ZetaLabs, чтобы зарабатывать баллы ZETA, которые показывают ваш прогресс в роли тестировщика.

ZetaSwap

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

Узнайте, как создать собственную децентрализованную кроссчейн-биржу здесь.

Контракты сети:

  • Goerli
  • BSC Testnet
  • Polygon Mumbai

Тестовая сеть ZetaChain Athens — это полностью исследуемая сеть для разработчиков, позволяющая создавать и тестировать dApps, прежде чем вывести их в основную сеть. Периодически в ZetaChain будут технические паузы, так как она находится в стадии активной разработки. Хотя по мере обновления блокчейна со временем это может измениться, тестовая сеть будет служить платформой разработки для ZetaChain и dApp даже после запуска основной сети. Время от времени мы будем размещать в Twitter и Discord больше новостей ZetaLabs — о новых функциях и dApps, с которыми вы сможете взаимодействовать и помогать тестировать.

Вы можете подключить кошельки Metamask и Coinbase . Скоро мы добавим поддержку других кошельков!

Баллы ZETA — это способ отслеживать ваш прогресс как тестировщика в ZetaLabs, будь то количество приглашенных вами новых членов, ваши еженедельно транзакции или найденные ошибки, о которых вы сообщили.

Если ваша транзакция не проходит, в сети могут быть задержки или вы нашли ошибку! Пожалуйста, сообщайте обо всех обнаруженных проблемах в канале # 👌| support-squad в нашем Discord.

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

Community

Join the Zeta Guild - https://guild.xyz/zetachain

Twitter - https://twitter.com/zetablockchain

Discord - https://discord.com/invite/kjQBqcZtnh

Telegram - https://t.me/zetachainofficial

Reddit - https://www.reddit.com/r/zetablockchain/

ZetaChain — единственная децентрализованная платформа блокчейна и смарт-контрактов, созданная для совместимости с омниканальными сетями.

Добро пожаловать на вторую сессию Zeta Education🤖.

В этой сессии #ZetaEd мы вернемся к whitepaper с примером межцепочечного обмена до и после ZetaChain.


Сравнение обменов между блокчейнами

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

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

В настоящее время не существует НИ ОДНОГО децентрализованного, не требующего разрешения и публичного сервиса, который бы способствовал проведению общих атомарных транзакций (не только атомарного свопинга, но и произвольной логики) с участием нескольких блокчейнов.

Если бы у вас был блокчейн общего назначения, поддерживающий обмен сообщениями и смарт-контракты на всех цепочках, то межцепочечный обмен прошел бы гораздо более гладко. Давайте рассмотрим этот пример сейчас на примере ZetaChain 👇

ZetaChain - это децентрализованный блокчейн PoS с многосторонней схемой пороговой подписи (TSS - простой криптографический метод генерации распределенного ключа и подписи к нему). Валидаторы ZetaChain подтверждают достоверность событий/транзакций на Цепочке 1 и 2 (смарт-контракт Цепочки 2 вносит адрес TSS ZetaChain в белый список доверия). Это позволяет условно выполнять контракт цепочки 2 в зависимости от транзакций/сообщений из цепочки 1. К сообщениям можно прикреплять ценность в виде монеты ZETA (встроенная кросс-цепь), что упрощает передачу ценности.

С помощью TSS ZetaChain может хранить и управлять собственными активами на любой цепочке. Только благодаря передаче сообщений можно создавать такие важные приложения, как межцепочечные DEX, займы/кредитование и многоцепочечные NFT.

ZetaChain — это фундамент для будущего мультичейна. Новый блокчейн обеспечивает функциональность мультичейна без использования мостов или обернутых токенов и легкое развертывание omnichain-dApps, или odApps. Эти приложения могут управлять и связывать данные и ценности на всех платформах смарт-контрактов, а также на платформах, не связанных с смарт-контрактами, таких как Bitcoin и Dogecoin.

Давайте поговорим о мостах 🌉 — решения для создания мостов объединяют активы и создают риск атак.

ZetaChain — это первый блокчейн со «встроенной» функциональной совместимостью (передача стоимости без моста 👀) #ZetaEd #interoperability

Проще говоря, мосты — это популярный способ перемещения активов между блокчейнами. Они работают, сообщая и доказывая цепочке B, что определенная транзакция произошла в цепочке A. Давайте рассмотрим базовый сценарий одностороннего моста в Ethereum из Биткоина 👇

Когда пользователь Биткойн отправляет 1 BTC на адрес, в Ethereum выпускается один wBTC. Чтобы сделать это без доверия, смарт-контракт на Ethereum может проверить TX (транзакцию) в Биткойне и выпустить монету wBTC на Ethereum. BTCRelay и Rainbow Bridge — хорошие примеры ненадежных мостов.

Но это не единственный подход к передаче активов между сетями. Существует ряд стратегий с различными уровнями доверия и возможностями (дополнительную информацию см. в нашем техническом документе: https://bit.ly/Zetachainpaper).

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

В феврале 2022 г. мост-контракт Wormhole (кроссчейн-сервис) был взломан, и в результате одной из крупнейших DeFi эксплойтов они потеряли 320 млн долларов в wETH.

Итак, у нас есть несколько проблем:

  1. Обернутые активы и централизованные хранилища часто являются точками отказа, которые приводят к потерям в сотни миллионов долларов;
  2. Пользователи и разработчики разделены на соответствующие цепочки, что приводит к серьезной, растущей фрагментации.

Текущая экосистема:

В ZetaChain все средства, находящиеся в состоянии покоя, не подвергаются риску, поскольку отсутствует взаимозависимость через обертку/блокировку. Единственная (собственная) ценность, которая может проходить через цепочку, - это токен $ZETA, что значительно сокращает площадь атаки.

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

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

Если это не взорвет ваш мозг, мы поговорим о смарт-контрактах ZetaChain, которые могут напрямую хранить/управлять активами (и рассчитываться по транзакциям) на внешних цепочках в соответствии с предопределенной произвольной логикой (но об этом подробнее в другом #ZetaEd 😏).

Мы надеемся, что этот обзор мостов был вам полезен.

Механизмы верификации в блокчейне

Как узнать о прошлых событиях на #blockchain? Вот 1️⃣0️⃣1️⃣ механизм верификации блокчейна 🤓.

#zetaed#interoperability#omnichain#web3#fullnode#lightclient#merkletree#notarization#spv#hashfunction#utxo

Накопленные в прошлом события на блокчейне довольно важно знать. Они показывают свидетельства транзакций. Обратите внимание, что события и состояния блокчейна обрабатываются по-разному в разных цепочках⛓️.

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

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

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

A) Валидность: что блокчейн, которому соответствует полный узел, использует те же правила консенсуса.
B) Каноничность: все полные узлы в сети имеют единообразное представление о генезисной цепочке блоков. Другими словами, их блокчейны являются префиксами друг друга.

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

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

Одним из решений является так называемый "легкий клиент", который хранит минимальные данные о блокчейне, полагаясь на полные узлы для полных данных блокчейна (но вам нужно убедиться, что полные узлы честны 😇).

Биткойн решил эту проблему с помощью системы под названием SPV (простая проверка платежа). Проще говоря, это похоже на использование функции хэширования (MD5, SHA1, SHA256 и т. д.) для хэширования загруженного файла и сравнения хэша с надежным источником для проверки подлинности.

Хэш-функция:

  1. уникальна: даже изменение одного бита приведет к совершенно другому хэшу (коллизии хэшей редки);
  2. необратима: хэш-функция практически односторонняя: ее нельзя отменить.

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

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

В результате объем данных, который необходимо поддерживать легкому клиенту, пропорционален только количеству хэш-деревьев (обычно блоков), а не количеству транзакций (которое гораздо выше).

Таким образом, при использовании дерева Меркла легкие клиенты хранят цепочку заголовков блоков (а не данные всего блока) и могут проверить включение транзакции, если предоставлено краткое доказательство Меркла. Дерево Меркла выглядит следующим образом:

Чтобы проверить, что транзакция TD включен в блок, вы берете корневой хэш (HABCDEFGH), запрашиваете сеть о HD, и она возвращает HC, HAB и HEFGH. Дерево Меркла проверяет, что все учтено с помощью этих трех хэшей и что HD (единственный отсутствующий хэш) должен присутствовать в данных.

Давайте поговорим о моделях “бухгалтерского учета” блокчейна 🤓. Новый гибридный подход ZetaChain позволяет смарт-контрактам напрямую взаимодействовать с состояниями в любой внешней цепочке.

#zetaed#интероперабельность#omnichain#web3

Если вы собираетесь добиться универсальной поддержки смарт-контрактов на всех цепочках, то вам необходимо преодолеть:

  1. проблему асинхронности блокчейна (в отличие от смарт-контрактов в одной цепочке, таких как EVM);
  2. ограничения моделей транзакций блокчейна для поддержки межцепочечных dApps.

Исторически сложилось там, что существует 2 основные модели "бухгалтерского учета" для записи и изменения состояния в блокчейне: UTXO (вывод неизрасходованных транзакций), которая используется Биткойном, Ergo, Cardano и другими, и основанная на счетах, которая используется EVM.

Модель UTXO представляет глобальное состояние всех израсходованных и неизрасходованных выходных данных транзакций. Каждый вывод может быть привязан к событию транзакции с самого начала, а блокчейн функционирует как принятый реестр всех транзакций. Наглядно его можно представить в виде направленного ациклического графа (DAG) между адресами, ниже приведено сравнение моделей: UTXO - Вывод неизрасходованных транзакций (напр. Bitcoin) VS модель на основе аккаунта-счета (EVM-сети).

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

Ключевое различие между этими моделями - выразительность. Хотя высокая выразительность программирования на основе счетов позволяет легко создавать сложные dApps (AMM, ICO и т. д.), это достигается ценой снижения безопасности.

Так почему бы не объединить плюсы обеих моделей? Некоторые так и сделали. Ergo стала пионером модели расширенного UTXO, за которой последовала Cardano, но она не лишена серьезных перегрузок UTXO (завершенные транзакции, которые пытаются потратить один и тот же UTXO, терпят неудачу и должны ждать 1 блок и тратить новый UTXO).

ZetaChain представляет новый дизайн, который решает эту проблему: он использует UTXO для представления и отслеживания внешних транзакций блокчейна (рассматривается как синтетический UTXO), и использует смарт-контракты на основе учетных записей для логики и управления общими глобальными состояниями.

UTXO включает в себя количество сожженной монеты ZETA, количество другой монеты (например, BTC в сети Bitcoin, где невозможно выпустить ZETA coin) и скрипт msg (примерно эквивалентный сообщению или вызову функции в Ethereum).

Синтетическая модель UTXO позволяет ZetaChain ощутить преимущества подотчетности, простоты и масштабируемости, избегая при этом ключевых ограничений UTXO, которые заключаются в экспрессивности его скриптов и неудобстве в некоторых важных приложениях (например, одна транзакция на блок в AMM (автоматический маркет-мейкер)).

Рассмотрим гибридный поток UTXO-аккаунтов ZetaChain:

  1. Смарт-контракт ZetaChain запускает сообщение и генерирует событие, которое пытается потратить UTXO на ZetaChain.
  2. Затем это событие подхватывается подписавшими ZetaClient, и они подписывают транзакцию во внешней цепочке.
  3. ZVM и ZetaClient будут проверять определенные инварианты, один из которых заключается в том, что выходная ZETA должен быть равен входному ZETA в UTXO.
  4. После подтверждения и наблюдения за исходящей транзакции, UTXO помечается как израсходованная и удаляется из машины состояний. Если исходящая транзакция не удалась (недостаточно газа и т.д.), UTXO помечается как возврат, и возврат ZETA и/или связанных монет осуществляется по цепочке источника. Когда возврат подтвержден, UTXO удаляется из машины состояний.

Виртуальная машина Zeta Chain (ZVM) ограничена в некоторых ключевых аспектах для поддержки атомарности транзакций между блокчейнами и обеспечения безопасности. Мы обсудим это более подробно:

  1. Каждый UTXO может генерировать только одно выходное событие. По сути, только одна внешняя цепочка может обновить свое состояние в ответ на UTXO. Поскольку исходящие транзакции во внешних цепочках, как правило, не подлежат возврату (например, отправленные токены не могут быть возвращены обратно), множественные выходные события сделают невозможным возврат всей транзакции.
  2. Все переводы ценностей через блокчейн должны осуществляться в ZETA, потому что только монета ZETA находится под контролем системы ZetaChain и может быть возвращена (возмещена), если транзакция через блокчейн завершится неудачей.
Обратите внимание, что некоторые более сложные смарт-контракты, которые требуют нескольких выходных транзакций (например, должны отправляться в несколько цепочек), лучше всего записывать как многоступенчатые транзакции, где приложение само обрабатывает атомарность многоступенчатой транзакции.

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

Если вы разработчик, используйте этот примитив для создания мощных межцепочечных dApps в тестовой сети ZetaChain: https://docs.zetachain.com - мы здесь для совместной разработки с вами 💪.