Uma falha crítica inutilizou 13% dos nós do Ethereum. O problema foi identificado pela primeira vez em maio e junho no GitHub.
A falha atingiu os clientes minoritários Parity-Ethereum e OpenEthereum, versões 2.7 e posteriores. Eles contêm uma falha que impede que os nós sejam sincronizados com o bloco mais recente da rede.
Com isso, os nós não conseguem acompanhar a evolução da blockchain. Isso reduz a capacidade da rede aprovar novas transações, bem como a sua descentralização.
Falha ainda é desconhecida
Até o momento, as causas da falha são desconhecidas. Também não há uma solução imediata, de modo que seu ajuste pode leva semanas ou até meses para acontecer.
Os próprios clientes são diferentes implementações de linguagem de programação de software blockchain. A execução de várias implementações em conjunto é considerada uma forma de impedir ataques à rede por ter sistemas simultâneos, mas separados, em execução.
Esse modelo tem sido útil historicamente. Por exemplo, após uma série de ataques em 2016 em Xangai, a Geth encerrou momentaneamente após um ataque distribuído de negação de serviço (DDoS). Mesmo assim, a Parity-Ethereum conseguiu manter a rede à tona sozinha.
Ataque coloca em risco descentralização da Ethereum
Além disso, isso causa uma tensão adicional ao cliente majoritário, Geth. E reacende as discussões sobre a centralização do Ethereum.
O fim desses nós traz o seguinte problema. Agora, o cliente Geth, apoiado pela Fundação Ethereum, corresponde a cerca de 80% dos nós da rede. Essa dependência pode ser vista como um vetor de ataque à rede.
De fato, os próprios desenvolvedores reconheceram isso. Foi uma das razões que levou ao adiamento do hard fork Berlin.
A nova atualização estava prevista para julho. Ela foi adiada para que clientes minoritários pudessem ganhar um pouco de força.
O criador do Ethereum, Vitalik Buterin, já chegou a afirmar que a rede não é descentralizada. Porém, as recentes falhas e adiamentos nos hard forks trazem grandes riscos.