Você é um general do exército bizantino e está comandando a sua unidade no cerco a uma cidade inimiga. Outros generais aliados também participam do cerco mas estabeleceram acampamento em lugares diferentes. Para um ataque ao inimigo ser bem-sucedido é imprescindível que a maioria dos generais aliados participe do ataque. Da mesma forma, se for para bater em retirada, a maioria dos generais precisa recuar junto. Um ataque ou retirada parcial causaria muitas baixas prejudicando o exército como um todo.

Sabe-se que dentre os generais pode haver traidores que desejam que a campanha fracasse, porém não se sabe quem são eles nem a sua quantidade. Esses generais podem sabotar a campanha mandando mensagens dúbias. Por exemplo, indicando o início do ataque para uma parte dos generais e indicando a retirada para outros. Além disso, como os acampamentos estão distantes, mensageiros são utilizados para a comunicação entre os generais. Para piorar a situação, esses mensageiros podem entregar mensagens falsas ou se perderem no caminho.

Sim, apesar de não parecer, esse texto é sobre moedas digitais.

Muito mais do que um problema de estratégia militar, a situação descrita acima ilustra um sistema descentralizado em que precisa se chegar a um consenso, mas, não se pode confiar nas partes envolvidas nem nas mensagens recebidas. Nas moedas digitais, é exatamente esse o caso, porém ao invés de termos generais, temos nós (computadores) conectados a uma rede, para construir e manter um blockchain. Ao invés de se alcançar um consenso sobre o ataque a uma cidade inimiga, busca-se consenso sobre as transações válidas (registros no blockchain).

Em ciência da computação, a habilidade de um sistema em resistir a componentes falhos (ou a generais traidores) é chamada de “Tolerância a falhas bizantina” (Byzantine Fault Tolerance). Dificilmente você vai encontrar um artigo sobre criptoeconomia (nosso tema da semana passada) que não cite ao menos uma vez esse termo. Isto porque um dos objetivos principais das moedas digitais é ser segura em um meio em que não se sabe em quem nem no que confiar.

Para avaliar a segurança ou robustez da arquitetura de um blockchain, existem diversos modelos que podem ser aplicados:

– Maioria honesta: assume-se que uma parte da rede é honesta, enquanto outra parte (50% por exemplo) é controlada por um atacante mal-intencionado.

– Maioria descoordenada: considera que os participantes podem ser desonestos se isso for vantajoso financeiramente para eles, porém somente uma parte desses atacantes (normalmente entre 25 e 50%) é capaz de realizar um ataque coordenado.

– Escolha coordenada: estima-se que a maior parte dos participantes da rede são controlados por uma entidade ou que são capazes de se organizar de forma a encontrar a melhor opção financeira (honesta ou não).

– Ataque por suborno: modelo em que um atacante possui um orçamento para subornar os participantes da rede e cada ataque possui um custo. Quanto menor o custo para corromper os participantes e atrapalhar a rede, menos segura é a rede.

Se analisaremos o Bitcoin sob o ponto de vista do modelo de “maioria honesta”, essa moeda seria robusta com até 50% dos participantes sendo controlados por uma entidade desonesta. Pela quantidade de mineradores espalhados por aí, você já pode imaginar como deve ser difícil (para não dizer impossível) burlar o sistema.

Existem diversas variações dos modelos acima, como por exemplo, versões híbridas. Contudo a lição que fica para mim é que blockchains não são tão diferentes de democracias, ou seja, são tão bons quanto à adesão e colaboração dos participantes honestos. Afinal, isto torna ataques mais caros e fraudes mais complexas.

Obs: Este artigo é uma réplica da Newsletter da HashInvest disponibilizada por e-mail e publicada aqui com alguns dias de defasagem. Quer receber a Newsletter na íntegra? Assine inserindo o seu e-mail abaixo:

Assine a nossa newsletter
Receba o conteúdo que interessa para o investidor em Criptomoedas!
Obrigado por assinar a nossa newsletter!
We respect your privacy. Your information is safe and will never be shared.
Don't miss out. Subscribe today.
×
×
WordPress Popup Plugin