Analisando a disponibilidade de dados modulares para pilhas OP no Celestia

Autor original: Javed Khan, blog celestia

Compilação do texto original: Lu Jue Lin

Introdução

Desde seu lançamento no ano passado, o OP Stack ganhou força significativa entre os desenvolvedores de rollup. Ele é adotado por desenvolvedores que criam novos rollups e por provedores de infraestrutura modular como Caldera e Conduit, permitindo que os desenvolvedores criem seus próprios rollups rapidamente.

Conforme declarado no anúncio do ano passado, a modularidade é um aspecto fundamental da visão do OP Stack:

Cada camada do OP Stack é descrita por uma API bem definida, preenchida por módulos nessa camada. [...] Quer trocar Ethereum por Celestia como uma camada de disponibilidade de dados? certamente! Quer executar o Bitcoin como a camada de execução? por que não!

A atualização rápida do Bedrock do Optimism modularizará a camada de execução e o sistema de prova do OP Stack, permitindo a compatibilidade com futuras provas de fraude e validade.

Inspirado por isso, o Celestia Labs tem se concentrado em impulsionar ainda mais a modularidade do OP Stack. Portanto, hoje, temos o prazer de anunciar o lançamento beta da Interface Modular de Disponibilidade de Dados (DA) do OP Stack, o primeiro OP Stack Mod do OP Labs a focar no feedback do desenvolvedor. Essa interface permite que os desenvolvedores definam camadas DA e herdem a segurança de qualquer blockchain que desejarem, seja Ethereum, Celestia ou Bitcoin.

Os desenvolvedores podem começar a experimentar hoje com uma versão do OP Stack que usa Celestia para DA e "se estabelece" no Ethereum. A Caldera lançará em breve a rede de teste Taro, que permite que desenvolvedores e usuários experimentem a primeira rede de teste pública do OP Stack usando Modular DA.

A camada de disponibilidade de dados é a base da arquitetura rollup, garantindo a disponibilidade dos dados necessários para verificar independentemente a cadeia rollup. Abaixo, exploramos os fundamentos da disponibilidade de dados na pilha OP e como a modularizamos para publicar e recuperar dados de L1 com interfaces DA bem definidas.

Disponibilidade de dados na pilha OP: hoje

Como o OP Stack lida com a disponibilidade de dados atual? Para nossos propósitos, nos aprofundamos em dois componentes básicos, o nó Rollup e o Batcher, conforme descrito abaixo.

Para uma compreensão mais ampla de como o resto do OP Stack funciona nos bastidores, confira a documentação do Optimism.

Nó de acúmulo

Os nós rollup são os componentes responsáveis por bifurcar a cadeia L2 correta dos blocos L1 (e seus recibos associados). Um nó rollup recupera blocos L1, filtra transações de dados (geralmente na forma de calldata da transação) e deriva a cadeia L2 correta desses dados.

Batcher - remetente do lote

Enviadores de lote, também conhecidos como processadores de lote, são entidades que enviam dados do classificador L2 para L1 para uso por validadores. Tanto o nó rollup quanto o batcher trabalham em um loop de modo que os dados do bloco L2 recém-submetidos pelo batcher sejam recuperados de L1 pelo nó rollup e usados para derivar o próximo bloco L2.

Cada transação enviada por um programa em lote contém calldata, que são dados do sequenciador L2 divididos em bytes chamados quadros, o nível mais baixo de abstração para dados no Optimism.

Interface DA modular para OP Stack

Ao criar a interface DA modular para o OP Stack, nosso objetivo era simples: permitir que os desenvolvedores de rollup especificassem qualquer blockchain como sua camada de disponibilidade de dados, seja Ethereum, Celestia ou Bitcoin. Na ausência de tal interface, cada integração de uma nova camada DA pode exigir que os desenvolvedores implementem e mantenham uma ramificação separada do OP Stack.

O OP Stack já inclui abstrações especificando L1;Chain e L;2C;hain na base de código, permitindo modelar uma nova interface independente de blockchain para cadeias de disponibilidade de dados, que chamamos de DAChain.

Usando a interface definida abaixo, os desenvolvedores podem implementar o DAChain para ler e gravar dados de qualquer blockchain subjacente ou até mesmo de um back-end centralizado como S;3.

Resolvendo a disponibilidade de dados modulares de pilhas OP no Celestia

Estágio de escrita

O exemplo a seguir de como escrever uma implementação Celestia da interface descreve a integração com o programa em lote:

SimpleTxManager.send, a função responsável por criar e enviar a transação real, é modificada para chamar WriteFrame para escrever o quadro no Celestia e retornar uma referência.

A referência é então enviada como calldata para o endereço da caixa de entrada do lote no lugar dos dados de quadro usuais.

Resolvendo a disponibilidade de dados modulares da pilha OP no Celestia

Fase de leitura

Aqui está uma visão geral da implementação do Celestia da interface que se integra com o nó rollup:

DataFromEVMTransactions é a função responsável por retornar os dados do quadro da lista de transações. Ele é modificado para usar a referência de quadro recuperada dos dados de chamada da caixa de entrada do lote para realmente buscar o quadro e anexá-lo aos dados de retorno.

Resolvendo a disponibilidade de dados modulares da pilha OP no Celestia

Observe que a chamada para NamespacedData retorna uma matriz de fatia de byte de todos os blobs enviados no BlockHeight fornecido, portanto, retornamos apenas o TxIndex no qual estamos interessados.

Integre o Celestia como camada DA

Resolvendo a disponibilidade de dados modulares da pilha OP no Celestia

Diagrama mostrando a arquitetura da pilha OP em comparação com a integração da pilha Celestia + OP.

Com algumas pequenas modificações no nó Rollup e no programa em lote, podemos fazer o OP Stack usar o Celestia para DA.

Isso significa que todos os dados necessários para bifurcar a cadeia L2 podem ser disponibilizados no Celestia como dados de blob local em vez de serem publicados no Ethereum, embora uma pequena referência de quadro de tamanho fixo ainda seja publicada no Ethereum como dados de chamada de programa em lote. A referência de quadro é usada para procurar o quadro correspondente no Celestia usando o ;celestia-node; light node.

Como integrar e operar?

Estágio de escrita

Conforme mencionado acima, o programa em lote envia os dados do sequenciador L2 como bytes chamados quadros para o endereço do contrato da caixa de entrada do lote no Ethereum L1.

Preservamos as transações batcher e calldata para garantir a ordem dos quadros, mas substituímos os quadros em calldata por referências de quadro de tamanho fixo. O que é um quadro de referência? É uma referência a uma transação de dados do Celestia que incluiu dados de quadro com sucesso como parte do Celestia.

Fazemos isso incorporando um nó de luz do nó celestia no serviço de lote. Sempre que houver um novo lote esperando para ser enviado, primeiro enviamos a transação de dados para Celestia usando light nodes e, em seguida, enviamos apenas referências de quadro em batchercalldata.

Fase de leitura

Na fase de leitura, fazemos o oposto, ou seja, usamos a referência de quadro no calldata da transação em lote para analisá-lo e recuperar os dados de quadro reais correspondentes do Celestia. Da mesma forma, incorporamos um nó de luz celestia no nó rollup para consultar suas transações.

Ao bifurcar a cadeia L2, os nós de rollup agora leem dados de nós leves de forma transparente e podem continuar construindo novos blocos. Os nós leves baixam apenas os dados enviados pelo rollup, em vez de baixar toda a cadeia como Ethereum.

Panorama

As provas de fraude são uma parte fundamental do roteiro pós-Optimism da Bedrock, e queremos explorar a atualização de nossa integração OP Stack x Celestia para usar provas de fraude na rede principal Ethereum.

Para fazer isso, podemos aproveitar o Quantum Gravity Bridge (QGB), que retransmite provas de DA de cadeia cruzada para Ethereum para permitir a verificação na cadeia de que dados agregados estão disponíveis no Celestia para que dados agregados possam ser usados em provas de fraude. Isso permitirá que o OP Stack Rollup aproveite diretamente a garantia DA fornecida pela Celestia.

Ver original
O conteúdo serve apenas de referência e não constitui uma solicitação ou oferta. Não é prestado qualquer aconselhamento em matéria de investimento, fiscal ou jurídica. Consulte a Declaração de exoneração de responsabilidade para obter mais informações sobre os riscos.
  • Recompensa
  • Comentar
  • Partilhar
Comentar
0/400
Nenhum comentário
  • Pino
Negocie cripto em qualquer lugar e a qualquer hora
qrCode
Digitalizar para transferir a aplicação Gate.io
Novidades
Português (Portugal)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)