Experimentos de nó de navegador da Cardano avançam em TypeScript e Haskell
Gerolamo produziu um segundo bloco na Cardano Preview, enquanto um protótipo Haskell separado acompanhou a cadeia e enviou uma transação a partir de um navegador. Os dois experimentos aproximam diferentes partes da infraestrutura de nós da Cardano do dispositivo do usuário.
By SongMarketCap
Desenvolvedores da Cardano relataram novos resultados de dois experimentos independentes de nós. A Harmonic Labs ampliou os testes do Gerolamo para além de um bloco vazio, enquanto Seungheon Oh demonstrou a execução no navegador da pilha de nó Haskell por meio de WebAssembly. Ambos permanecem experimentais e nenhum estabelece um produtor de blocos de produção operando inteiramente dentro de um navegador.
Gerolamo produz um segundo bloco na Cardano Preview
Gerolamo é uma implementação alternativa de nó da Cardano escrita em TypeScript e executada pelo runtime Bun. A Harmonic Labs está desenvolvendo o projeto sob a liderança do fundador Michele Nuzzi, com seu código fonte disponível publicamente.
O primeiro bloco atribuído a Gerolamo foi aceito na Cardano Preview em 12 de setembro. Ele estava vazio e forneceu um teste inicial para verificar se a implementação alternativa poderia produzir um bloco aceito pelas regras do protocolo da Cardano.
Um segundo bloco veio em 14 de setembro e continha três transações. Segundo informações publicadas pela equipe, elas incluíram a execução de um contrato inteligente e uma mensagem on chain. O teste portanto progrediu de um bloco vazio para um que transportava atividade de transações.
Gerolamo também sincronizou a cadeia da Preview desde a gênese até a ponta atual enquanto validava os dados da cadeia. Sua implementação de servidor oferece suporte a protocolos de nó para nó da Cardano, comunicação local opcional com clientes, bootstrap via Mithril e um subconjunto de funções de API no estilo Blockfrost.
A documentação disponível não descreve a liderança Praos completa como uma parte concluída do projeto. A Harmonic Labs não publicou um relato técnico completo do caminho de forja usado para os dois blocos da Preview. A rede aceitou os blocos e a equipe os atribuiu a Gerolamo, mas evidências públicas não estabelecem que o produtor de blocos operou dentro de um navegador web.
Cardano ganha duas abordagens diferentes de nó no navegador
Além de Gerolamo, a Harmonic Labs está desenvolvendo Gerolamino, uma implementação mais leve voltada para navegadores e uma extensão do Chrome. Gerolamino não é a mesma instância de software que produziu os blocos da Preview.
A demonstração pública permite que um navegador se comunique com um relay da Cardano por meio dos mini protocolos Ouroboros Handshake, ChainSync e BlockFetch. Ele pode seguir cabeçalhos e blocos, processar dados CBOR e usar IndexedDB e WebWorkers para armazenamento e computação locais.
Uma ponte de WebSocket para TCP atualmente conecta o navegador a um relay Preprod externo porque aplicações web não podem abrir conexões TCP padrão diretamente para a rede da Cardano.
O desenvolvimento planejado inclui suporte a Mithril para sincronização inicial mais rápida, indexação local de UTxO e uma interface de comunicação semelhante aos padrões existentes de carteiras Cardano. Esse modelo pode permitir que aplicações web verifiquem mais informações no dispositivo do usuário em vez de solicitar cada resposta a uma API remota.
Separadamente da Harmonic Labs, o desenvolvedor Seungheon Oh demonstrou um nó Cardano em Haskell executando dentro de um navegador por meio do backend WebAssembly do GHC. A demonstração incluiu acompanhar a ponta da cadeia, exibir um saldo em ADA e enviar uma transação a partir do navegador.
O Cardano Hard Fork Working Group registrou a demonstração em 15 de setembro como um desenvolvimento relacionado à diversidade de nós. Oh não divulgou o código fonte e a demonstração não incluiu produção de blocos. O protótipo portanto ainda não pode ser revisado de forma independente ou comparado em detalhe com o software de produção Haskell cardano-node.
Verificação local pode mudar a infraestrutura de dApps da Cardano
Carteiras e aplicações descentralizadas da Cardano frequentemente usam serviços remotos para acessar dados da blockchain, localizar UTxOs, verificar saldos e enviar transações. Essa infraestrutura simplifica o desenvolvimento mas cria dependências de provedores de API, indexadores e de sua disponibilidade contínua.
A funcionalidade de nó no navegador pode mover parte desse processo para o dispositivo do usuário. Uma aplicação poderia acompanhar a cadeia da Cardano localmente, processar blocos e verificar as informações que usa antes de preparar ou enviar uma transação. O acesso local também poderia reduzir o número de endereços e de solicitações de dados enviados a serviços de API centralizados.
Para desenvolvedores, essa arquitetura poderia dar suporte a aplicações Cardano que permanecem funcionais quando um indexador individual ou provedor de backend fica indisponível. Múltiplos caminhos de acesso desenvolvidos de forma independente podem fortalecer a resiliência das aplicações quando validam os dados de acordo com as mesmas regras do protocolo Cardano.
A abordagem também pode permitir que carteiras e aplicações descentralizadas verifiquem UTxOs e saldos de ADA mais perto do usuário em vez de tratar um serviço remoto como a única fonte do estado da blockchain. Gerolamo adiciona uma implementação em TypeScript desenvolvida de forma independente, enquanto o trabalho de Oh explora como a pilha Haskell estabelecida pode operar por meio de WebAssembly.
Os protótipos atuais não eliminam a necessidade de infraestrutura externa. Gerolamino ainda usa uma ponte WebSocket e um relay externo, enquanto uma sincronização local mais ampla deve levar em conta limitações de armazenamento, memória, largura de banda e indexação do navegador. Instantâneos Mithril, pares da rede e rotas de envio de transações também continuam parte da arquitetura.
O progresso demonstrado publicamente agora abrange um nó em TypeScript que produziu blocos na Preview, um nó leve no navegador usando mini protocolos Ouroboros e um protótipo Haskell separado capaz de acompanhar a cadeia e enviar transações. Um relay de produção ou um produtor de blocos operando inteiramente dentro de um navegador não foi documentado. A mudança imediata é mais estreita: aplicações Cardano podem começar a mover parte da verificação da blockchain de serviços remotos para o dispositivo do usuário.