Compreendendo a descentralização

Compreendendo a descentralização

cardaniansio

No domínio da tecnologia blockchain, a descentralização é a sua pedra angular. No entanto, muitas vezes está envolta numa nuvem de mitos e equívocos. O conceito, embora fundamental, não é tão simples quanto parece. Medir a descentralização ou comparar diferentes blockchains apresenta um desafio complexo. Este artigo visa desmistificar essas complexidades. Através do uso de imagens ilustrativas, nos aprofundaremos nos princípios fundamentais da descentralização, proporcionando uma compreensão mais clara desta característica integrante da tecnologia blockchain. Junte-se a nós enquanto embarcamos nesta jornada esclarecedora.

Blockchain é uma rede distribuída e descentralizada

O termo “descentralizado” refere-se a redes, sistemas e aplicações sem um ponto de controle central. Este conceito é fundamental para redes peer-to-peer (P2P), onde os nós compartilham dados diretamente, ignorando intermediários.

Na indústria de blockchain, o termo “descentralizado” é frequentemente usado de forma vaga. Originalmente, referia-se apenas à arquitetura de rede, mas as características de um projeto blockchain vão além disso. Eles incluem o gerenciamento de projetos, a equipe que mantém o código fonte, a governança e a distribuição de recursos para o consenso da rede.

Vamos nos concentrar primeiro na arquitetura da rede.

Uma rede distribuída se espalha por uma ampla área e há vários nós para processamento e armazenamento de dados. Essa distribuição aumenta a eficiência, confiabilidade, disponibilidade, integridade e segurança.

A imagem abaixo ilustra uma rede distribuída. Cada nó, operado por um indivíduo, executa um cliente de rede essencial para a comunicação ponto a ponto. Na rede, cada nó detém igual poder. No contexto da descentralização, poderíamos argumentar que existem 8 entidades com estatuto igual na rede.

Os nós colaboram para difundir e validar transações. Eles podem realizar muitas outras tarefas. Cada usuário pode interagir diretamente entre si, utilizando um modelo de comunicação ponto a ponto.

As redes distribuídas podem ser descentralizadas (sem autoridade central) ou controladas centralmente.

Na imagem abaixo você pode ver a mesma rede distribuída de antes com 8 nós. A diferença é que todos os nós são controlados por uma única entidade, Alice (as setas vermelhas ilustram o controle sobre os nós). Uma rede pode ter características muito semelhantes em termos de eficiência, disponibilidade de dados e robustez, mas é centralizada, o que afeta a integridade dos dados, segurança, etc.

Alice pode decidir desligar todos os nós, desligando assim toda a rede. Ela também pode alterar os dados, pois tem controle exclusivo sobre eles.

Uma rede descentralizada carece de uma autoridade central. O cerne da descentralização é o consenso da rede, ou seja, as regras que os nós usam para chegar a um acordo sobre a alteração do estado do livro-razão em intervalos regulares. Nenhuma entidade controla a rede, garantindo o funcionamento democrático. Qualquer pessoa é livre para entrar ou sair da rede.

Em vez de uma única autoridade central, a rede é decidida por um grupo de entidades que partilham o poder entre si. Uma rede descentralizada requer proteção contra ataques Sybil, que discutiremos mais tarde. A distribuição de energia deve basear-se na posse de um recurso caro. Para redes PoW como Bitcoin, é uma combinação de hardware ASIC e eletricidade, enquanto para redes PoS como Cardano ou Ethereum, são moedas ADA e ETH, respectivamente.

Isto cria um desequilíbrio no sistema, uma vez que as entidades normalmente são diferentes. Aqueles com mais riqueza, capazes de adquirir mais recursos caros, detêm uma posição mais forte na rede descentralizada.

A imagem abaixo ilustra uma rede distribuída, sua descentralização determinada pela quantidade de moedas PoS detidas por cada indivíduo.

Pode parecer contraditório que entidades que possuem um recurso valioso possam controlar uma rede distribuída sem operar um nó. Em muitas redes, estes proprietários de recursos podem delegar os seus recursos, aumentando assim o poder de outro nó.

Ao contrário da crença comum, a descentralização não é avaliada pela contagem de nós numa rede distribuída. Em vez disso, é determinado pela distribuição e gestão de um recurso caro entre os seus detentores, tais como as suas escolhas de delegação. Em uma rede distribuída, determinados nós têm mais importância e possuem o privilégio de gerar novos blocos.

O termo ‘distribuído’ refere-se à distribuição geográfica dos nós para maior eficiência, disponibilidade e confiabilidade. Embora qualquer pessoa deva ter a capacidade de contribuir para a rede com o seu nó, isso não melhora significativamente a descentralização da rede. O termo “descentralizado” centra-se na ausência de controlo, exigindo a distribuição do poder de tomada de decisões. A descentralização não é determinada pela propriedade do nó, mas sim pela posse de um recurso caro.

O Ataque Sybil

As redes Blockchain são abertas, permitindo que qualquer pessoa execute vários nós. No entanto, eles não são inerentemente imunes aos ataques de Sybil. Para resistir a estes, a descentralização deve basear-se na posse de um recurso escasso/caro, representando um risco de perda de riqueza. Isto garante o compromisso e a honestidade dos proprietários dos recursos.

Um ataque Sybil ocorre quando uma entidade cria múltiplas identidades falsas para obter controle sobre uma rede. O invasor visa influenciar decisões, manipular dados ou interromper a rede. A descentralização não deve basear-se apenas na capacidade de operação dos nós, pois uma única entidade pode executar muitos nós de forma barata.

Considere uma rede onde cada nó conectado tem o direito de produzir um novo bloco e ganhar uma recompensa. Para aumentar as chances de recompensa, pode-se administrar vários clientes. Os invasores Sybil poderiam explorar isso, executando vários nós a um custo baixo para obter uma vantagem injusta sobre os participantes honestos. A imagem abaixo mostra um cenário em que um invasor Sybil opera cinco nós. Se uma entidade tiver controle majoritário sobre a produção ou governança de blocos, a rede será centralizada.

As propriedades da rede distribuída não impactam significativamente a descentralização. Embora os nós protejam os dados e validem as transações, eles não podem participar diretamente no consenso ou na governança se o operador não possuir um recurso caro.

A maioria dos nós são apenas consumidores de dados, principalmente consumidores de novos blocos. Sem possuir um recurso caro, eles não podem participar da produção de dados (blocos).

A produção de blocos é governada por quem possui o recurso caro. Eles determinam os nós que produzirão novos blocos. Este design protege contra ataques Sybil.

A imagem mostra que apenas Alice, Bob, Carol e Dave possuem uma certa quantidade do valioso recurso. Bob tem mais, enquanto Dave tem menos. Consequentemente, estes quatro podem produzir novos blocos. Eve, Frank, Grace e Heidi, sem esse recurso, possuem nós que apenas consomem novos blocos. Observe que um ataque Sybyl não pode ser executado nesta rede. A posição do atacante Sybyl seria a mesma de Eve, ou seja, seu nó seria apenas um consumidor passivo de novos blocos.

Para atacar esta rede, seria necessário adquirir o recurso caro. Isto poderia ser feito diretamente através da compra, arriscando assim a sua riqueza. Alternativamente, eles poderiam adquiri-lo indiretamente por meios fraudulentos, como roubar moedas PoS ou obter controle sobre a taxa de hash de uma grande empresa de mineração. No entanto, estes métodos indiretos são normalmente mais complicados.

Controle sobre uma rede descentralizada

Numa rede, o controle depende dos proprietários do recurso caro, e não dos operadores dos nós. O recurso pode pertencer a um grande número de pessoas, mas apenas alguns nós em uma rede distribuída são cruciais para a produção de blocos. Portanto, apesar de uma rede ter milhares de nós, apenas alguns poucos participam ativamente do consenso da rede, enquanto o restante são consumidores passivos de dados.

Se um nó passivo ficar indisponível repentinamente, ou mesmo todos os nós passivos, isso quase não terá efeito no consenso da rede. Entretanto, o contrário não é verdade. Se metade dos nós ativos ficar indisponível repentinamente, a rede poderá não conseguir chegar ao consenso da rede.

Do ponto de vista da descentralização, o que importa são os proprietários dos recursos e as suas decisões sobre quais nós se tornam vitais para a rede. Os proprietários de recursos podem usar seus recursos para a produção de blocos, mas isso normalmente requer uma quantia substancial. Mais comumente, eles delegam o recurso para outra entidade que opera um nó participando ativamente do consenso da rede, ou seja, produzindo blocos.

A imagem mostra uma rede descentralizada. Apenas os nós de Alice, Bob, Carol e Dave produzem blocos. Bob e Carol possuem uma pequena parte dos recursos caros. Todos os outros são participantes ativos do consenso. Eles delegam o recurso a um dos operadores que executa um nó produtor de blocos (as setas azuis mostram a delegação de recursos). Observe que entre todos os delegados, apenas Olivia, Rupert e Wendy operam seu nó passivo (que consome apenas novos blocos).

Um recurso caro poderia ser a ADA para Cardano ou a taxa de hash para Bitcoin. No cenário do Bitcoin, você encontraria um minerador ASIC e uma fonte de eletricidade em vez de moedas. Bitcoin e Cardano funcionam de maneira fundamentalmente semelhante.

É assim que se parece a descentralização de uma rede blockchain típica. Vamos resumir. 16 entidades participam na descentralização, mas apenas 14 delas possuem o recurso caro. Alice e Dave executam nós de produção de blocos, mas não possuem o recurso caro. Existem 7 nós na rede distribuída, mas apenas 4 deles produzem blocos. 3 nós consomem apenas novos blocos. Na realidade, as quantidades e proporções entre os diferentes participantes variariam.

As redes geralmente têm mais delegadores do que nós produtores de blocos. Algumas redes, como o Bitcoin, têm um grande número de nós, mas apenas uma pequena fração produz blocos ativamente (o Bitcoin tem aproximadamente apenas 20 pools, dos quais 2 são dominantes). Por outro lado, em redes como Cardano, a maioria dos nós está envolvida na produção de blocos. Cardano tem milhares de piscinas. Existem operadores de pool de piquetagem que executam vários pools.

Governança

Para compreender plenamente a complexidade da descentralização, devemos considerar o papel da equipa. Até agora, discutimos o controle de produção de blocos, que fica com os delegadores (stakers ou mineradores) e os nós produtores de blocos. Os participantes ativos concordam periodicamente com as alterações do estado do razão, principalmente por meio de novas adições de blocos, com base em regras definidas pelo cliente.

É importante saber quem controla as regras. Geralmente é a equipe que lançou o blockchain. Geralmente é a mesma equipe que publicou o cliente pela primeira vez.

A figura mostra um cenário em que uma equipe lançou três versões de cliente. As operadoras são livres para escolher qual versão do cliente instalar em seu nó, determinando assim quais regras de protocolo adotarão e quais serão aplicadas predominantemente em toda a rede distribuída.

Numa rede descentralizada, a equipa tem apenas um controlo limitado sobre as regras. Todas as versões do cliente (possivelmente também versões alternativas) estão disponíveis publicamente. A equipe não tem (não deveria) ter controle sobre qual versão do cliente os operadores instalam em seus nós.

Um dos mitos difundidos é que quando uma equipe tem um líder visível, ele pode alterar as regras da rede ou até mesmo desligar a rede. No entanto, sem possuir a quantidade necessária de recursos, não é possível alterar características fundamentais do protocolo, como a política monetária.

Na ausência de disputas entre a equipe, a comunidade e os operadores dos nós, há uma tendência de instalar a versão mais recente do cliente. Esta versão deverá manter as principais regras inalteradas, introduzindo apenas pequenas alterações (correções de bugs, pequenas melhorias) ou atualizações com as quais a maioria concorda.

Em caso de disputas de regras, os proprietários do recurso valioso detêm a maior influência.

Os detentores de recursos delegam seus recursos aos operadores dos nós, que são responsáveis por escolher a versão a ser instalada. Se os delegadores discordarem da escolha da versão do operador, eles terão a opção de delegar seus recursos em outro lugar. Portanto, os operadores devem considerar cuidadosamente a seleção da sua versão, tendo em mente as preferências dos seus delegadores.

A imagem ilustra um cenário onde duas equipes, Alpha e Omega, liberam um cliente, cada uma com regras de protocolo distintas e incompatíveis. Três operadores que executam um nó produtor de blocos optam pela versão Alpha, enquanto outros três escolhem a versão Omega. Os proprietários dos recursos determinarão as regras a serem aplicadas. Neste caso específico, a maioria dos recursos caros vota na versão Omega.

Na maioria das redes existentes, normalmente prevalece um cliente. É incomum que diversas equipes desenvolvam uma versão alternativa do cliente e, quando o fazem, essa versão geralmente representa uma minoria. Isto é evidente no caso do Ethereum.

Geralmente surgem disputas sobre diferentes versões produzidas pela mesma equipe. Uma facção dentro da equipe pode criar uma bifurcação do código-fonte e modificar as regras, tornando-as incompatíveis com a versão original. Esta nova versão pode ser aplicada, mas requer o apoio dos proprietários do recurso caro. Para que a nova versão ganhe, a maioria dos recursos caros devem suportá-la.

Assim como acontece com a produção de blocos, a rede é governada pelos proprietários do recurso caro. Isto é crucial no contexto dos ataques Sybil. Se a adoção da nova versão fosse determinada pela contagem de nós que executam uma determinada versão do cliente, um invasor Sybil, capaz de atribuir de forma barata uma infinidade de endereços IP, poderia potencialmente ditar as regras da rede. A governação necessita de protecção contra ataques Sybil. O comportamento honesto deve ser reforçado pela perda potencial da riqueza de alguém.

Conclusão

A descentralização depende em grande parte da distribuição de um recurso caro. Somente aqueles que delegam podem impactar o número de nós viáveis de produção de blocos (pools) na rede. Para investigar a descentralização, examine principalmente o número de indivíduos que possuem um recurso, a prevalência de baleias entre eles e a sua gestão de recursos. Em particular, é importante saber para quantos pools o recurso é delegado. Alguns dos pools podem ter uma posição dominante, o que é um fenómeno indesejável.

A quantidade de nós passivos na rede não é tão crucial para a descentralização quanto o número de nós produtores de blocos. A distribuição de recursos dispendiosos é também vital para a governação, ou seja, para a manutenção de regras acordadas pela maioria dos detentores de recursos. A rede em execução não é decidida pela equipe ou pelo CEO, mas principalmente pelos proprietários do recurso. A disponibilidade de múltiplos clientes alternativos é benéfica, embora ainda não seja a norma.

Você gostou deste artigo? Por favor, compartilhe, obrigada!