O recente apelo da Parity para uma votação na EIP-999 apresentado por ela, que permitiria aos usuários afetados recuperar o acesso aos seus ativos armazenados na carteira de assinaturas múltiplas, causou um tumulto dentro da comunidade Ethereum e até velou o próprio Vitalik Buterin para pedir um boicote do Consensus de 2018, declarando a cobertura “sensacionalista” da EIP-999 como parte do motivo.
A situação começou com o hack da Parity em julho de 2017, que resultou na perda de 150.000 Ethereum (ETH). A Parity corrigiu a vulnerabilidade no código, mas infelizmente o código de contrato inteligente implantado veio com outra vulnerabilidade. Esta nova vulnerabilidade foi por acidente usada por um usuário da Parity em novembro de 2017, congelando mais de 513.774 ETH em 587 diferentes carteiras.
A mecânica da proposta de melhoria
Como resultado, a Parity apresentou uma proposta de melhoria do Ethereum (EIP-999). Sua motivação por trás da proposta foi delineada no GitHub:
“Essa proposta é necessária porque o protocolo do Ethereum não permite a restauração de contratos de autodestruição e não há outra maneira simples de permitir que os usuários e empresas afetados recuperem o acesso aos seus tokens e Ether.”
Uma votação sobre a implementação ou não da solução proposta foi aberta em 17 de abril e estava em processo até 24 de abril. O resultado foi quase obtido, mas voltou com a maioria de 55% de votos “não”, 39,4% em favor da mudança proposta, e mais 5,6% dos eleitores disseram que não se importam.
Algumas coisas importantes para lembrar - em primeiro lugar, os 513.774 ETH (que valem cerca de US $ 360 milhões de acordo com a recente análise de preços) não são perdidos ou roubados, são exatamente onde eles deveriam ser armazenados - ou seja, na biblioteca de assinaturas múltiplas da Parity. O problema é que o acesso a esses fundos foi destruído devido a uma vulnerabilidade no código.
Em segundo lugar, a EIP-999 não era um esboço para um hard fork do blockchain do Ethereum. A solução proposta era para uma “versão corrigida da WalletLibrary” (para o código-fonte do contrato), que basicamente daria aos proprietários das dependentes carteiras de assinaturas múltiplas o acesso a seus fundos bloqueados.
O debate sobre um hard fork começou porque parecia que duas das maiores empresas de software Ethereum, a Geth, uma ferramenta de linha de comando multiuso para Ethereum, e a Parity Technologies, um cliente popular para interagir com o Blockchain do Ethereum, tinha pensamentos opostos sobre a implementação da EIP-999.
No entanto, esse sentimento foi anulado pela Geth e a Parity, com o desenvolvedor da Geth, Péter Szilágyi, esclarecendo sua posição diretamente no Twitter e os fundadores da Parity, Jutta Steiner e Gavin Wood, declarando numa postagem de blog para a Parity Technologies, que eles não planejam provocar uma divisão no blockchain do Ethereum. Embora a atualização proposta tenha sido rejeitada, a controvérsia em torno dela ainda persiste.
A votação controversa
A votação em si foi uma fonte de muita controvérsia, com o mecanismo de votação sendo submetido a um grande escrutínio. Foi realizado por meio de uma votação em moeda, o que significa que, em vez de atribuir a cada usuário do Ethereum um voto, cada voto foi apoiado por a quantia de ETH mantida por um eleitor.
Então, os com grandes quantidades de ETH têm uma vantagem distinta em influenciar a direção da votação. Em geral, isso não é um problema, pois todo eleitor possui o mesmo ativo e, portanto, o raciocínio lógico é que todos escolheriam um curso de comportamento que proteja o bem-estar desse ativo, não importa o tamanho da sua participação.
Neste caso, como votar significa simplesmente assinar uma mensagem de uma conta de Ethereum, em vez de transferir uma certa quantia de ETH, os usuários cujos fundos estão trancados na biblioteca Parity, também poderiam votar.
Acontece que uma das maiores partes afetadas é a Polkadot, uma startup de blockchain de propriedade de Gavin Wood, co-fundador da Parity e que é responsável pela vulnerabilidade no código que permitiu que os ETH 513.774 foram congelados.
A Polkadot poderia, portanto, usar sua grande propriedade trancada na biblioteca da Parity, sendo cerca de 306.000 ETH, para um voto "sim" sobre a proposta que foi efetivamente apresentada por Gavin Wood, embora através da Parity. Isso deixou muitos membros da comunidade com um sentimento desagradável, especialmente porque a EIP-999 só corrigia a carteira da Parity e traria enormes benefícios para seus fundadores, sem nenhum benefício para a comunidade Ethereum em geral.
“Gavin Wood é o fundador da Polkadot e da Parity, portanto ele obviamente tem incentivo financeiro para restaurar esses fundos. Essa conexão parece ser o motivo pelo qual as pessoas acham que a Parity tem algo a ganhar financeiramente com a realização da EIP999 ”.
Na verdade, alguns detentores de ETH não ligados à história achavam que seria melhor se os cerca de 500.000 ETH ficassem congelados, o que significa que os seus próprios tokens ETH teriam um certo grau de escassez que poderia empurrar o preço para cima.
Muitos membros da comunidade não eram contra a EIP-999 em si, mas, na verdade, contra a votação em primeiro lugar. Os oponentes da votação EIP-999 argumentaram que ela comprometeria a imutabilidade da rede blockchain caso fosse realizada:
“É o cerne da questão, no entanto. A biblioteca da Parity de assinaturas múltiplas, como um agente autônomo, cumpria sua programação exatamente ao pé da letra e se auto-destruíu quando recebeu as instruções. A inversão exigirá interferência no estado desse agente autônomo fora das regras sob as quais ele foi criado.
Isso é exatamente o que o Ethereum e os blockchains em geral devem impedir. É uma situação "você literalmente tinha um emprego" para um blockchain. Se os blockchains não impedem a interferência não autorizada em seu estado, então podemos simplesmente executar esses contratos inteligentes em um servidor em nuvem da Amazon e economizar muito tempo e dinheiro”.
Se os desenvolvedores pudessem simplesmente atualizar e corrigir o código problemático, isso afetaria a natureza descentralizada do blockchain, onde certos indivíduos teriam o poder de efetivamente reverter as transações indesejadas.
Por que "nao"?
Isso aconteceu no passado com o hack da DAO, que no fim das contas causou uma divisão no blockchain do Ethereum, entre aqueles que eram a favor de devolver os fundos para os legítimos proprietários e aqueles que acreditavam firmemente que o código é a lei que assegura a imutabilidade da rede. Eles escolheram seguir a versão original do blockchain do Ethereum e chamaram-o Ethereum Classic.
Há uma questão interessante que é por que foi "sim" na votação da DAO, mas "não" na votação da Parity? Embora seja impossível conhecer o raciocínio por trás dos votos individuais, alguns membros da comunidade acharam que essa proposta de melhoria foi desenvolvida puramente como uma ajuda aos fundos da Polkadot.
“É um resgate puro e simples. Não estou convencido MESMO de que isso teria sido tratado da mesma forma se fosse outra empresa que havia perdido os fundos”.
Outro ponto de vista é que essa decisão serve para a defesa do ecossistema do Ethereum:
“Vamos simplificar as coisas aqui: O ecossistema e, portanto, todo o futuro e crescimento do blockchain do Ethereum estão em risco? Com a DAO - foi Sim, exigindo assim um hardfork para proteger o protocolo do Ethereum e o ecossistema. Com a Parity - a resposta é Não, portanto, não há necessidade de um hardfork porque nem o protocolo do Ethereum nem o ecossistema estão em risco”
Por último, se a votação fosse bem sucedida, potencialmente abriria as comportas a uma miríade de pedidos de pessoas que perderam ETH no passado devido a nenhuma falha própria (seja como resultado de um hack ou código defeituoso) para ter seus fundos devolvidos através de uma solução semelhante.
Na seção de mensagens on-line da comunidade Ethereum, um usuário comentou:
“Se essa alteração for feita, isso garante que vamos continuar regularmente revisitando as solicitações como essa. Isso vai nos distrair dos esforços para melhorar a tecnologia para todos. Tornando-se um projeto que constantemente debate a restauração de fundos, as EIPs farão o Ethereum um projeto de código aberto “sem muita graça” para contribuir, impedindo, assim, os novos contribuintes. ”
Isso, por sua vez, poderia fazer os desenvolvedores de futuros projetos menos minuciosos em seu trabalho com código, pois iriam achar que uma votação como essa é uma rede de segurança no caso de cometerem erros.
Seja qual for a sua posição sobre a situação, a EIP-999 parece um ponto importante na história do Ethereum e até para o blockchain em geral, onde dois princípios fundamentais dessa indústria, igualitarismo e imutabilidade, foram colocados diretamente um contra o outro.
Por enquanto, pelo menos, o igualitarismo lutou para salvar a imutabilidade e ambos parecem ter triunfado.