Topics Tech Deep Dive

Trilema do blockchain: Isso já pode ser resolvido?

Avançado
Tech Deep Dive
27 Jun 2022

O mundo ao nosso redor tem tudo a ver com os trades que fazemos para alcançar certos resultados. O trilema blockchain não é diferente, por isso é crucial entender se os problemas associados aos blockchains podem ser resolvidos. Os desenvolvedores estão gastando tempo e energia para resolver esse problema, e veremos como a escalabilidade, segurança e descentralização do blockchain podem funcionar juntas. Esses três recursos são fundamentais para a forma como os blockchains funcionam, com um reconhecimento crescente de que você só pode obter dois dos três. Isso significa que todo blockchain deve sacrificar algo para funcionar da forma mais eficiente possível.

O que é o Trilema Blockchain?

O trilema blockchain é o conceito de que a descentralização, segurança e escalabilidade não podem ser representadas em um blockchain.

O termo trilema blockchain foi cunhado por Vitalik Buterin, cofundador da Ethereum. Ele propôs esse termo por causa de sua experiência trabalhando no Ethereum, a segunda criptomoeda mais popular na internet, que sofre com problemas semelhantes aos da rede Bitcoin. O principal problema com o Bitcoin é que sua rede não é tão escalável quanto muitas pessoas gostariam. O trilema blockchain é tudo sobre as três coisas que os desenvolvedores querem, descentralização, escalabilidade e segurança, e a inquietação precisa escolher duas das três.

Um exemplo do trilema do blockchain: Escalabilidade do Bitcoin

O Bitcoin é uma grande inovação, mas sua plataforma não é a mais escalável. No entanto, o Bitcoin tem uma das plataformas mais seguras e descentralizadas da internet. Em termos de escalabilidade , infelizmente, a empresa ganhou uma má reputação graças às suas velocidades de transação abaixo do ideal. Isso torna subótimo se você estiver tentando usá-lo como moeda. Em comparação com os processadores de cartão, como Visa e Mastercard, o Bitcoin fica para trás porque a competição processa transações em milissegundos. Embora essa situação tenha sido resolvida graças à Lightning Network , essa solução de escalabilidade de camada 2 apresenta sua fatia justa dos problemas. Em última análise, qualquer criptomoeda que queira ser usada como moeda fiat deve ser capaz de escalar suficientemente.

O problema sobre o qual Vitalik Buterin estava falando é se é possível ou não alcançar todos esses três recursos em uma única rede. Muitos desenvolvedores concluíram que alcançar todos os três recursos é impossível e que se resume a fazer o que é possível com a tecnologia atual e descobrir como fazer trades em um ambiente do mundo real. Por mais que cada projeto tente otimizar sua rede, haverá algumas deficiências com cada design de blockchain. Assim, a chave para os desenvolvedores é descobrir quanto de cada característica eles estão dispostos a sacrificar para alcançar o desempenho ideal.

Descentralização em um blockchain

A descentralização do blockchain é uma das principais razões pelas quais as pessoas preferem criptomoedas em vez das moedas fiat atuais. Quando sua moeda é controlada por um indivíduo ou entidade, você está sempre à mercê dele. Um exemplo é o governo dos EUA e seu monopólio sobre o dólar americano. Se você estiver na lista de bloqueios ou sob sanção, seus ativos em dólares poderão ser congelados. Você nunca tem total controle sobre sua moeda. A descentralização do blockchain resolve esse problema, garantindo que ninguém controle o ativo. O Bitcoin é o exemplo mais famoso. Em essência, ninguém controla seu acesso ao Bitcoin, e você pode ter e transportar seu Bitcoin livremente em todas as situações.

Infelizmente, um grande problema com a descentralização blockchain em grande escala é descobrir como alcançá-la. Um obstáculo é o gerenciamento de rede. A rede Visa é um exemplo de como é quando uma moeda virtual não é descentralizada. Cada transação feita na VisaNet precisa ser processada por um dos muitos servidores que a Visa tem em todo o mundo. A Visa é responsável por garantir que a rede seja resiliente e sempre funcione sem tempo de inatividade. 

No entanto, por isso, eles controlam tudo para que você tenha tempos de transação menores do que um segundo. Além disso, as taxas de transação são relativamente baixas em comparação com muitas outras redes. Por isso, muitas pessoas estão se movendo em direção a uma sociedade sem dinheiro, que removerá a necessidade de carregar dinheiro físico.

Como você pode ver, a descentralização blockchain afeta negativamente a segurança e a escalabilidade de uma rede. A descentralização do blockchain é crucial, pois exige que você sacrifique um outro recurso para ter a rede mais otimizada possível. Em última análise, a descentralização blockchain é melhor quando uma entidade ou indivíduo não controla toda a rede. No entanto, a escalabilidade ou a segurança do blockchain são sacrificadas ao priorizar a descentralização do blockchain.

Escalabilidade em um blockchain

Infelizmente, a escalabilidade do blockchain é um problema significativo que impediu que muitas criptomoedas fossem usadas em escala de massa. Para que um blockchain seja prático, ele precisa progredir para um estágio em que esteja sujeito a milhares de solicitações de transação e seja capaz de processá-las rapidamente.

Idealmente, os projetos gostariam que seu blockchain fosse capaz de escalar para milhões de transações por segundo (TPS). Essa é uma das muitas razões pelas quais Visa e MasterCard são usados em todo o mundo. Afinal de contas, ninguém usaria esses cartões se você precisasse esperar 20 minutos ou mais para que sua transação fosse processada, e nenhuma loja gostaria de usar essa rede se tivesse linhas longas, porque levava tanto tempo para processar as transações. A escalabilidade do blockchain precisa ser incorporada porque os desenvolvedores precisam descobrir como fazer isso funcionar para casos de uso específicos, em vez de apenas olhar para transações por segundo.

Segurança em um blockchain

A segurança do blockchain é o terceiro recurso que muitas redes podem optar por relaxar quando se trata do trilema blockchain. Uma boa segurança de blockchain significa que tudo deve ser robusto para que ninguém possa assumir a rede, por exemplo, capitalizando vulnerabilidades da rede para inserir transações em uma rede. 

A principal desvantagem em manter a segurança do blockchain é que é necessário muito poder do processador para atingi-la. Isso pode ser um problema se a descentralização blockchain também entrar em vigor. Quando você combina essa necessidade com as realidades da descentralização e escalabilidade do blockchain, isso significa que você precisa expandir o poder de processamento tremendamente para alcançar uma pequena melhoria em sua classificação de TPS. Essas são as coisas que os desenvolvedores de blockchain devem equilibrar ao tentar construir uma rede. Eles precisam descobrir qual dos três querem sacrificar.

Com a descentralização blockchain, outro problema é o consenso. Qual é a transação correta para cada livro de contabilidade? Ao escrever uma transação no livro de contabilidade blockchain, como você garante que a transação seja atualizada corretamente para todos os nodos? Isso requer muito poder de processamento, e é por isso que é importante entender como equilibrar a segurança com outros recursos dentro de uma rede blockchain. A segurança do blockchain só se tornará mais importante à medida que sua utilidade aumentar. Um exemplo de segurança deu errado é com blockchains que usam contratos inteligentes.

Segurança vs. escalabilidade

A ideia geral com a segurança blockchain é que ela funciona de forma retrógrada à escalabilidade blockchain. A segurança do blockchain exige que você use poder de processamento adicional para garantir que ninguém explore a rede. No entanto, o principal problema com isso é que, como consequência, agora há menos poder para processar transações. Os desenvolvedores precisam decidir entre processar mais transações ou manter a segurança aprimorada. Além disso, quanto mais descentralizada for a rede, mais tempo levará para chegar a um consenso, tornando ainda mais difícil alcançar a descentralização e segurança ideais simultâneas de blockchain. Atualmente, muitas pessoas estão tentando descobrir como fazer ambos os conceitos funcionarem corretamente, sem grandes desvantagens para a rede.

Um exemplo de rede segura é a Visa, mencionada acima. Ela oferece uma rede de processamento de cartão de crédito que entrega milhões de TPS. Apesar disso, a segurança do blockchain nunca é um problema com eles. Quase nunca ouvimos falar de algo sendo explorado. No entanto, quando algo acontece, geralmente é porque o fornecedor fez algo proibido. Nunca foi explorada a própria empresa de processamento de cartão de crédito com problemas. 

A maioria dos blockchains é bastante segura, e violações de segurança não são um problema contínuo para a maioria das redes. No entanto, como mencionado, a segurança vem pelo preço da escalabilidade. Isso faz com que muitas pessoas pensem em várias maneiras de melhorar a segurança e a capacidade de processamento de transações, sem destruir a essência da rede.

Diferentes abordagens para o Trilema Blockchain

Solana (SOL)

Solana tenta resolver o trilema blockchain utilizando servidores de nível empresarial e uma
Sistema de Prova de staking (PoS). Ela depende da sincronização para alcançar consenso, utilizando um pequeno número de servidores para chegar à descentralização blockchain. No entanto, apesar disso, há problemas com a descentralização do blockchain. O preço médio de um servidor é de cerca de US$ 10.000, com a necessidade de fazer staking de milhares de moedas para fazer parte do grupo de processamento, algo que, em geral, só é possível para empresas e indivíduos ricos. Isso dificulta os esforços de descentralização, pois a SOL é uma moeda que apenas uma minoria das pessoas pode apoiar.

Polkadot (DOT)

O Polkadot oferece um novo esquema de disponibilidade e validade de dados para permitir que muitos tipos de blockchains funcionem entre si, com a capacidade de criar um blockchain personalizado rapidamenteIsso significa que você obtém interoperabilidade e segurança ao mesmo tempo. Ela usa uma estrutura de POS de próxima geração para alcançar eficiência de energia. O coração desse blockchain são sua cadeia de relays e parachain . Ela também usa validadores como forma de garantir que a rede atinja consenso, uma melhoria significativa em relação a Solana.

Cardano (ADA)

Cardano oferece o benefício de ser um dos protocolos mais ambientalmente sustentáveis. Ele usa o protocolo de blockchain seguro Ouroboros, o que significa que tem segurança integrada. No entanto, essa segurança sacrifica a velocidade de processamento, o que significa que a rede não processa transações tão rapidamente quanto algumas outras. No entanto, é muito mais fácil fazer parte da rede, pois ela não tem os requisitos de processamento necessários para uma rede como Solana.

Fantom (FTM)

Fantom afirma ter resolvido o problema do trilema blockchain Sua rede oferece mais de 200 DApps, tornando-o um dos tokens cripto mais amplamente usados. O protocolo de consenso aBFT da Fantom permite que a rede atinja a velocidade, segurança e confiabilidade das quais se orgulha. Outra parte da solução da Fantom para o trilema blockchain são seus nodos validadores, que ajudam a estabelecê-lo como um sistema sem confiança e sem líder. Assim, a descentralização blockchain é alcançada em alto grau com Fantom e FTM.

Avalanche (AVAX)

A rede Avalanche tem outra abordagem bem-sucedida para controlar as limitações do trilema blockchain. Sua descentralização blockchain é alcançada principalmente oferecendo recompensas para pessoas que fazem staking e executam um nodo validador. Essas recompensas são bastante impressionantes, o que significa que os validadores em potencial não precisam colocar muitos tokens para começar. 

Além disso, os requisitos mínimos de hardware da Avalanche são impressionantes. Pode-se começar como um validador com hardware barato por menos de 1/10 do preço do hardware necessário para se tornar um validador na rede Solana.

É claro que ser um validador é importante para a descentralização e escalabilidade do blockchain. No entanto, muitas pessoas são incentivadas a se tornarem validadoras. Fazer isso muitas vezes é muito caro ou complicado para fazer com que funcione, limitando seus benefícios a apenas alguns

Possíveis soluções para o trilema do blockchain

Há algumas soluções potenciais para o trilema blockchain, a serem implementadas de forma independente. Muitos desenvolvedores também estão descobrindo como alcançar o trilema blockchain em cada parte de uma rede.

Camada 0

O consenso de Proof of Work (PoW), como o Bitcoin, é inferior para alcançar uma solução para o trilema blockchain. Em vez disso, é melhor que as redes PoW mudem para um sistema PoS. Ao fazer isso, os blockchains aumentam a escalabilidade e as velocidades de processamento. Essa mudança também facilita muito para as pessoas se tornarem parte de uma rede. Com um bom algoritmo de consenso, também é mais fácil expandir uma rede. Os aspectos fundamentais da camada 0 não podem ser exagerados. Nada pode ser bem feito se essa camada for mal projetada.

Cadeias de retransmissão

A Relay Chain do Polkadot permite que várias redes blockchain se conectem umas às outras facilmente, pois podem se conectar a muitas redes sem as desvantagens inerentes ao trilema blockchain. As parachains são executadas em paralelo ao blockchain Polkadot. Eles usam a Polkadot Relay Chain para alcançar a máxima escalabilidade, segurança e governança.

Camada 1

A principal consideração para a camada 1 é descobrir como escalar. Isso significa ajustar o mecanismo de consenso ou outros aspectos do blockchain que podem aumentar a escalabilidade. A camada 1 fornece a base necessária para garantir que a rede funcione em sua capacidade adequada. As redes que não têm uma camada 1 sólida invariavelmente acabam tendo problemas no futuro.

Melhorias no protocolo de consenso

Há muitas maneiras de chegar a um consenso sobre um blockchain, mas quanto mais rápido ele for feito, melhor poderá resolver o trilema do blockchain. O principal problema é garantir que o consenso seja alcançado de forma correta e completa. Vários algoritmos pegam atalhos, mas normalmente acabam onde precisam estar. Solana oferece uma prova de consenso histórico, o que garante que as transações estejam na sequência atual e do líder certo. Os líderes são escolhidos com antecedência, o que economiza tempo para alcançar o consenso da rede.

Sharding

Sharding é um conceito retirado do mundo do banco de dados. Essa inovação é importante para bancos de dados porque é uma das muitas maneiras de escalar em vários servidores. Caso contrário, você precisará manter todo o banco de dados em um servidor. A mesma coisa é verdade em um blockchain. Se cada validador tiver que conter todo o blockchain, é ineficiente porque há vários validadores mantendo os dados idênticos, mesmo quando não precisam deles. Isso dificulta a obtenção de consenso, pois precisa ser feito entre todos os nodos na cadeia validadora. 

O sharding divide o blockchain e o separa em vários validadores. É uma maneira arriscada de fazer as coisas por causa da possibilidade teórica de que todos os validadores que possuem um determinado shard possam cair. Nesse caso, toda a parte do blockchain seria perdida. Há vários algoritmos para evitar que isso ocorra, que é uma das muitas maneiras de melhorar o processo O Ethereum oferece cadeias fragmentadas como uma maneira de melhorar a escalabilidade. Esse método divide todo o blockchain horizontalmente, colocando a carga em vários servidores e tornando possível que a participação na rede e o poder de processamento aumentem geométricamente.

Camada 2

blockchains de camada 2 existem para melhorar a velocidade de processamento do blockchain base. No entanto, essas soluções devem ser abordadas de forma inteligente para atingir velocidades de processamento blockchain suficientes.

Blockchains aninhados

Um blockchain aninhado existe dentro de outro blockchain. Os blockchains de camada 1 delegam o processamento a um blockchain aninhado, o que significa que soluções de processamento personalizadas podem ser criadas com relativamente facilidade. Essa é uma das melhores e mais fáceis maneiras de resolver o trilema blockchain sem muita dificuldade. O maior exemplo disso é o Ethereum Plasma, que usa um blockchain separado, ancorado ao chain principal, capaz de oferecer prova de fraude para arbitrar disputas.

Canais de estado

Um canal de estado delegou essencialmente o processamento e a capacidade das transações. Seus nodos não exigem validação, o que significa que é como um recurso adjacente que faz o que precisa. A rede de camada 1 requer apenas que o estado final do canal seja registrado no blockchain.

Sidechains

Uma sidechain é essencialmente um blockchain separado que se conecta ao blockchain principal usando um peg bidirecional. Isso aumenta a interoperabilidade e o poder de processamento do blockchain existente. Por exemplo, a rede do Bitcoin pode usar sidechains para processar transações ainda mais rapidamente. Essa é uma das muitas maneiras pelas quais as pessoas estão obtendo mais desempenho do Bitcoin, mesmo quando tecnicamente não deveria ser possível.

Rollups

Essencialmente, os rollups processam transações fora do blockchain de camada 1 e as publicam mais tarde quando o consenso é alcançado. Isso separa muito do processo que entra no desempenho da camada 1. Uma grande parte do quebra-cabeça é o rollup de conhecimento zero (ZK-Rollup), que processa centenas de transferências do blockchain atual e as publica posteriormente. Isso acelera tudo e, portanto, é uma das melhores maneiras de melhorar o desempenho.

O Trilema Blockchain pode ser resolvido?

Não há uma solução única ao analisar como o trilema blockchain pode ser resolvido. Teoricamente, é impossível alcançar o Santo Graal. O melhor que podemos fazer até agora é otimizar cada blockchain o máximo possível para atingir sua meta declarada. Podemos experimentar um futuro com poder de computação virtualmente infinito e velocidades de transferência de rede geograficamente mais rápidas. Nesse ambiente, o trilema blockchain poderia ser resolvido de forma relativamente fácil. Isso deixaria de ser um problema porque as velocidades de transação seriam impulsionadas “à lua”.

Conclusão

O trilema blockchain é atualmente um grande problema para a maioria dos desenvolvedores. No entanto, como qualquer outra coisa, depois de entendermos a natureza do problema, temos uma chance muito melhor de encontrar uma solução para ele. Muitos desenvolvedores estão trabalhando nas complexidades do trilema blockchain e estão bastante otimistas, então também devemos estar.