Duas propostas para Ethereum devem manter Glamsterdam segura
As propostas devem impedir que preços de gas mais elevados em EIP-8037 e EIP-8038 quebrem contratos inteligentes existentes. A Ethereum Foundation pede agora aos desenvolvedores e auditores que verifiquem aplicações vulneráveis.

Pontos principais
- Dois desenvolvedores apresentaram propostas rivais para impedir que a atualização Glamsterdam quebre contratos inteligentes existentes da Ethereum.
- O debate gira em torno de preços de gas mais elevados em EIP-8037 e EIP-8038, enquanto algumas aplicações foram construídas com base em custos fixos e lógica de contratos imutável.
- A Ethereum Foundation está a fazer com que os projetos afetados sejam verificados, depois de um teste planeado ter sido adiado devido a preocupações de investigadores de segurança.
Ethereum enfrenta um problema difícil: a próxima atualização Glamsterdam pode quebrar contratos inteligentes existentes. Dois desenvolvedores apresentaram, por isso, propostas rivais para evitar isso. A discussão gira em torno de preços de gas mais elevados em EIP-8037 e EIP-8038, enquanto algumas aplicações foram construídas com base em custos fixos que não podem ser simplesmente alterados.
Duas formas de poupar aplicações antigas
Leo Glisic quer manter as aplicações existentes na tarifa atual e fazer com que apenas as novas aplicações paguem segundo os novos preços. Giulio Rebuffo, pelo contrário, escolhe uma única nova tarifa para todos, mas quer fazer com que as aplicações antigas funcionem como se nada tivesse mudado.
Ambas as propostas tentam mitigar o mesmo risco, mas fazem-no de forma diferente. Glisic descreve em EIP-8488 uma divisão no conjunto de instruções da Ethereum, em que os contratos existentes mantêm as regras antigas e os novos contratos usam os opcodes V2 com a estrutura de gas mais elevada. Rebuffo propõe um modelo com dois medidores de gas por transação, em que o novo cálculo determina a taxa final.
Porque é que isto acontece agora
O cerne do problema é que muitas aplicações de Ethereum foram escritas com a suposição de que determinados preços de gas não mudariam. Alguns contratos pagam um valor fixo quando chamam outra aplicação. Se essa chamada ficar mais cara, a transação pode falhar. Além disso, muitos desses contratos já não podem ser alterados depois de estarem em funcionamento.
Isso torna o debate em torno de Glamsterdam especialmente sensível. A atualização já está a correr numa das redes de teste da Ethereum, mas um segundo teste, previsto para 26 de outubro, foi adiado depois de investigadores da Ethereum Foundation terem soado o alarme. Segundo a Ethereum Foundation, as alterações ao gas podem afetar um pequeno grupo de contratos inteligentes que dependem de uma suposição fixa de gas, e os desenvolvedores e auditores foram convidados a verificar os projetos afetados antes de ser decidido se as especificações ainda precisam de ser ajustadas. Também o teste em Hoodi foi adiado para investigar mais a fundo as consequências de EIP-8037.
Consequências para os desenvolvedores
As propostas mostram que a atualização não diz respeito apenas a custos mais elevados, mas também à compatibilidade. O próprio Rebuffo refere que ainda não foram feitos testes com um execution client nem testes de consenso para o seu desenho. Isso sublinha o quão cedo ainda está este debate.
Para os desenvolvedores de aplicações existentes da Ethereum, o mais relevante é que parte dos contratos atuais pode não conseguir passar para as novas regras de gas sem mais. A próxima tomada de decisão em torno de Glamsterdam pode, por isso, ser importante para equipas que dependem de lógica contratual fixa e para auditores que têm de avaliar quais as aplicações que enfrentam risco adicional.