Char Network
Новая инфраструктура для децентрализованных приложений на Bitcoin
На летней конференции MIT Bitcoin Expo Джереми Рубин, разработчик Bitcoin Core и основатель “Экспо”, представил Char Network. Это новый малоизвестный протокол (информация о нём скупа даже на английском) для развертывания и запуска децентрализованных приложений и Layer 2 решений на Bitcoin. Как догадался один из слушателей, после презентации, Char это в первую очередь протокол координации.
Что такое Char Network?
Самыми простыми словами Char ставит своей задачей построить сеть залогов (staked bonds). Она должна обеспечить определённые функции:
Секвенировать приложения и управлять их состоянием, т.е. выполнять роль, аналогичную секвенсерам в роллапах Ethereum, быть наблюдателями событий в сети, чтобы предотвращать двойную трату.
Запускать Layer 2 решения в смысле координации момента запуска, без централизации.
Гарантировать безопасность через систему экономических стимулов, т.е. реализовать практически Proof-of-Stake.
Обеспечивать аудируемость всех операций через работу поверх Биткоина.
Ключевая технология
В основе Char лежит протокол цепочек аттестаций с залогами (Attestation Chain Bonding Protocol). Цепочка аттестаций это связанная последовательность подписанных сообщений, где каждое новое сообщение ссылается на все предыдущие. По сути, это блокчейн с подписями вместо proof-of-work.
В определении “кто первый” или “кто прав” в случае конфликта лежит механизм наказания: eсли оператор создает два конфликтующих сообщения, можно извлечь его приватный ключ и сжечь заблокированные средства. Это делает обман экономически невыгодным.
Всё в целом опирается на качества Sparse Merkle Trees или “разреженных деревьев Меркла. Они используются для хранения данных и позволяют не только доказывать наличие данных, но и их отсутствие, а также допускают построение механизмов авторизации.
Смарт-контракты Char
Смарт-контракты используют структуру данных ключ-значение, где ключ формируется путем хеширования кода смарт-контракта (H(code(Smart Contract))), а значение состоит из CallData, которая обеспечивает выполнение контракта. API смарт-контракта предоставляет две основные функции: process_update(CallData) для изменения состояния контракта и read(ReadMessage) для запроса данных.
ReadMessage может ссылаться на предыдущее сообщение, а CallData может содержать запросы внешних данных (по отношению к этому сообщению). Таким образом непрерывная цепочка “ключ-значение” может образовывать теоретические неограниченные последовательности для выполнения. В практике они будут ограничиваться доступными вычислительными ресурсами либо механизмами комиссий.
Децентрализованный майнинг-пул
Рубин продемонстрировал работу Char на примере децентрализованного майнинг-пула. Это особенно актуально, учитывая высокую централизацию в Bitcoin-майнинге, которую он упоминает в презентации. С Char децентрализованный пул может работать следующим образом:
Сначала майнеры запрашивают у контракта шаблон для майнинга
Они отправляют найденные частичные и полные блоки секвенсору
Секвенсор формирует новый коммитмент с данными о работе майнеров и обновляет состояние пула
Найденные блоки напрямую выплачивают средства майнерам
Такой пул является полностью некастодиальной системой. Все доли работы логируются публично, любой может проверить правильность распределения вознаграждений. Если секвенсор попытается обмануть, его залог будет конфискован.
Помимо майнинг-пулов, Char подходит для: роллапов и сайдчейнов, координации BitVM, установки мультисиг-кошельков при координации только через Биткоин, как провайдеры Ark, для DNS на Биткоине.
Будущее протокола
Текущая версия Char не требует “ковенантов” в Bitcoin, хотя их добавление улучшило бы масштабируемость и приватность. Клиент будет реализован внутри Bitcoin Core для работы в идеальной синхронизации с консенсусом Bitcoin, используя c-validation interface и P2P-слой Bitcoin для передачи сообщений. Данные хранятся на стороне клиента и полные узлы могут выбирать, какие приложения отслеживать благодаря структуре Sparse Merkle Tree.
Char Network находится в активной разработке. Команда работает над: улучшением эффективности через zero-knowledge proofs, публикацией технической документации (ожидалась к маю, но до сих пор не готова), созданием SDK для разработчиков.
Новый протокол открывает возможности для создания по-настоящему децентрализованных приложений без необходимости доверять централизованным операторам, то над чем в данный момент работают и в роллапах Ethereum, только закрывая глаза на текущую централизацию L2.
Поддержите проект 🔗 LN платежом 🔗
Или centralviola51@walletofsatoshi.com. Начните пользоваться LN кошельком типа Valet для Android, если у вас ещё нет кошелька с поддержкой “Молнии



