Ethereum é uma das histórias de sucesso de sucesso do blockchain, usada por milhões, abrigando milhares de aplicativos descentralizados e gerenciando bilhões de dólares em fundos. O que é impressionante é que esse sucesso foi alcançado apesar de alguns problemas sérios com sua arquitetura monolítica, o que causa grandes problemas de escalabilidade que frequentemente deixam sua rede paralisada por tráfego congestionado e taxas altíssimas.

O sucesso do Ethereum levanta a questão: o que aconteceria se pudéssemos realmente construir um blockchain sem esses problemas de escalabilidade? Até onde a indústria de criptomoedas iria se não estivesse sendo retida? É uma questão que a indústria espera que em breve seja capaz de responder com o advento dos blockchains modulares.

Atualmente, a maior parte das tarefas principais, como processamento de transações, consenso e disponibilidade de dados, ocorrem na própria cadeia Ethereum. O resultado é que seus nós são regularmente sobrecarregados. Eles são pressionados a prestar serviço, verificando transações, disponibilizando dados e mantendo todo o histórico de blocos, e essas demandas têm um impacto extremamente negativo em sua eficiência.

Os blockchains modulares visam resolver isso dividindo as funções principais em várias camadas de blockchain separadas, reduzindo a pressão sobre cada uma delas para torná-las mais eficientes.

O que são blockchains modulares?

O conceito básico de arquiteturas de blockchain modulares envolve o desvio dos vários trabalhos que os blockchains fazem em camadas distintas – então haverá uma cadeia para execução, uma para consenso, outra para disponibilidade de dados e assim por diante. Essa composição modular estabelece a base para maior escalabilidade, já que cada componente do blockchain só precisa lidar com uma tarefa específica, independentemente das outras.

A redução da carga não só ajuda, mas também significa que cada camada pode ser melhor otimizada para a tarefa específica que ela precisa realizar.

Isso é diferente de blockchains monolíticos, que forçam todas as funções principais de um blockchain nos mesmos nós. Em vez de fazer isso, ele distribui todas as tarefas que devem ser executadas em camadas otimizadas de nós para que eles possam se concentrar especificamente na função e fazê-la mais rápido do que antes.

Uma vantagem fundamental dessa abordagem é que os desenvolvedores podem criar combinações muito específicas de camadas de blockchain que atendem às necessidades particulares de seus aplicativos descentralizados. Pode ser comparado a construir um blockchain a partir de blocos de Lego. Por exemplo, um desenvolvedor pode parear a camada de disponibilidade de dados mais adequada e otimizada, como 0G, com uma camada de execução altamente eficiente como FuelVM, e uma camada de validação segura como EigenLayer, que herda a forte segurança do Ethereum por meio de retomada líquida.

Ao misturar e combinar camadas modulares de blockchain dessa forma, os desenvolvedores podem criar uma arquitetura mais flexível que atinge o maior rendimento possível para seu caso de uso específico e se beneficiar de maior eficiência e escalabilidade do que qualquer blockchain monolítico pode fornecer.

A abordagem modular é uma alternativa poderosa para construir um blockchain personalizado do zero, que é o que alguns desenvolvedores mais ambiciosos fizeram, permitindo que os desenvolvedores se beneficiem de camadas de desempenho altamente otimizadas enquanto compartilham a segurança de redes mais estabelecidas.

Componentes modulares de blockchain

Embora existam todos os tipos de possibilidades para misturar e combinar várias camadas, um blockchain modular quase sempre envolverá juntar quatro componentes básicos. O conceito é uma revolução arquitetônica que muitos acreditam que superará o modelo tradicional de tamanho único para redes descentralizadas.

Os quatro componentes básicos incluem uma camada de execução, que é a camada primária ou fundamental, onde as transações dos usuários são enviadas e onde eles interagem com dApps por meio de contratos inteligentes. Essas interações são o que desencadeiam “transições de estado”, como a atualização de saldos e contas on-chain.

Ao separar a camada de execução de tarefas como consenso, transações e interações podem ser realizadas fora da cadeia, usando técnicas como ZK-Rollups ou Optimistic Rollups, permitindo um processamento mais eficiente (mais rápido e mais barato).

O segundo componente principal é a camada de liquidação, que realiza o trabalho de liquidar todas as transações que foram descarregadas nesses rollups. Ela faz isso processando suas provas de transação. Essa tarefa envolve validar estados de transação, gerenciar provas de fraude e resolver quaisquer disputas que possam surgir, especialmente no caso de Optimistic Rollups.

A terceira é a camada de consenso, que pode ser uma sidechain baseada em rollup ou alguma outra arquitetura, e é responsável por garantir que uma maioria necessária de nós concorde com o estado do blockchain. Ela faz o trabalho de agrupar várias transações para serem liquidadas como uma e deve garantir que cada uma seja válida. Ela também deve concordar com a ordem em que essas transações são processadas.

Uma vantagem de ter uma camada de consenso é que ela fornece aos desenvolvedores mais flexibilidade sobre o quão descentralizados eles querem que seus dApps sejam, já que eles podem configurar o número de validadores envolvidos.

Finalmente, todo tipo de dApp precisa de uma camada de disponibilidade de dados, que garante que todos os dados necessários para validar transações e processar interações de contratos inteligentes sejam disponibilizados para todos os outros participantes de uma rede. Dessa forma, ele permite que todos os dados essenciais on-chain sejam verificados rapidamente por qualquer pessoa que use ou participe da rede. As camadas de disponibilidade de dados se tornaram especialmente populares com dApps que visam aumentar sua eficiência eliminando a necessidade de depender do próprio Ethereum para fornecer disponibilidade de dados.

O que a arquitetura modular traz para a mesa?

É fácil entender por que dividir essas tarefas em camadas separadas pode aumentar a eficiência geral dos dApps. Os blockchains modulares estão emergindo rapidamente como uma solução atraente para os problemas de escalabilidade no Ethereum e outras redes descentralizadas. No caso do Ethereum, isso significa que a mainnet altamente congestionada pode se concentrar apenas na execução de transações e produção de blocos, e na manutenção do consenso, com liquidação, consenso e disponibilidade de dados, todos realizados em outro lugar. É como empregar pessoas separadas para lidar com as várias tarefas em uma cozinha, como preparar ingredientes, cozinhá-los e lavar os pratos, em vez de ter um único funcionário fazendo tudo.

Além de permitir que as tarefas sejam processadas mais rapidamente, isso também significa custos mais baixos, pois os rollups podem acessar dados verificados sem fazer chamadas caras para a mainnet Ethereum. Além disso, atualizações e melhorias focadas na disponibilidade de dados podem ser iniciadas separadamente, sem causar nenhuma interrupção na mainnet.

Como exemplo, um desenvolvedor que busca construir uma plataforma de troca descentralizada de alto desempenho pode empregar ZK-rollups como uma camada de execução para processamento eficiente de transações off-chain, e usar Ethereum para consenso e liquidação para se beneficiar de sua segurança. Finalmente, eles podem usar uma camada de disponibilidade de dados especializada, como EigenDA ou 0G, para acesso mais rápido e econômico ao armazenamento de dados off-chain.

Corrigindo a disponibilidade de dados para acesso de alta velocidade

Houve algumas críticas aos blockchains modulares devido às complicações de segurança e às maiores suposições de confiança que surgem de ter uma arquitetura de rede mais fragmentada. Mas nada disso impediu que avanços significativos fossem feitos.

De fato, o consenso geral é que os benefícios de uma abordagem modular superam os riscos. Nos últimos 12 meses, a ideia de blockchains modulares realmente pegou e há vários projetos trazendo o sonho de maior escalabilidade para o reino da realidade.

No espaço de disponibilidade de dados, uma das iniciativas mais promissoras é a rede 0G, que é focada em fornecer acesso de dados de alta velocidade e altamente seguro para redes descentralizadas. Ela tem como objetivo fornecer uma taxa de transferência rápida de até 50 Gbps, o que melhora muito a taxa de 1,5 Mbps do Ethereum quando usada como uma camada de disponibilidade de dados.

A 0G está construindo sua camada de disponibilidade de dados para dar suporte a uma nova geração de jogos baseados em blockchain e aplicativos de inteligência artificial que exigem um pipeline de dados extremamente rápido e confiável. Se tais aplicativos não tiverem uma taxa de transferência rápida e eficiente, eles não conseguirão igualar o desempenho de seus equivalentes Web2 e verão seus custos de transação aumentarem muito além do que muitos usuários estariam dispostos a pagar.

O fundador Michael Heinrich disse ao TechCrunch que, em última análise, a 0G pretende atingir “capacidade infinita”. Então, assim como a AWS permite que os desenvolvedores criem quantos servidores eles precisarem para garantir um desempenho de aplicativo extremamente rápido, a 0G será capaz de criar quantas redes de consenso eles precisarem.

Momentum em blockchains modulares

Enquanto isso, houve desenvolvimentos promissores em toda a pilha de blockchain modular. A Fuel Labs é pioneira no conceito de máquinas virtuais paralelizadas na camada de execução, enquanto a Optimism fez avanços significativos em áreas como sharding, sequenciamento descentralizado e verificação incentivada.

O próprio Ethereum também está contribuindo para a modularidade do blockchain. Como parte de seu roteiro de desenvolvimento pós-fusão, ele está trabalhando para criar camadas de liquidação e disponibilidade de dados separadas, mas unificadas. Uma de suas ideias mais promissoras é o conceito de “danksharding”, que está trabalhando para evoluir os shards de dados L1 do Ethereum e o blockspace em um “mecanismo de disponibilidade de dados” separado, abrindo caminho para rollups de Camada 2 para implementar transações de baixo custo e alto rendimento.

Outro projeto interessante é o Celestia, cuja implementação da camada de execução também pode ser usada como uma camada de disponibilidade de dados. Ele está estabelecendo a base para alternativas às máquinas virtuais baseadas em EVM, como WASM, Starknet e VMs baseadas em FuelVM. Ao compartilhar a disponibilidade de dados com uma variedade de camadas de execução, o Celestia torna possível para os desenvolvedores criarem pontes minimizadas pela confiança entre clusters que desbloqueiam a composibilidade e a interoperabilidade entre ecossistemas e cadeias cruzadas.

O projeto Volitions da Starkware apresenta uma solução convincente para o dilema da disponibilidade de dados on-chain e off-chain. Com ele, os desenvolvedores e usuários de dApp poderão escolher se desejam enviar seus dados de transação off-chain, onde podem ser processados ​​mais rapidamente, ou mantê-los on-chain, onde são mais seguros.

Até mesmo o Bitcoin provavelmente se beneficiará da modularização. Um projeto chamado Babylon está trabalhando em um protocolo que tornará possível fazer stake de BTC para melhorar a segurança de appchains dentro do ecossistema Cosmos e, mais tarde, estender isso a outros blockchains de proof-of-stake.

As perspectivas para blockchains modulares

Embora muitos dos projetos acima mencionados ainda sejam ideias muito incipientes, a velocidade impressionante com que progrediram sugere que o futuro do blockchain tem mais probabilidade de ser modular do que monolítico.

Os blockchains modulares não estão isentos de problemas, no entanto. Juntar vários componentes diferentes como se fossem Lego pode criar algumas dores de cabeça para os desenvolvedores. Com os blockchains modulares, a segurança, em última análise, repousa na camada de liquidação subjacente, mas os desenvolvedores precisarão tomar cuidado para não criar uma situação em que uma falha de uma camada cause problemas nas outras camadas.

Um segundo desafio pode envolver custos. Otimizar cada camada traz uma melhor experiência para os usuários, mas tem um custo de maior complexidade, com a necessidade de criar mecanismos para gerenciar fraudes e provas de validade se mostrando um desafio significativo.

Se os blockchains modulares forem bem-sucedidos, a responsabilidade recai sobre os desenvolvedores para garantir que tudo se encaixe perfeitamente para que seus dApps simplesmente “funcionem”.