Quem não é do mundo da programação não deve estar familiarizado com os termos “monolítico” e “modular”, mas, na prática, estamos falando de estrutura de desenvolvimento. No caso de Blockchains esse conceito é um pouco diferente, pois define escalabilidade e não propriamente a estrutura do código em si.
Blockchain Monolítica
Quando estamos falando de Blockchain, o conceito de monólito está associado ao processo linear de geração e validação de blocos de forma sequencial, serializada como o processo de fabricação de um produto, em que um bloco somente é criado quando o anterior já foi processado. Assim, a estrutura de ordenação dos blocos segue uma numeração linear, incremental. As Blockchains mais antigas, como a do Bitcoin e a própria Ethereum, que ainda está em atividade, são desse tipo.
Inclusive, estou publicando uma série de vídeos em meu canal, em que crio uma Blockchain rudimentar monolítica. Você pode encontrá-los nessa playlist.
O que ocorre nesse tipo de Blockchain é que a possibilidade de erros, em termos de sincronicidade dos Nodes, é muito pequena e, em caso de Fork, a rede rapidamente retorna a seu estado original no próximo bloco, normalmente utilizando Proof Of Work. Em contrapartida, num cenário de alta demanda da rede, a fila de processamento pode acumular muitas transações e, em caso de precificação dinâmica, como é no caso da rede Ethereum, o valor do GAS sobe a patamares impagáveis, até que a rede volte a ter uma quantidade mais baixa de tráfego.
Outro ponto importante a entender, no caso de Full Nodes desse tipo de Blockchain, os dados tendem a crescimento exponencial ao longo prazo e manter os arquivos de registro dessa rede irá requerer uma grande quantidade de armazenamento.
Blockchain Modular
A versão “2.0” dessas Blockchains de primeira geração, são algoritmos multichain, ou seja, múltiplas Blockchains interligadas por meio de uma rede, que fica responsável por consolidar de fato as transações que estão sendo processadas de forma paralela, dentro de várias Shards. A versão 2.0 do Ethereum tem essa premissa, redes como Solana e Pokadot também seguem princípios similares. Normalmente essas redes são validadas por meio de Proof Of Stake, visando otimizar a escala e reduzir taxas da rede, por outro lado abre mão de descentralização e segurança, já que PoS é menos seguro e mais centralizado do que PoW. Sobre esse tema eu já falei bastante em posts antigos.
Inicialmente, a rede ETH2.0 está planejada para iniciar com 64 shards, podendo ser escalada “infinitamente” caso necessário, para baratear os custos das transações e, ao mesmo tempo, realizar mais validações em paralelo. Por outro lado, esse tipo de arquitetura tem o risco alto de uma falha de sincronia entre os Nodes, e pode acabar criando um Hard Fork da Blockchain a um ponto irreversível. Para contornar esse possível problema, os desenvolvedores criaram formas de desligar e até mesmo alterar a sequência de blocos, caso seja necessário, o que, na minha humilde opinião, elimina o fator descentralização por completo, já que, por exemplo, caso o gestor da rede venha a receber ordens judiciais demandando uma pausa na rede, em teoria seria possível uma intervenção direta do Estado em uma rede “descentralizada”.
Recentemente eu escrevi um post falando sobre o sistema de Shards e Rollups, vou deixar o post fixado para quem tiver interesse técnico sobre o tema:
Opinião sobre o tema
Ambas as arquiteturas possuem pontos positivos e pontos negativos, eu acredito que depende muito do tipo de consistência que se pretende com o projeto. Honestamente, quando falamos em criptomoedas como um possível ativo, funcionando como reserva de valores e investimentos, eu prefiro soluções voltadas à segurança, como é o caso do Bitcoin, uma estrutura sólida, testada com o tempo e, até hoje inviolável, delegando soluções de escala para uma segunda camada e ignorando totalmente a importância de escalabilidade no processo. A Blockchain do Bitcoin tem como único objetivo transacionar saldo da moeda de uma carteira para outra, não possui Smart Contracts, portanto é menos suscetível a falhas e invasões.
Quando o foco é entregar uma rede rápida e barata, voltada a um ecossistema de aplicações utilizando Smart Contracts, que não se preocupam com descentralização e segurança como pilares principais, faz certo sentido optar pelo modelo semelhante ao ETH 2.0. Agora, esse papo de sustentabilidade por que a mineração usa “energia suja” é totalmente marketing, pois essa premissa é falsa. Honestamente, ideologias deveriam ficar de fora dessa equação, o Vitalik Buterin tem se mostrado um excelente cientista, mas um péssimo gestor, levando o Ethreum a se tornar um projeto questionável em longo prazo. Pessoalmente, acredito que o posto de segunda criptomoeda mais valiosa do mundo tem seus dias contados.