Como o problema de escalabilidade do Blockchain pode ser resolvido
No momento, é seguro afirmar que o problema de escalabilidade do blockchain ainda não foi totalmente resolvido. No entanto, há um progresso significativo na exploração de soluções para as falhas relacionadas à velocidade, taxas de transação e segurança, que afetam a escalabilidade.
De acordo com um estudo realizado pela Tata Communication no ano passado, 44% das empresas pesquisadas indicaram que haviam adotado a tecnologia blockchain. No entanto, o mesmo estudo também identifica que a falta de resolução tem emergido como um gargalo para a adoção do blockchain, bem como seus usos práticos.
Qual é a situação atual do problema de escalabilidade do Blockchain?
É essencial destacar como esse desafio se manifesta em uma situação do mundo real antes de destacar as soluções que estão sendo exploradas por diferentes partes interessadas. Caracteristicamente, a taxa de transferência das redes blockchain depende de dois parâmetros;
- O tamanho do bloco (B) – o número de bytes que podem conter transações em cada bloco
- O intervalo de tempo entre blocos (T) – o tempo médio necessário para a rede minerar um bloco
No caso do Bitcoin, B = 1 MB e T ~ 600 segundos. Isso significa que, em média, a rede BTC permite cerca de três transações por segundo. Consequentemente, o rendimento do sistema pode ser aprimorado por meio de duas estratégias;
- Aumento do tamanho do bloco para que suporte mais transações,
- Diminuição do intervalo de tempo entre blocos, de modo que estes sejam minerados em uma taxa mais rápida
Então, por que a escalabilidade do blockchain ainda se apresenta como um grande desafio se já conhecemos estratégias para solucioná-la? O real desafio surge da natureza distribuída do blockchain.
À princípio, se blocos e transações fossem propagados em tempo real entre os nós, vários blocos poderiam ser extraídos rapidamente até atingir o teto de unidades de processamento dedicadas e até esgotar os arrays de armazenamento em flash. No entanto, na realidade, nós de blockchain estão espalhados por todo o globo. Por esse motivo, o próprio sistema de blockchain é a fonte do problema de escalabilidade.
Essencialmente, os nós em uma rede interagem em um sistema ponto a ponto. Esse tipo de configuração interfere no objetivo final que alcançar uma comunicação de alto rendimento e baixa latência. Por que isso acontece? As informações são transmitidas de um nó para o próximo; isso quer dizer que vários saltos são necessários para garantir que os dados se movam por todo o sistema. Considerando que os participantes de uma rede não confiem uns nos outros, as informações que estão sendo transferidas devem ser autenticadas independentemente a cada salto. Essa validação envolve uma operação criptográfica em cada salto, o que aumenta a latência e afeta a taxa de transferência negativamente.
A variação de desempenho dos nós em uma rede blockchain é normalmente alta. Portanto, um único nó lento no canal pode diminuir a taxa de propagação.
Os participantes em uma configuração ponto a ponto são criados aleatoriamente. Sua estrutura prejudica a transferência ideal de informações, resultando em um cenário no qual os dados se movem por canais subótimos no sistema.
Quais são as soluções para o problema de escalabilidade do Blockchain?
Geralmente, os projetos se enquadram em quatro grandes categorias;
- Soluções de primeira camada on-chain
- Soluções de segunda camada off-chain
- Algoritmos de consenso escaláveis
- Livros-razão distribuídos
Soluções de primeira camada
Esses projetos são focados em fazer alterações na base do código do blockchain real. Este aspecto explica sua descrição como soluções on-chain. Soluções de primeira camada envolvem o aprimoramento dos principais recursos e atributos do blockchain. O aumento do limite do tamanho do bloco de 1 MB para 10 MB ou a redução da duração da geração do bloco de 10 para 5 minutos representam soluções on-chainpotenciais.
No entanto, é vital reconhecer o fato de que qualquer modificação estrutural na propriedade de um blockchain exige um hard fork. Com isso em mente, vamos examinar alguns dos principais exemplos de soluções on-chainpara o desafio da escalabilidade. Eles incluem;
Testemunha segregada (SegWit); esta é uma atualização de protocolo para Bitcoin que altera a forma como os dados são armazenados. Primeiramente, ao eliminar a assinatura virtual
que valida a propriedade e acessibilidade dos fundos do remetente para cada transação, ele abre espaço adicional e capacidade para transações extras a serem realizadas nos blocos de capacidade de 1 MB do Bitcoin. É essencial observar que os dados de assinatura consomem cerca de 70% do espaço de uma transação. Sua remoção economiza espaço significativo, o que permite a inclusão de mais transações no bloco. Essa estratégia já está em uso para facilitar as transações envolvendo a Litecoin.
Sharding; Nesse caso, o blockchain é dividido em componentes pequenos e controláveis, chamados de shards, que funcionam simultaneamente. Cada fragmento é responsável pela execução de transações dentro do grupo, que posteriormente aprimoram a saída de processamento na rede. Isso elimina a possibilidade da rede ser restringida pela velocidade de nós individuais. Espera-se que esta solução seja implementada no Ethereum uma vez que a rede adote o modelo Proof-of-Stake.
Hard Fork; Embora seja uma necessidade ao aplicar soluções em cadeia, esse tipo denota hard forks que resultam em moedas novas e, na maioria dos casos, concorrentes. Hard forks acontecem quando uma seção transversal da comunidade discorda da comunidade central em certos problemas e opta por se separar implementando mudanças estruturais na base de código subjacente, implementando uma nova criptomoeda. Os principais exemplos de tais forks incluem Bitcoin Cash e DASH.
Soluções de segunda camada
Essas estratégias descrevem protocolos secundários desenvolvidos no topo do blockchain principal. Como tal, eles fornecem uma segunda camada na qual as transações são descarregadas para conservar espaço e minimizar o congestionamento na blockchain primária. Exemplos incluem;
Lightning Network; desenvolvida para resolver o problema de escalabilidade no Bitcoin, esta solução integra recursos de contrato inteligente no topo do blockchain do Bitcoin. Consequentemente, facilita o desenvolvimento de canais privados fora da cadeia que podem realizar transações em tempo real a custos reduzidos. Como essa solução possibilita que as transações ocorram entre duas pessoas, ela elimina a necessidade de transmiti-las para a rede pública de blockchain até que as partes envolvidas decidam pelo fechamento do canal. Isso elimina as taxas de mineração exigidas para validadores de transações e tempo de confirmação de bloqueio.
Raiden Network; basicamente, essa solução é o equivalente da Ethereum para o Lightning Network do Bitcoin. Os canais fora da cadeia são chamados de canais de estado.
Plasma; Uma solução de segunda camada para problemas de escalabilidade Ethereum caracterizada pelo uso de cadeias secundárias originadas da blockchain pai. Cada cadeia ‘filha’ serve como uma blockchain autônoma que lida com suas transações enquanto aproveita a segurança da blockchain pai subjacente.
Trinity; semelhante a Raiden e Lightning Networks, esta é uma solução off-chain construída no blockchain NEO.
Algoritmos de consenso escaláveis
Vários projetos estão desenvolvendo mecanismos de consenso que simplificam a obtenção de consenso para facilitar a escalabilidade aprimorada e o processamento de transações. Alguns dos algoritmos de consenso que podem ser escalados incluem;
Prova de participação delegada (DPoS); ele é descrito como semelhante à democracia política no sentido de que os detentores de tokens elegem delegados que validam as transações na rede em nome de outros participantes. O DPoS funciona como uma estrutura cooperativa em vez de um sistema concorrente, como PoW e PoS. Portanto, blockchains DPoS são executados mais rápido do que os blockchains públicos convencionais.
Tolerância a falhas bizantinas; Um dos principais desafios da computação distribuída é o problema dos generais bizantinos. Esse conceito faz alusão ao fato de que computadores conectados em um sistema descentralizado e distribuído nunca podem ter certeza absoluta de que todos os computadores estão exibindo o mesmo tipo de informação. Portanto, a tolerância à falha bizantina garante que o consenso seja realizado independentemente da existência de atores antagônicos dentro da rede.
Prova de autoridade; um mecanismo de consenso baseado em reputação, por meio do qual nós ou participantes escolhidos autenticam as transações na rede. Ter nós servindo como administradores reduz o tempo necessário para chegar a um consenso.
Livros-razão distribuídos
Blockchains compreendem uma subseção da tecnologia de Registro Distribuído. No entanto, existem outros tipos de livros-razão distribuídos que não empregam uma abordagem de blockchain para organizar dados. Por exemplo, Directed Acyclic Graphs representa um desenvolvimento fascinante em DLT que não utiliza a estrutura de dados de blockchains convencionais.
Nesse caso, as transações são realizadas de forma independente e não seguem procedimentos padronizados. Com uma estrutura de dados linear, o DAG permite que os dados fluam do início para o fim. O principal benefício dessa estrutura, comumente conhecida como ordenação topológica, é que ela permite o processamento de infinitas transações.
Sobre o autor
Fares Alkudmani é formado em Administração pela Universidade Tishreen, na Síria, com MBA pela Edinburgh Business School, da Escócia. Desde janeiro de 2019, atua na empresa de criptomoedas Changelly como gerente-geral para a América Latina
O post Como o problema de escalabilidade do Blockchain pode ser resolvido apareceu primeiro em Portal do Bitcoin.