Эксперименты с браузерным узлом Cardano продвигаются в TypeScript и Haskell
Gerolamo создал второй блок в Cardano Preview, а отдельный прототип на Haskell следовал за цепью и отправил транзакцию из браузера. Эти два эксперимента приближают разные части инфраструктуры узла Cardano к устройству пользователя.
By SongMarketCap
Разработчики Cardano сообщили о новых результатах из двух независимых экспериментов с узлами. Harmonic Labs расширила тестирование Gerolamo за пределы пустого блока, а Seungheon Oh продемонстрировал выполнение стека узла на Haskell в браузере через WebAssembly. Оба проекта остаются экспериментальными, и ни один не подтверждает промышленного производителя блоков, работающего полностью внутри браузера.
Gerolamo создает второй блок в Cardano Preview
Gerolamo это альтернативная реализация узла Cardano, написанная на TypeScript и работающая через среду Bun. Harmonic Labs разрабатывает проект под руководством основателя Michele Nuzzi, исходный код доступен публично.
Первый блок, приписанный Gerolamo, был принят в Cardano Preview 12 сентября. Он был пустым и стал начальным тестом того, может ли альтернативная реализация произвести блок, принятый по правилам протокола Cardano.
Второй блок последовал 14 сентября и содержал три транзакции. По информации, опубликованной командой, в них были выполнение смартконтракта и сообщение в цепи. Тест таким образом продвинулся от пустого блока к блоку с транзакционной активностью.
Gerolamo также синхронизировал цепь Preview от генезиса до текущей вершины с валидацией данных цепи. Его серверная реализация поддерживает протоколы взаимодействия узла Cardano с узлом, необязательное локальное клиентское общение, Mithril bootstrap и подмножество функций API в стиле Blockfrost.
Доступная документация не описывает полный Praos leadership как завершенную часть проекта. Harmonic Labs не опубликовала полного технического описания процесса выпуска, использованного для двух блоков Preview. Сеть приняла блоки и команда приписала их Gerolamo, но публичные доказательства не устанавливают, что производитель блоков работал внутри браузера.
Cardano получает два разных подхода к браузерным узлам
Наряду с Gerolamo, Harmonic Labs разрабатывает Gerolamino, более легкую реализацию для браузеров и расширения для Chrome. Gerolamino это не тот же программный экземпляр, который произвел блоки Preview.
Публичная демонстрация позволяет браузеру общаться с Cardano relay через мини протоколы Ouroboros Handshake, ChainSync и BlockFetch. Он может следовать за заголовками и блоками, обрабатывать данные CBOR и использовать IndexedDB и WebWorkers для локального хранения и вычислений.
В настоящее время WebSocket to TCP мост соединяет браузер с внешним Preprod relay, поскольку веб приложения не могут напрямую открывать стандартные TCP соединения к сети Cardano.
Запланированная разработка включает поддержку Mithril для более быстрой начальной синхронизации, локальную индексацию UTxO и коммуникационный интерфейс, похожий на существующие стандарты кошельков Cardano. Такая модель может позволить веб приложениям проверять больше информации на устройстве пользователя вместо запроса каждого ответа у удаленного API.
Отдельно от Harmonic Labs разработчик Seungheon Oh продемонстрировал узел Cardano на Haskell, работающий внутри браузера через бэкенд GHC WebAssembly. Демонстрация включала слежение за вершиной цепи, отображение баланса ADA и отправку транзакции из браузера.
Cardano Hard Fork Working Group зафиксировала демонстрацию 15 сентября как развитие, связанное с диверсификацией узлов. Oh не опубликовал исходный код, и демонстрация не включала производство блоков. Прототип поэтому пока не может быть независимо проверен или подробно сопоставлен с промышленным Haskell cardano-node программным обеспечением.
Локальная верификация может изменить инфраструктуру dApp Cardano
Кошельки и децентрализованные приложения Cardano часто используют удаленные сервисы для доступа к данным блокчейна, поиска UTxO, проверки балансов и отправки транзакций. Такая инфраструктура упрощает разработку, но создает зависимость от поставщиков API, индексаторов и их постоянной доступности.
Функциональность узла в браузере может перенести часть этого процесса на устройство пользователя. Приложение может локально следовать за цепью Cardano, обрабатывать блоки и проверять используемую информацию до подготовки или отправки транзакции. Локальный доступ также может сократить число адресов и запросов данных, отправляемых централизованным API сервисам.
Для разработчиков такая архитектура может поддерживать приложения Cardano, которые сохраняют работоспособность, когда отдельный индексатор или бэкенд провайдер становится недоступным. Несколько независимо разработанных путей доступа могут повысить устойчивость приложений, когда они валидируют данные по тем же правилам протокола Cardano.
Подход также может позволить кошелькам и децентрализованным приложениям проверять UTxO и балансы ADA ближе к пользователю вместо восприятия удаленного сервиса как единственного источника состояния блокчейна. Gerolamo добавляет независимо разработанную реализацию на TypeScript, а работа Oh исследует, как устоявшийся стек на Haskell может работать через WebAssembly.
Текущие прототипы не устраняют необходимость во внешней инфраструктуре. Gerolamino по прежнему использует WebSocket мост и внешний relay, а более широкая локальная синхронизация должна учитывать ограничения браузера по хранению, памяти, пропускной способности и индексированию. Снимки Mithril, сетевые пиры и маршруты отправки транзакций также остаются частью архитектуры.
Публично продемонстрированный прогресс сейчас охватывает узел на TypeScript, который произвел блоки Preview, легкий узел в браузере с использованием мини протоколов Ouroboros и отдельный прототип на Haskell, способный следовать за цепью и отправлять транзакции. Промышленный relay или производитель блоков, работающий полностью внутри браузера, не задокументирован. Немедленное изменение уже ближе: приложения Cardano могут начинать переносить часть проверки блокчейна с удаленных сервисов на устройство пользователя.